IronAlpine.Security.AspNetCore 1.1.0

dotnet add package IronAlpine.Security.AspNetCore --version 1.1.0
                    
NuGet\Install-Package IronAlpine.Security.AspNetCore -Version 1.1.0
                    
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="IronAlpine.Security.AspNetCore" Version="1.1.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="IronAlpine.Security.AspNetCore" Version="1.1.0" />
                    
Directory.Packages.props
<PackageReference Include="IronAlpine.Security.AspNetCore" />
                    
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 IronAlpine.Security.AspNetCore --version 1.1.0
                    
#r "nuget: IronAlpine.Security.AspNetCore, 1.1.0"
                    
#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 IronAlpine.Security.AspNetCore@1.1.0
                    
#: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=IronAlpine.Security.AspNetCore&version=1.1.0
                    
Install as a Cake Addin
#tool nuget:?package=IronAlpine.Security.AspNetCore&version=1.1.0
                    
Install as a Cake Tool

IronAlpine.Security.AspNetCore

AspNetCore security runtime for current-user resolution, JWT validation, and permission policy execution.

Install

dotnet add package IronAlpine.Security.AspNetCore

Fluent Setup

builder.Services
    .AddIronAlpineSecurityJwt(builder.Configuration)
    .WithAuthorizationCore()
    .AddPolicyCatalog<Permissions>()
    .WithSignalR("/hubs/messenger");

Includes

  • HttpContextCurrentUser implementation (ICurrentUser + IAuditUser)
  • AddIronAlpineSecurityJwt(...) fluent entry point
  • PermissionRequirement
  • AuthorizeAnyPermissionAttribute
  • PermissionPolicyProvider
  • PermissionAuthorizationHandler
  • IPermissionPolicyNameResolver
  • DefaultPermissionPolicyNameResolver (passthrough)
  • policy-catalog helpers for smart-enum or reflected permission catalogs

Policy Name Resolver

IPermissionPolicyNameResolver lets host applications map endpoint policy names to permission names.

  • Example: Policy = "IdentitySessionsRead"Permission = "identity:sessions:read"
  • If no custom resolver is registered, DefaultPermissionPolicyNameResolver uses passthrough behavior.

Policy Catalogs

For permission catalogs that already expose static GetValues() and GetFieldName(...) members plus an instance Name value, use:

builder.Services
    .AddIronAlpineSecurityJwt(builder.Configuration)
    .AddPolicyCatalog<Permissions>();

If you already have values and selectors, use:

builder.Services
    .AddIronAlpineSecurityJwt(builder.Configuration)
    .WithSmartEnumCatalog(Permissions.GetValues(), Permissions.GetFieldName, x => x.Name);

AddPolicyCatalog<TPermission>(prefix) prepends the raw prefix to generated policy names when a service wants a namespace such as "Admin:".

SignalR Token Support

Query-string token extraction is optional and only active when:

  • SignalR.EnableAccessTokenFromQuery = true
  • Request path matches one of SignalR.HubPaths

Notes

  • Multi-value claims are preserved without data loss.
  • Auth:Mode=None and fake authentication are not part of this package.
  • AuthorizeAnyPermission provides OR semantics; multiple [Authorize] attributes provide AND semantics.
Product Compatible and additional computed target framework versions.
.NET 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.  net10.0 is compatible.  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 (1)

Showing the top 1 NuGet packages that depend on IronAlpine.Security.AspNetCore:

Package Downloads
IronAlpine.Security.Authorization.EFCore

Entity Framework Core store and model mapping for IronAlpine security authorization.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.1.0 39 3/12/2026

Stable mediator release with request/response, notification publish strategies, streaming, and dependency injection integration.