Walter.Web.FireWall.Geo.Native 2020.9.9.2

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Walter.Web.FireWall.Geo.Native --version 2020.9.9.2
                    
NuGet\Install-Package Walter.Web.FireWall.Geo.Native -Version 2020.9.9.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Walter.Web.FireWall.Geo.Native" Version="2020.9.9.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Walter.Web.FireWall.Geo.Native" Version="2020.9.9.2" />
                    
Directory.Packages.props
<PackageReference Include="Walter.Web.FireWall.Geo.Native" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Walter.Web.FireWall.Geo.Native --version 2020.9.9.2
                    
#r "nuget: Walter.Web.FireWall.Geo.Native, 2020.9.9.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=Walter.Web.FireWall.Geo.Native&version=2020.9.9.2
                    
Install as a Cake Addin
#tool nuget:?package=Walter.Web.FireWall.Geo.Native&version=2020.9.9.2
                    
Install as a Cake Tool

This package allows you to protect your firewall using annotations and pre-specified rules. A full getting started document is available at www.asp-waf.com in form of a PDF, compiled help and simple instructions

The bellow sample shows how you integrate and enable the firewall in your project and use your own DNS for Geography.

services.AddFireWall(FireWallTrail.License, FireWallTrail.DomainKey
    , domainName: new Uri("https://www.your-domain.com", UriKind.Absolute)
    , options =>
    {
        options.Cypher.ApplicationPassword = "123456$even";
        options.ApplicationName = "Name as used for reporting";
        options.ApplicationTag = "ITIL Tag";
        options.Rules.BlockRequest.BlockDuration.SlideExpiration = true;
        options.Rules.BlockRequest.BlockDuration.Expires = TimeSpan.FromSeconds(10);

        //used by JavaScript in the browser
        options.WebServices.IsUserApiUrl = new Uri(Links.IsUserEndpoint, UriKind.Relative);
        options.WebServices.RegisterLinksApiUrl = new Uri(Links.SiteMapEndPoint, UriKind.Relative);
        options.WebServices.BeaconApiUrl = new Uri(Links.BeaconPoint, UriKind.Relative);

}).UseGeography();
//protect each MVC controller
services.AddMvc(options =>
    options.Filters.Add<Walter.Web.FireWall.Filters.FireWallFilter>()
);

The firewall is fully configurable and has quite a few options that allow you to protect against fishing, scrubbing, cross-site attach and much more.

There are a ton of configuration options available using the many annotations

   namespace MyProject.Controllers
   {
       using Walter.Web.FireWall;
       using Walter.Web.FireWall.Annotations;
       using Walter.BOM.Geo;

       [Geo(blockLocation: GeoLocation.AFRICA | GeoLocation.LATIN_AMERICA | GeoLocation.Netherlands)]
       [Users(users: UserTypes.IsHuman | UserTypes.IsSearchEngine)]
       [BlockDuration(duration: 60, sliding: true, doubleDurationPerIncedent: true)]
       public sealed class MembersController : Controller
       {
           private readonly ILogger<MembersController> _logger;
            private readonly IPageRequest _page;
           public HomeController(ILogger<MembersController> logger,IPageRequest page)
           {
               _logger = logger;
               _page=page;
           }

           public IActionResult Index()
           {
               return View();
           }


           [Ignore]
           [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]
           public IActionResult Error()
           {
               //the page field will contain all the errors the user ran into
               return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
           }
       }
   }

