Walter.Web.FireWall.Geo.Native 2020.9.28.1

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.28.1                
NuGet\Install-Package Walter.Web.FireWall.Geo.Native -Version 2020.9.28.1                
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.28.1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Walter.Web.FireWall.Geo.Native --version 2020.9.28.1                
#r "nuget: Walter.Web.FireWall.Geo.Native, 2020.9.28.1"                
#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.
// Install Walter.Web.FireWall.Geo.Native as a Cake Addin
#addin nuget:?package=Walter.Web.FireWall.Geo.Native&version=2020.9.28.1

// Install Walter.Web.FireWall.Geo.Native as a Cake Tool
#tool nuget:?package=Walter.Web.FireWall.Geo.Native&version=2020.9.28.1                

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 with the Native Geography provider

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. 
.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
2024.9.17.1417 69 9/17/2024
2024.9.12.1923 75 9/12/2024
2024.9.6.1352 70 9/7/2024
2024.9.1.1159 72 9/1/2024
2024.8.26.1150 92 8/26/2024
2024.8.19.1411 99 8/19/2024
2024.8.17.1000 99 8/17/2024
2024.8.12.1622 88 8/13/2024
2024.8.5.1010 53 8/5/2024
2024.8.1.1545 104 8/16/2024
2024.7.28.629 77 7/28/2024
2024.7.26.1512 72 7/26/2024
2024.7.26.828 70 7/26/2024
2024.7.11.1604 84 7/11/2024
2024.7.9.1520 78 7/9/2024
2024.7.4.1425 92 7/4/2024
2024.7.3.1249 83 7/3/2024
2024.7.2.1536 98 7/2/2024
2024.6.28.953 111 6/28/2024
2023.11.13.1117 489 11/13/2023
2023.10.26.1502 429 10/29/2023
2023.10.12.1926 462 10/12/2023
2023.9.14.812 509 9/14/2023
2023.9.7.1748 527 9/7/2023
2023.9.7.1241 489 9/7/2023
2023.9.6.1001 523 9/6/2023
2023.9.5.1246 495 9/5/2023
2023.9.5.1032 505 9/5/2023
2023.8.31.1522 519 8/31/2023
2023.8.29.1040 533 8/29/2023
2023.8.17.901 549 8/17/2023
2023.8.9.1314 607 8/9/2023
2023.8.2.750 612 8/2/2023
2023.7.12.830 617 7/12/2023
2023.7.5.1419 656 7/6/2023
2023.6.14.1628 620 6/14/2023
2023.6.11.1304 633 6/11/2023
2023.5.30.1640 601 5/30/2023
2023.5.4.1552 635 5/4/2023
2023.5.1.1524 654 5/1/2023
2023.4.29.910 665 4/29/2023
2023.4.12.1236 655 4/12/2023
2023.3.22.1456 710 3/22/2023
2023.3.14.1356 742 3/14/2023
2023.3.1.810 788 3/1/2023
2023.2.25.11857 743 2/25/2023
2023.2.22.27 724 2/22/2023
2023.2.15.1413 743 2/15/2023
2023.2.11.1628 775 2/11/2023
2023.1.11.534 806 1/11/2023
2022.12.30.711 758 12/30/2022
2022.12.15.1108 809 12/15/2022
2022.12.14.648 806 12/14/2022
2022.11.27.1059 812 11/27/2022
2022.11.21.338 807 11/21/2022
2022.11.14.1819 841 11/14/2022
2022.11.13.917 893 11/13/2022
2022.10.31.740 973 11/1/2022
2022.10.15.652 991 10/15/2022
2022.10.1.810 994 10/1/2022
2022.9.26.1444 978 9/26/2022
2022.9.14.1508 1,032 9/14/2022
2022.9.14.809 1,062 9/14/2022
2022.9.8.1009 1,061 9/8/2022
2022.8.20.1007 975 8/20/2022
2022.8.1.1 1,056 7/31/2022
2022.7.1300 1,040 7/1/2022
2022.7.31.1016 1,110 7/31/2022
2022.7.15.841 1,125 7/15/2022
2022.6.21.647 1,039 6/21/2022
2022.5.18.638 1,028 5/19/2022
2022.5.16.853 1,026 5/19/2022
2022.5.16.816 1,070 5/16/2022
2022.5.4.1010 1,045 5/4/2022
2022.4.10.947 1,100 4/10/2022
2022.4.10.925 1,092 4/10/2022
2022.4.10.828 1,053 4/10/2022
2022.4.1.1545 1,154 4/1/2022
2022.3.31.823 1,125 3/31/2022
2022.3.26.1103 1,219 3/26/2022
2022.3.26.820 1,161 3/26/2022
2022.3.25.840 1,245 3/26/2022
2022.2.16.1131 1,164 2/17/2022
2022.2.16.834 1,172 2/17/2022
2022.2.5.1114 1,247 2/5/2022
2022.1.17.1158 1,238 1/17/2022
2022.1.10.1505 1,222 1/10/2022
2022.1.10.537 1,356 1/10/2022
2022.1.5.1139 1,098 1/8/2022
2021.12.28.1452 1,479 12/28/2021
2021.12.16.812 1,285 12/16/2021
2021.11.23.1528 7,488 11/24/2021
2021.11.21.925 1,117 11/22/2021
2021.11.19.847 1,272 11/19/2021
2021.11.18.1824 1,176 11/16/2021
2021.11.10.852 1,119 11/10/2021
2021.11.9.2021 1,263 11/9/2021
2021.11.8.2109 1,140 11/9/2021
2021.11.8.1612 1,232 11/8/2021
2021.11.7.1021 1,194 11/8/2021
2021.11.3.1612 1,141 11/4/2021
2021.11.1.1102 1,096 11/1/2021
2021.10.25.1206 1,153 10/25/2021
2021.10.23.1310 1,165 10/25/2021
2021.10.19.1522 1,213 10/19/2021
2021.10.16.1325 1,217 10/18/2021
2021.10.6.1546 1,171 10/6/2021
2021.10.5.1450 1,230 10/5/2021
2021.10.4.1155 1,209 10/5/2021
2021.10.1.753 1,089 10/1/2021
2021.9.27.1005 1,085 9/28/2021
2021.9.26.1913 1,073 9/26/2021
2021.9.17.1702 1,080 9/17/2021
2021.9.17.1449 1,056 9/17/2021
2021.9.12.1100 1,146 9/13/2021
2021.9.11.2004 1,321 9/11/2021
2021.9.9.1110 1,249 9/9/2021
2021.9.7.1901 1,221 9/8/2021
2021.9.7.1121 1,169 9/7/2021
2021.9.6.1518 1,184 9/7/2021
2021.9.4.1124 1,139 9/4/2021
2021.9.2.708 1,101 9/4/2021
2021.9.0.1259 1,082 9/2/2021
2021.8.2100 1,172 8/23/2021
2021.8.22.900 1,148 8/22/2021
2021.8.18.1500 1,190 8/18/2021
2021.8.18.930 1,095 8/18/2021
2021.8.14.1600 1,163 8/16/2021
2021.8.14.829 1,236 8/14/2021
2021.8.9.1105 1,125 8/9/2021
2021.8.8.1612 1,109 8/8/2021
2021.8.8.1138 1,168 8/8/2021
2021.8.6.1044 1,213 8/6/2021
2021.8.4.1355 1,237 8/5/2021
2021.7.30.2118 1,184 7/31/2021
2021.7.27.926 1,201 7/28/2021
2021.7.23.931 1,138 7/26/2021
2021.7.22.1456 1,067 7/23/2021
2021.7.15.1547 1,114 7/15/2021
2021.7.13.812 1,100 7/13/2021
2021.7.8.1527 1,268 7/10/2021
2021.6.29.1453 1,258 6/30/2021
2021.6.26.1753 1,277 6/27/2021
2021.6.25.1849 1,214 6/25/2021
2021.6.24.1518 1,156 6/24/2021
2021.6.20.729 1,118 6/20/2021
2021.6.15.2006 1,167 6/15/2021
2021.6.14.2025 1,175 6/15/2021
2021.6.13.2035 1,111 6/14/2021
2021.6.12.1154 1,163 6/13/2021
2021.6.9.1120 1,205 6/9/2021
2021.6.3.1509 1,296 6/3/2021
2021.5.31.1533 1,140 5/31/2021
2021.5.31.1415 1,146 5/31/2021
2021.5.25.1732 1,212 5/25/2021
2021.5.24.1128 1,158 5/24/2021
2021.5.24.1019 1,137 5/24/2021
2021.5.12.1054 1,024 5/12/2021
2021.5.12.637 1,120 5/12/2021
2021.5.10.1442 1,183 5/11/2021
2021.5.8.1226 1,115 5/8/2021
2021.5.6.2037 1,098 5/6/2021
2021.5.5.1901 1,081 5/6/2021
2021.5.3.1621 1,020 5/4/2021
2021.5.1.905 1,112 5/1/2021
2021.4.28.1511 1,163 4/28/2021
2021.4.20.1520 1,163 4/21/2021
2021.4.16.738 1,038 4/21/2021
2021.4.14.1216 1,082 4/16/2021
2021.4.9.1538 1,061 4/13/2021
2021.4.8.947 1,188 4/13/2021
2021.4.6.1235 1,123 4/6/2021
2021.4.5.1653 1,151 4/5/2021
2021.4.1.913 1,146 4/1/2021
2021.3.31.2003 1,240 4/1/2021
2021.3.18.1622 1,098 3/18/2021
2021.3.3.1259 1,163 3/3/2021
2021.3.2.1415 1,166 3/2/2021
2021.3.1.11 1,171 2/28/2021
2021.3.1.1 1,127 2/27/2021
2021.3.1 1,135 2/27/2021
2021.2.21.1 1,174 2/21/2021
2021.2.20.1 1,146 2/20/2021
2021.2.19.2 1,119 2/19/2021
2021.2.18.6 1,156 2/19/2021
2021.2.17.1 1,215 2/17/2021
2021.2.16.1 1,185 2/16/2021
2021.2.15.3 1,149 2/15/2021
2021.2.15.1 1,168 2/14/2021
2021.2.14.3 1,146 2/14/2021
2021.2.12.6 1,133 2/12/2021
2021.2.12.2 1,104 2/12/2021
2021.2.11.1 1,146 2/11/2021
2021.2.10.1 1,133 2/10/2021
2021.2.8.1 1,120 2/9/2021
2021.2.7.2 1,191 2/7/2021
2021.2.7.1 1,126 2/6/2021
2020.12.27.6 1,203 12/27/2020
2020.12.27.1 1,282 12/27/2020
2020.12.26.7 1,127 12/27/2020
2020.12.26.5 1,177 12/27/2020
2020.12.26.3 1,245 12/27/2020
2020.12.19.1 1,308 12/19/2020
2020.12.16.1 1,142 12/16/2020
2020.12.15.1 1,207 12/15/2020
2020.12.14.5 1,267 12/14/2020
2020.12.14.4 1,248 12/14/2020
2020.12.14.3 1,251 12/14/2020
2020.12.5.1 1,318 12/5/2020
2020.12.4.4 1,275 12/4/2020
2020.12.4.3 1,261 12/4/2020
2020.12.4.1 1,237 12/4/2020
2020.12.3.1 1,289 12/3/2020
2020.12.2.4 1,211 12/2/2020
2020.12.1.1 1,333 12/1/2020
2020.11.28.1 1,244 11/28/2020
2020.11.27.2 1,280 11/27/2020
2020.11.27.1 1,274 11/27/2020
2020.11.25.1 1,249 11/25/2020
2020.11.22.3 1,226 11/23/2020
2020.11.20.1 1,330 11/21/2020
2020.11.19.3 1,306 11/19/2020
2020.11.19.1 1,272 11/19/2020
2020.11.18.2 1,300 11/18/2020
2020.11.17.2 1,310 11/17/2020
2020.11.17.1 1,292 11/17/2020
2020.11.15.1 1,363 11/15/2020
2020.11.14.1 1,429 11/14/2020
2020.11.13.2 1,243 11/13/2020
2020.11.13.1 1,327 11/13/2020
2020.11.12.1 1,248 11/12/2020
2020.11.11.1 1,291 11/11/2020
2020.11.8.1 1,360 11/8/2020
2020.11.7.1 1,232 11/7/2020
2020.11.5.1 1,264 11/5/2020
2020.11.3.1 1,359 11/3/2020
2020.11.1.3 1,303 11/1/2020
2020.11.1.2 1,214 11/1/2020
2020.11.1.1 1,318 11/1/2020
2020.10.30.1 1,341 11/1/2020
2020.10.15.3 1,286 10/15/2020
2020.10.15.2 1,256 10/15/2020
2020.10.14.1 1,256 10/14/2020
2020.10.13.1 1,254 10/13/2020
2020.10.12.2 1,271 10/12/2020
2020.10.12.1 1,221 10/12/2020
2020.10.10.1 1,359 10/10/2020
2020.10.9.6 1,206 10/9/2020
2020.10.9.2 1,227 10/9/2020
2020.10.9.1 1,288 10/9/2020
2020.10.8.1 1,253 10/8/2020
2020.10.6.8 1,180 10/7/2020
2020.10.6.6 1,254 10/7/2020
2020.10.6.5 1,296 10/7/2020
2020.10.6.4 1,243 10/7/2020
2020.10.6.3 1,295 10/7/2020
2020.10.6.2 1,331 10/7/2020
2020.10.6.1 1,357 10/7/2020
2020.10.5.1 1,276 10/6/2020
2020.10.1.3 1,256 10/1/2020
2020.10.1.2 1,250 10/1/2020
2020.10.1.1 1,247 10/1/2020
2020.9.29.10 1,273 9/29/2020
2020.9.29.9 1,383 9/29/2020
2020.9.28.2 1,294 9/28/2020
2020.9.28.1 1,254 9/28/2020
2020.9.25.1 1,358 9/26/2020
2020.9.24.2 1,213 9/24/2020
2020.9.24 1,187 9/24/2020
2020.9.23.2 1,271 9/23/2020
2020.9.23.1 1,299 9/23/2020
2020.9.22.1 1,308 9/22/2020
2020.9.21.1 1,294 9/21/2020
2020.9.17.2 1,253 9/17/2020
2020.9.16 1,290 9/16/2020
2020.9.15 1,291 9/15/2020
2020.9.14 1,210 9/14/2020
2020.9.9.2 1,270 9/9/2020
2020.9.8.1 1,243 9/8/2020
2020.9.8 1,250 9/8/2020
2020.9.6.5 1,354 9/6/2020
2020.9.4.2 1,248 9/4/2020
2020.9.4 1,286 9/4/2020
2020.9.3.1 1,264 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