Walter.Web.FireWall.Geo.MaxMind 2025.9.1452

Prefix Reserved
dotnet add package Walter.Web.FireWall.Geo.MaxMind --version 2025.9.1452
                    
NuGet\Install-Package Walter.Web.FireWall.Geo.MaxMind -Version 2025.9.1452
                    
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.MaxMind" Version="2025.9.1452" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Walter.Web.FireWall.Geo.MaxMind" Version="2025.9.1452" />
                    
Directory.Packages.props
<PackageReference Include="Walter.Web.FireWall.Geo.MaxMind" />
                    
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.MaxMind --version 2025.9.1452
                    
#r "nuget: Walter.Web.FireWall.Geo.MaxMind, 2025.9.1452"
                    
#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.
#:package Walter.Web.FireWall.Geo.MaxMind@2025.9.1452
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Walter.Web.FireWall.Geo.MaxMind&version=2025.9.1452
                    
Install as a Cake Addin
#tool nuget:?package=Walter.Web.FireWall.Geo.MaxMind&version=2025.9.1452
                    
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 MaxMind for Geography. You can get free as well as paid geo data from https://www.maxmind.com these samples assume GeoLite2-Country.mmdb and GeoLite2-City.mmdb are available in a directory called D:\MaxMind and are shared by several web applications. If no path is provided App_Data is assumed.

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);

}).UseGeography(new System.IO.DirectoryInfo("D:\\MaxMind"));

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 for the MaxMind package

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  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.  net8.0-windows7.0 is compatible.  net9.0 is compatible.  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.  net9.0-windows7.0 is compatible.  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. 
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.9.1452 211 9/28/2025
2025.8.13.1223 216 8/13/2025
2025.7.30.1003 167 7/30/2025
2025.7.10.1347 217 7/10/2025
2025.6.30.1407 214 7/1/2025
2025.6.12.1057 373 6/12/2025
2025.4.17.1816 381 4/17/2025
2025.3.13.1323 261 3/13/2025
2025.2.26.1642 279 2/26/2025
2025.2.25.1033 272 2/26/2025
2025.2.24.1556 268 2/25/2025
2025.2.16.1149 302 2/19/2025
2025.2.15.1316 316 2/15/2025
2025.1.16.1410 269 1/16/2025
2025.1.4.1941 264 1/4/2025
2025.1.2.1544 248 1/3/2025
2024.12.14.838 328 12/14/2024
2024.12.9.1107 297 12/13/2024
Loading failed

Major releases that add functionality other than optimization and minor bug fixing

16 Feb 2025
- Update to .Net 9 SP1

12 October 2023
- Build using SDK-7.0.402 and SDK-6.0.415
- Update Package references

14 September 2023
- SDK 7.0.401/SDK 6.0.414
- Update to new NuGet Packages

14 June 2023
- Update due to SDK Update 7.0.304, and 6.0.410

12 April 2023
- Update to a new .net 7.0.5 SDK release

14 Mar 2023
- Update NuGet package refferences

22 Feb 2023
- Axel Imani Release (Go live)

15 February 2023
- Update to .net 6.0.406  and 7.0.3

11 January 2023
- update to 7.0.2, 6.0.13 SDK and build tools for 17.4.4

14 December 2022
- Update to .Net SDK 3.1.426, 6.0.404 and 7.0.101

21 November 2022
- Update to integrate the .net 7.0 cypher package release
- Update package references

14 November 2022
- Update NuGet Packages

6 November 2022
- Add support for .Net 7

15 November 2022
- Update NuGet package references

1 October 2022
- Update build with new SDK
- Update code sign certificates

14 September 2022
- Update to include new package 6.0.X and Microsoft CVE-2022-38013

02 September 2022
- Please make sure to update servers using this packages due to a security bug in .net
> System.Security.Cryptography.Xml      4.5.0      Moderate   https://github.com/advisories/GHSA-2m65-m22p-9wjw
> System.Text.Encodings.Web             4.5.0      Critical   https://github.com/advisories/GHSA-ghhp-997w-qr28

15 June 2022
- Update to support .net 6.0.7 and 3.1.27
- Update package references

21 June 2022
- Update package references

4 May 2022
- Update NuGet References

15 March 2022
- update to 6.0.3

16 December 2021
- Update to .Net SDK update 14 December
- Update embedded MaxMind data 14 December when use embedded resources

21 November 2021
- Update maxMind API NuGet package

9 November 2021
- Fix package dependency on vulnerable packages from Microsoft by upgrading vulnerable packages
- remove support for .net standard 2.1 due to a down stream code unreadability in the package dependencies that could not be resolved

08 November 2021
- Update to .Net NuGet packages .NET 6.0.0, .NET 5.0.403 and core 3.1.415

22 October 2021
- Update service registration as well as application configuration to enable GEO-Middleware and not just GEO Filters

19 September 2021
- Update NuGet packages release for .Net 5.0.10

9 September 2021
- Add extension method UseGeographyFromResource() for FireWall service configuration

8 Aug 2021
- update to .NET 6.0 SDK (v6.0.100-preview.6)

30 June 2021
- Add .Net 6.0 binaries to the NuGet package


15 June 2021
- Update to .Net Core 3.1.17 and .Net 5.0.8 SDK

09 June 2021
- Update to .Net SDK 5.0.301 and 3.1.410

31 April 2021
- Update debugger display to improve debugging experience


12 April 2021
- Update to new code base after .net security violation fix

22 March 2021
- Performance update

15 March 2021
- Update cashing key schema

05 March 2021
- Update package reference

12 February 2021
- Framework extension changes
- Update package references

25 January 2021
- Update extension methods
- Update package references

02 January 2021
- Updated terms and conditions to REL. 2021.01.02

29 December 2020
- Update package reference

26 December 2020
- Add support for ASN

23 December 2020
- Update package reference

20 December 2020
- Add extension for making it easy to integrate Geographic support in UnitTests
See https://firewallapi.asp-waf.com/html/M-Microsoft.Extensions.DependencyInjection.MaxMindBuilderExtensions.InjectMaxMindGeoProviderInUnitTest--1.htm

- Update package references

19 December 2020
- Update to new IMapLocation interface

14 December 2020
- Update package references
- improve loading files for MaxMind data

12 December 2020
- Update package references
- Compile with Language version 9.0

04 December 2020
- Update package references

22 November 2020
- Update compiler hints improving .net Core 3.1 and .Net 5.0 compiled binaries

19 November 2020
- Update package reference to System.Text.Encodings.Web 5.0.0., MaxMind.Db 3.0.0., MaxMind.GeoIP2 4.0.0., and MaxMind.GeoIP2 4.0.0.

11 November 2020
- Update packages and support .Net 5.0

08 November 2020
- Update signatures and NuGet package references

14 October 2020
- Update to .net core 3.1.4

2020.10.05.1 Update NuGet Packages
2020.09.23.1 Add extension method for URI location discovery

2020.09.09 update NuGet package references
2020.09.08 update NuGet package references
2020.09.04 update documentation and references
2020.07.11
1. Update documentation and references
2. Add support for Ticket service for incident reporting when the Walter.TicketService.ExceptionReporting is set to true (default false)