This is just a small set of options of what's possible

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp3.0 is compatible.  netcoreapp3.1 is compatible. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2025.6.30.1407 11 7/1/2025
2025.6.12.1057 280 6/12/2025
2025.4.17.1816 194 4/17/2025
2025.3.13.1323 148 3/13/2025
2025.2.26.1642 108 2/26/2025
2025.2.25.1033 102 2/26/2025
2025.2.24.1556 96 2/25/2025
2025.2.16.1149 108 2/19/2025
2025.2.15.1316 94 2/15/2025
2025.1.16.1410 94 1/16/2025
2025.1.4.1941 127 1/4/2025
2025.1.2.1544 113 1/3/2025
2024.12.14.838 115 12/14/2024
2024.12.13.1227 114 12/13/2024
2024.12.9.1107 107 12/13/2024
2024.11.28.1632 105 11/28/2024
2024.11.20.644 114 11/21/2024
2024.11.15.421 104 11/15/2024
2024.11.11.1334 105 11/14/2024
2024.11.6.1222 105 11/6/2024
2024.10.28.1605 126 10/28/2024
2024.10.28.1335 100 10/28/2024
2024.10.19.1525 113 10/20/2024
2024.10.18.1315 140 10/18/2024
2024.9.27.1406 114 9/27/2024
2024.9.17.1417 188 9/17/2024
2024.9.12.1923 134 9/12/2024
2024.9.6.1352 126 9/7/2024
2024.9.1.1159 120 9/1/2024
2024.8.26.1150 139 8/26/2024
2024.8.19.1411 145 8/19/2024
2024.8.17.1000 141 8/17/2024
2024.8.12.1622 136 8/13/2024
2024.8.5.1010 95 8/5/2024
2024.8.1.1545 149 8/16/2024
2024.7.28.629 121 7/28/2024
2024.7.26.1512 113 7/26/2024
2024.7.26.828 115 7/26/2024
2024.7.11.1604 130 7/11/2024
2024.7.9.1520 120 7/9/2024
2024.7.4.1425 133 7/4/2024
2024.7.3.1249 119 7/3/2024
2024.7.2.1536 140 7/2/2024
2024.6.28.953 154 6/28/2024
2023.11.13.1117 535 11/13/2023
2023.10.26.1502 469 10/29/2023
2023.10.12.1926 500 10/12/2023
2023.9.14.812 547 9/14/2023
2023.9.7.1748 580 9/7/2023
2023.9.7.1241 531 9/7/2023
2023.9.6.1001 568 9/6/2023
2023.9.5.1246 534 9/5/2023
2023.9.5.1032 546 9/5/2023
2023.8.31.1522 567 8/31/2023
2023.8.29.1040 586 8/29/2023
2023.8.17.901 592 8/17/2023
2023.8.9.1314 655 8/9/2023
2023.8.2.750 669 8/2/2023
2023.7.12.830 664 7/12/2023
2023.7.5.1419 707 7/6/2023
2023.6.14.1628 673 6/14/2023
2023.6.11.1304 685 6/11/2023
2023.5.30.1640 666 5/30/2023
2023.5.4.1552 685 5/4/2023
2023.5.1.1524 723 5/1/2023
2023.4.29.910 714 4/29/2023
2023.4.12.1236 710 4/12/2023
2023.3.22.1456 761 3/22/2023
2023.3.14.1356 807 3/14/2023
2023.3.1.810 846 3/1/2023
2023.2.25.11857 796 2/25/2023
2023.2.22.27 777 2/22/2023
2023.2.15.1413 795 2/15/2023
2023.2.11.1628 829 2/11/2023
2023.1.11.534 878 1/11/2023
2022.12.30.711 819 12/30/2022
2022.12.15.1108 868 12/15/2022
2022.12.14.648 863 12/14/2022
2022.11.27.1059 874 11/27/2022
2022.11.21.338 867 11/21/2022
2022.11.14.1819 897 11/14/2022
2022.11.13.917 949 11/13/2022
2022.10.31.740 1,047 11/1/2022
2022.10.15.652 1,058 10/15/2022
2022.10.1.810 1,056 10/1/2022
2022.9.26.1444 1,037 9/26/2022
2022.9.14.1508 1,105 9/14/2022
2022.9.14.809 1,130 9/14/2022
2022.9.8.1009 1,123 9/8/2022
2022.8.20.1007 1,043 8/20/2022
2022.8.1.1 1,127 7/31/2022
2022.7.1300 1,114 7/1/2022
2022.7.31.1016 1,187 7/31/2022
2022.7.15.841 1,225 7/15/2022
2022.6.21.647 1,126 6/21/2022
2022.5.18.638 1,104 5/19/2022
2022.5.16.853 1,097 5/19/2022
2022.5.16.816 1,191 5/16/2022
2022.5.4.1010 1,123 5/4/2022
2022.4.10.947 1,171 4/10/2022
2022.4.10.925 1,164 4/10/2022
2022.4.10.828 1,125 4/10/2022
2022.4.1.1545 1,225 4/1/2022
2022.3.31.823 1,206 3/31/2022
2022.3.26.1103 1,292 3/26/2022
2022.3.26.820 1,229 3/26/2022
2022.3.25.840 1,325 3/26/2022
2022.2.16.1131 1,246 2/17/2022
2022.2.16.834 1,263 2/17/2022
2022.2.5.1114 1,330 2/5/2022
2022.1.17.1158 1,314 1/17/2022
2022.1.10.1505 1,336 1/10/2022
2022.1.10.537 1,435 1/10/2022
2022.1.5.1139 1,173 1/8/2022
2021.12.28.1452 1,554 12/28/2021
2021.12.16.812 1,360 12/16/2021
2021.11.23.1528 7,606 11/24/2021
2021.11.21.925 1,193 11/22/2021
2021.11.19.847 1,375 11/19/2021
2021.11.18.1824 1,258 11/16/2021
2021.11.10.852 1,200 11/10/2021
2021.11.9.2021 1,361 11/9/2021
2021.11.8.2109 1,232 11/9/2021
2021.11.8.1612 1,323 11/8/2021
2021.11.7.1021 1,272 11/8/2021
2021.11.3.1612 1,237 11/4/2021
2021.11.1.1102 1,186 11/1/2021
2021.10.25.1206 1,228 10/25/2021
2021.10.23.1310 1,240 10/25/2021
2021.10.19.1522 1,292 10/19/2021
2021.10.16.1325 1,305 10/18/2021
2021.10.9.1119 109 10/9/2024
2021.10.6.1546 1,245 10/6/2021
2021.10.5.1450 1,319 10/5/2021
2021.10.4.1155 1,286 10/5/2021
2021.10.1.753 1,169 10/1/2021
2021.9.27.1005 1,164 9/28/2021
2021.9.26.1913 1,190 9/26/2021
2021.9.17.1702 1,167 9/17/2021
2021.9.17.1449 1,132 9/17/2021
2021.9.12.1100 1,224 9/13/2021
2021.9.11.2004 1,434 9/11/2021
2021.9.9.1110 1,327 9/9/2021
2021.9.7.1901 1,299 9/8/2021
2021.9.7.1121 1,262 9/7/2021
2021.9.6.1518 1,260 9/7/2021
2021.9.4.1124 1,218 9/4/2021
2021.9.2.708 1,179 9/4/2021
2021.9.0.1259 1,157 9/2/2021
2021.8.2100 1,258 8/23/2021
2021.8.22.900 1,229 8/22/2021
2021.8.18.1500 1,299 8/18/2021
2021.8.18.930 1,173 8/18/2021
2021.8.14.1600 1,240 8/16/2021
2021.8.14.829 1,317 8/14/2021
2021.8.9.1105 1,215 8/9/2021
2021.8.8.1612 1,195 8/8/2021
2021.8.8.1138 1,252 8/8/2021
2021.8.6.1044 1,284 8/6/2021
2021.8.4.1355 1,315 8/5/2021
2021.7.30.2118 1,266 7/31/2021
2021.7.27.926 1,277 7/28/2021
2021.7.23.931 1,230 7/26/2021
2021.7.22.1456 1,162 7/23/2021
2021.7.15.1547 1,196 7/15/2021
2021.7.13.812 1,172 7/13/2021
2021.7.8.1527 1,358 7/10/2021
2021.6.29.1453 1,335 6/30/2021
2021.6.26.1753 1,353 6/27/2021
2021.6.25.1849 1,308 6/25/2021
2021.6.24.1518 1,227 6/24/2021
2021.6.20.729 1,202 6/20/2021
2021.6.15.2006 1,244 6/15/2021
2021.6.14.2025 1,275 6/15/2021
2021.6.13.2035 1,202 6/14/2021
2021.6.12.1154 1,258 6/13/2021
2021.6.9.1120 1,299 6/9/2021
2021.6.3.1509 1,382 6/3/2021
2021.5.31.1533 1,214 5/31/2021
2021.5.31.1415 1,226 5/31/2021
2021.5.25.1732 1,307 5/25/2021
2021.5.24.1128 1,229 5/24/2021
2021.5.24.1019 1,213 5/24/2021
2021.5.12.1054 1,103 5/12/2021
2021.5.12.637 1,201 5/12/2021
2021.5.10.1442 1,280 5/11/2021
2021.5.8.1226 1,199 5/8/2021
2021.5.6.2037 1,194 5/6/2021
2021.5.5.1901 1,179 5/6/2021
2021.5.3.1621 1,104 5/4/2021
2021.5.1.905 1,198 5/1/2021
2021.4.28.1511 1,259 4/28/2021
2021.4.20.1520 1,271 4/21/2021
2021.4.16.738 1,123 4/21/2021
2021.4.14.1216 1,166 4/16/2021
2021.4.9.1538 1,178 4/13/2021
2021.4.8.947 1,273 4/13/2021
2021.4.6.1235 1,201 4/6/2021
2021.4.5.1653 1,233 4/5/2021
2021.4.1.913 1,246 4/1/2021
2021.3.31.2003 1,325 4/1/2021
2021.3.18.1622 1,188 3/18/2021
2021.3.3.1259 1,257 3/3/2021
2021.3.2.1415 1,259 3/2/2021
2021.3.1.11 1,258 2/28/2021
2021.3.1.1 1,238 2/27/2021
2021.3.1 1,221 2/27/2021
2021.2.21.1 1,260 2/21/2021
2021.2.20.1 1,236 2/20/2021
2021.2.19.2 1,208 2/19/2021
2021.2.18.6 1,241 2/19/2021
2021.2.17.1 1,302 2/17/2021
2021.2.16.1 1,276 2/16/2021
2021.2.15.3 1,237 2/15/2021
2021.2.15.1 1,256 2/14/2021
2021.2.14.3 1,262 2/14/2021
2021.2.12.6 1,218 2/12/2021
2021.2.12.2 1,192 2/12/2021
2021.2.11.1 1,242 2/11/2021
2021.2.10.1 1,226 2/10/2021
2021.2.8.1 1,212 2/9/2021
2021.2.7.2 1,282 2/7/2021
2021.2.7.1 1,210 2/6/2021
2020.12.27.6 1,289 12/27/2020
2020.12.27.1 1,373 12/27/2020
2020.12.26.7 1,228 12/27/2020
2020.12.26.5 1,266 12/27/2020
2020.12.26.3 1,338 12/27/2020
2020.12.19.1 1,423 12/19/2020
2020.12.16.1 1,231 12/16/2020
2020.12.15.1 1,294 12/15/2020
2020.12.14.5 1,362 12/14/2020
2020.12.14.4 1,343 12/14/2020
2020.12.14.3 1,347 12/14/2020
2020.12.5.1 1,413 12/5/2020
2020.12.4.4 1,391 12/4/2020
2020.12.4.3 1,356 12/4/2020
2020.12.4.1 1,336 12/4/2020
2020.12.3.1 1,400 12/3/2020
2020.12.2.4 1,309 12/2/2020
2020.12.1.1 1,426 12/1/2020
2020.11.28.1 1,330 11/28/2020
2020.11.27.2 1,373 11/27/2020
2020.11.27.1 1,370 11/27/2020
2020.11.25.1 1,336 11/25/2020
2020.11.22.3 1,326 11/23/2020
2020.11.20.1 1,417 11/21/2020
2020.11.19.3 1,427 11/19/2020
2020.11.19.1 1,359 11/19/2020
2020.11.18.2 1,388 11/18/2020
2020.11.17.2 1,400 11/17/2020
2020.11.17.1 1,379 11/17/2020
2020.11.15.1 1,473 11/15/2020
2020.11.14.1 1,529 11/14/2020
2020.11.13.2 1,337 11/13/2020
2020.11.13.1 1,424 11/13/2020
2020.11.12.1 1,338 11/12/2020
2020.11.11.1 1,378 11/11/2020
2020.11.8.1 1,454 11/8/2020
2020.11.7.1 1,325 11/7/2020
2020.11.5.1 1,357 11/5/2020
2020.11.3.1 1,448 11/3/2020
2020.11.1.3 1,389 11/1/2020
2020.11.1.2 1,306 11/1/2020
2020.11.1.1 1,419 11/1/2020
2020.10.30.1 1,437 11/1/2020
2020.10.15.3 1,374 10/15/2020
2020.10.15.2 1,367 10/15/2020
2020.10.14.1 1,351 10/14/2020
2020.10.13.1 1,344 10/13/2020
2020.10.12.2 1,355 10/12/2020
2020.10.12.1 1,318 10/12/2020
2020.10.10.1 1,455 10/10/2020
2020.10.9.6 1,299 10/9/2020
2020.10.9.2 1,323 10/9/2020
2020.10.9.1 1,398 10/9/2020
2020.10.8.1 1,348 10/8/2020
2020.10.6.8 1,271 10/7/2020
2020.10.6.6 1,339 10/7/2020
2020.10.6.5 1,384 10/7/2020
2020.10.6.4 1,332 10/7/2020
2020.10.6.3 1,386 10/7/2020
2020.10.6.2 1,427 10/7/2020
2020.10.6.1 1,445 10/7/2020
2020.10.5.1 1,367 10/6/2020
2020.10.1.3 1,352 10/1/2020
2020.10.1.2 1,348 10/1/2020
2020.10.1.1 1,334 10/1/2020
2020.9.29.10 1,385 9/29/2020
2020.9.29.9 1,477 9/29/2020
2020.9.28.2 1,386 9/28/2020
2020.9.28.1 1,344 9/28/2020
2020.9.25.1 1,447 9/26/2020
2020.9.24.2 1,308 9/24/2020
2020.9.24 1,279 9/24/2020
2020.9.23.2 1,360 9/23/2020
2020.9.23.1 1,385 9/23/2020
2020.9.22.1 1,402 9/22/2020
2020.9.21.1 1,381 9/21/2020
2020.9.17.2 1,341 9/17/2020
2020.9.16 1,386 9/16/2020
2020.9.15 1,381 9/15/2020
2020.9.14 1,300 9/14/2020
2020.9.9.2 1,363 9/9/2020
2020.9.8.1 1,349 9/8/2020
2020.9.8 1,349 9/8/2020
2020.9.6.5 1,445 9/6/2020
2020.9.4.2 1,347 9/4/2020
2020.9.4 1,437 9/4/2020
2020.9.3.1 1,359 9/3/2020

This free api library may not give accurate results as it uses unchecked public domain data
     2020.09.09
     - Use IFirewallServiceCollection on builder because else it would register with any .net app but crash as IFirewall is missing
     - update NuGet package references
     
     2020.09.08
     - update NuGet package references
     
     2020.09.04
     - update documentation and references