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.11.20.644 0 11/21/2024
2024.11.15.421 68 11/15/2024
2024.11.11.1334 67 11/14/2024
2024.11.6.1222 69 11/6/2024
2024.10.28.1605 92 10/28/2024
2024.10.28.1335 69 10/28/2024
2024.10.19.1525 85 10/20/2024
2024.10.18.1315 109 10/18/2024
2024.9.27.1406 83 9/27/2024
2024.9.17.1417 146 9/17/2024
2024.9.12.1923 110 9/12/2024
2024.9.6.1352 103 9/7/2024
2024.9.1.1159 95 9/1/2024
2024.8.26.1150 113 8/26/2024
2024.8.19.1411 117 8/19/2024
2024.8.17.1000 120 8/17/2024
2024.8.12.1622 110 8/13/2024
2024.8.5.1010 72 8/5/2024
2024.8.1.1545 125 8/16/2024
2024.7.28.629 92 7/28/2024
2024.7.26.1512 90 7/26/2024
2024.7.26.828 91 7/26/2024
2024.7.11.1604 104 7/11/2024
2024.7.9.1520 97 7/9/2024
2024.7.4.1425 105 7/4/2024
2024.7.3.1249 98 7/3/2024
2024.7.2.1536 113 7/2/2024
2024.6.28.953 130 6/28/2024
2023.11.13.1117 507 11/13/2023
2023.10.26.1502 447 10/29/2023
2023.10.12.1926 477 10/12/2023
2023.9.14.812 525 9/14/2023
2023.9.7.1748 546 9/7/2023
2023.9.7.1241 504 9/7/2023
2023.9.6.1001 543 9/6/2023
2023.9.5.1246 512 9/5/2023
2023.9.5.1032 523 9/5/2023
2023.8.31.1522 541 8/31/2023
2023.8.29.1040 560 8/29/2023
2023.8.17.901 568 8/17/2023
2023.8.9.1314 629 8/9/2023
2023.8.2.750 633 8/2/2023
2023.7.12.830 635 7/12/2023
2023.7.5.1419 679 7/6/2023
2023.6.14.1628 638 6/14/2023
2023.6.11.1304 652 6/11/2023
2023.5.30.1640 628 5/30/2023
2023.5.4.1552 652 5/4/2023
2023.5.1.1524 672 5/1/2023
2023.4.29.910 679 4/29/2023
2023.4.12.1236 670 4/12/2023
2023.3.22.1456 725 3/22/2023
2023.3.14.1356 762 3/14/2023
2023.3.1.810 808 3/1/2023
2023.2.25.11857 761 2/25/2023
2023.2.22.27 739 2/22/2023
2023.2.15.1413 762 2/15/2023
2023.2.11.1628 794 2/11/2023
2023.1.11.534 824 1/11/2023
2022.12.30.711 777 12/30/2022
2022.12.15.1108 825 12/15/2022
2022.12.14.648 826 12/14/2022
2022.11.27.1059 833 11/27/2022
2022.11.21.338 826 11/21/2022
2022.11.14.1819 857 11/14/2022
2022.11.13.917 910 11/13/2022
2022.10.31.740 1,003 11/1/2022
2022.10.15.652 1,007 10/15/2022
2022.10.1.810 1,012 10/1/2022
2022.9.26.1444 996 9/26/2022
2022.9.14.1508 1,062 9/14/2022
2022.9.14.809 1,087 9/14/2022
2022.9.8.1009 1,078 9/8/2022
2022.8.20.1007 1,004 8/20/2022
2022.8.1.1 1,081 7/31/2022
2022.7.1300 1,065 7/1/2022
2022.7.31.1016 1,143 7/31/2022
2022.7.15.841 1,171 7/15/2022
2022.6.21.647 1,076 6/21/2022
2022.5.18.638 1,048 5/19/2022
2022.5.16.853 1,045 5/19/2022
2022.5.16.816 1,139 5/16/2022
2022.5.4.1010 1,068 5/4/2022
2022.4.10.947 1,117 4/10/2022
2022.4.10.925 1,112 4/10/2022
2022.4.10.828 1,069 4/10/2022
2022.4.1.1545 1,169 4/1/2022
2022.3.31.823 1,155 3/31/2022
2022.3.26.1103 1,240 3/26/2022
2022.3.26.820 1,177 3/26/2022
2022.3.25.840 1,270 3/26/2022
2022.2.16.1131 1,190 2/17/2022
2022.2.16.834 1,204 2/17/2022
2022.2.5.1114 1,267 2/5/2022
2022.1.17.1158 1,256 1/17/2022
2022.1.10.1505 1,278 1/10/2022
2022.1.10.537 1,378 1/10/2022
2022.1.5.1139 1,117 1/8/2022
2021.12.28.1452 1,500 12/28/2021
2021.12.16.812 1,301 12/16/2021
2021.11.23.1528 7,546 11/24/2021
2021.11.21.925 1,133 11/22/2021
2021.11.19.847 1,317 11/19/2021
2021.11.18.1824 1,200 11/16/2021
2021.11.10.852 1,138 11/10/2021
2021.11.9.2021 1,303 11/9/2021
2021.11.8.2109 1,154 11/9/2021
2021.11.8.1612 1,250 11/8/2021
2021.11.7.1021 1,216 11/8/2021
2021.11.3.1612 1,169 11/4/2021
2021.11.1.1102 1,111 11/1/2021
2021.10.25.1206 1,172 10/25/2021
2021.10.23.1310 1,184 10/25/2021
2021.10.19.1522 1,233 10/19/2021
2021.10.16.1325 1,249 10/18/2021
2021.10.9.1119 79 10/9/2024
2021.10.6.1546 1,189 10/6/2021
2021.10.5.1450 1,259 10/5/2021
2021.10.4.1155 1,226 10/5/2021
2021.10.1.753 1,113 10/1/2021
2021.9.27.1005 1,105 9/28/2021
2021.9.26.1913 1,101 9/26/2021
2021.9.17.1702 1,112 9/17/2021
2021.9.17.1449 1,072 9/17/2021
2021.9.12.1100 1,170 9/13/2021
2021.9.11.2004 1,356 9/11/2021
2021.9.9.1110 1,270 9/9/2021
2021.9.7.1901 1,240 9/8/2021
2021.9.7.1121 1,204 9/7/2021
2021.9.6.1518 1,204 9/7/2021
2021.9.4.1124 1,159 9/4/2021
2021.9.2.708 1,121 9/4/2021
2021.9.0.1259 1,098 9/2/2021
2021.8.2100 1,202 8/23/2021
2021.8.22.900 1,168 8/22/2021
2021.8.18.1500 1,243 8/18/2021
2021.8.18.930 1,115 8/18/2021
2021.8.14.1600 1,181 8/16/2021
2021.8.14.829 1,260 8/14/2021
2021.8.9.1105 1,153 8/9/2021
2021.8.8.1612 1,137 8/8/2021
2021.8.8.1138 1,195 8/8/2021
2021.8.6.1044 1,228 8/6/2021
2021.8.4.1355 1,259 8/5/2021
2021.7.30.2118 1,209 7/31/2021
2021.7.27.926 1,220 7/28/2021
2021.7.23.931 1,156 7/26/2021
2021.7.22.1456 1,090 7/23/2021
2021.7.15.1547 1,138 7/15/2021
2021.7.13.812 1,115 7/13/2021
2021.7.8.1527 1,301 7/10/2021
2021.6.29.1453 1,273 6/30/2021
2021.6.26.1753 1,295 6/27/2021
2021.6.25.1849 1,242 6/25/2021
2021.6.24.1518 1,172 6/24/2021
2021.6.20.729 1,147 6/20/2021
2021.6.15.2006 1,183 6/15/2021
2021.6.14.2025 1,213 6/15/2021
2021.6.13.2035 1,140 6/14/2021
2021.6.12.1154 1,196 6/13/2021
2021.6.9.1120 1,243 6/9/2021
2021.6.3.1509 1,325 6/3/2021
2021.5.31.1533 1,157 5/31/2021
2021.5.31.1415 1,166 5/31/2021
2021.5.25.1732 1,250 5/25/2021
2021.5.24.1128 1,173 5/24/2021
2021.5.24.1019 1,155 5/24/2021
2021.5.12.1054 1,045 5/12/2021
2021.5.12.637 1,138 5/12/2021
2021.5.10.1442 1,221 5/11/2021
2021.5.8.1226 1,133 5/8/2021
2021.5.6.2037 1,133 5/6/2021
2021.5.5.1901 1,116 5/6/2021
2021.5.3.1621 1,038 5/4/2021
2021.5.1.905 1,131 5/1/2021
2021.4.28.1511 1,197 4/28/2021
2021.4.20.1520 1,206 4/21/2021
2021.4.16.738 1,059 4/21/2021
2021.4.14.1216 1,099 4/16/2021
2021.4.9.1538 1,112 4/13/2021
2021.4.8.947 1,206 4/13/2021
2021.4.6.1235 1,139 4/6/2021
2021.4.5.1653 1,170 4/5/2021
2021.4.1.913 1,181 4/1/2021
2021.3.31.2003 1,259 4/1/2021
2021.3.18.1622 1,122 3/18/2021
2021.3.3.1259 1,189 3/3/2021
2021.3.2.1415 1,181 3/2/2021
2021.3.1.11 1,190 2/28/2021
2021.3.1.1 1,168 2/27/2021
2021.3.1 1,153 2/27/2021
2021.2.21.1 1,189 2/21/2021
2021.2.20.1 1,165 2/20/2021
2021.2.19.2 1,138 2/19/2021
2021.2.18.6 1,173 2/19/2021
2021.2.17.1 1,232 2/17/2021
2021.2.16.1 1,206 2/16/2021
2021.2.15.3 1,169 2/15/2021
2021.2.15.1 1,187 2/14/2021
2021.2.14.3 1,194 2/14/2021
2021.2.12.6 1,149 2/12/2021
2021.2.12.2 1,121 2/12/2021
2021.2.11.1 1,170 2/11/2021
2021.2.10.1 1,153 2/10/2021
2021.2.8.1 1,140 2/9/2021
2021.2.7.2 1,208 2/7/2021
2021.2.7.1 1,142 2/6/2021
2020.12.27.6 1,221 12/27/2020
2020.12.27.1 1,299 12/27/2020
2020.12.26.7 1,148 12/27/2020
2020.12.26.5 1,197 12/27/2020
2020.12.26.3 1,267 12/27/2020
2020.12.19.1 1,350 12/19/2020
2020.12.16.1 1,162 12/16/2020
2020.12.15.1 1,223 12/15/2020
2020.12.14.5 1,285 12/14/2020
2020.12.14.4 1,269 12/14/2020
2020.12.14.3 1,272 12/14/2020
2020.12.5.1 1,339 12/5/2020
2020.12.4.4 1,301 12/4/2020
2020.12.4.3 1,281 12/4/2020
2020.12.4.1 1,262 12/4/2020
2020.12.3.1 1,307 12/3/2020
2020.12.2.4 1,236 12/2/2020
2020.12.1.1 1,351 12/1/2020
2020.11.28.1 1,259 11/28/2020
2020.11.27.2 1,300 11/27/2020
2020.11.27.1 1,294 11/27/2020
2020.11.25.1 1,265 11/25/2020
2020.11.22.3 1,257 11/23/2020
2020.11.20.1 1,349 11/21/2020
2020.11.19.3 1,334 11/19/2020
2020.11.19.1 1,288 11/19/2020
2020.11.18.2 1,316 11/18/2020
2020.11.17.2 1,328 11/17/2020
2020.11.17.1 1,308 11/17/2020
2020.11.15.1 1,381 11/15/2020
2020.11.14.1 1,458 11/14/2020
2020.11.13.2 1,265 11/13/2020
2020.11.13.1 1,352 11/13/2020
2020.11.12.1 1,264 11/12/2020
2020.11.11.1 1,311 11/11/2020
2020.11.8.1 1,382 11/8/2020
2020.11.7.1 1,256 11/7/2020
2020.11.5.1 1,284 11/5/2020
2020.11.3.1 1,378 11/3/2020
2020.11.1.3 1,319 11/1/2020
2020.11.1.2 1,238 11/1/2020
2020.11.1.1 1,348 11/1/2020
2020.10.30.1 1,365 11/1/2020
2020.10.15.3 1,304 10/15/2020
2020.10.15.2 1,291 10/15/2020
2020.10.14.1 1,283 10/14/2020
2020.10.13.1 1,274 10/13/2020
2020.10.12.2 1,287 10/12/2020
2020.10.12.1 1,251 10/12/2020
2020.10.10.1 1,377 10/10/2020
2020.10.9.6 1,229 10/9/2020
2020.10.9.2 1,254 10/9/2020
2020.10.9.1 1,318 10/9/2020
2020.10.8.1 1,273 10/8/2020
2020.10.6.8 1,199 10/7/2020
2020.10.6.6 1,272 10/7/2020
2020.10.6.5 1,315 10/7/2020
2020.10.6.4 1,263 10/7/2020
2020.10.6.3 1,314 10/7/2020
2020.10.6.2 1,353 10/7/2020
2020.10.6.1 1,374 10/7/2020
2020.10.5.1 1,295 10/6/2020
2020.10.1.3 1,285 10/1/2020
2020.10.1.2 1,273 10/1/2020
2020.10.1.1 1,266 10/1/2020
2020.9.29.10 1,310 9/29/2020
2020.9.29.9 1,410 9/29/2020
2020.9.28.2 1,313 9/28/2020
2020.9.28.1 1,275 9/28/2020
2020.9.25.1 1,376 9/26/2020
2020.9.24.2 1,234 9/24/2020
2020.9.24 1,204 9/24/2020
2020.9.23.2 1,293 9/23/2020
2020.9.23.1 1,318 9/23/2020
2020.9.22.1 1,334 9/22/2020
2020.9.21.1 1,312 9/21/2020
2020.9.17.2 1,274 9/17/2020
2020.9.16 1,311 9/16/2020
2020.9.15 1,309 9/15/2020
2020.9.14 1,228 9/14/2020
2020.9.9.2 1,291 9/9/2020
2020.9.8.1 1,281 9/8/2020
2020.9.8 1,272 9/8/2020
2020.9.6.5 1,372 9/6/2020
2020.9.4.2 1,276 9/4/2020
2020.9.4 1,302 9/4/2020
2020.9.3.1 1,291 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