Cirreum.AuthenticationProvider 2.0.1

There is a newer version of this package available.
See the version list below for details.
dotnet add package Cirreum.AuthenticationProvider --version 2.0.1
                    
NuGet\Install-Package Cirreum.AuthenticationProvider -Version 2.0.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="Cirreum.AuthenticationProvider" Version="2.0.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Cirreum.AuthenticationProvider" Version="2.0.1" />
                    
Directory.Packages.props
<PackageReference Include="Cirreum.AuthenticationProvider" />
                    
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 Cirreum.AuthenticationProvider --version 2.0.1
                    
#r "nuget: Cirreum.AuthenticationProvider, 2.0.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.
#:package Cirreum.AuthenticationProvider@2.0.1
                    
#: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=Cirreum.AuthenticationProvider&version=2.0.1
                    
Install as a Cake Addin
#tool nuget:?package=Cirreum.AuthenticationProvider&version=2.0.1
                    
Install as a Cake Tool

Cirreum.AuthenticationProvider

NuGet Version NuGet Downloads GitHub Release License .NET

Authentication track abstractions for the Cirreum framework — the contracts scheme implementations and runtime composition build on.

Overview

Cirreum.AuthenticationProvider is the abstraction layer for Cirreum's Authentication track — one of the three that separate concerns across identity: Identity, Authentication, and Authorization. It defines the contracts that:

  • Scheme packages implement — Cirreum.Authentication.ApiKey, Cirreum.Authentication.SignedRequest, Cirreum.Authentication.SessionTicket, etc.
  • Runtime composition wires — Cirreum.Runtime.AuthenticationProvider (the dynamic forward scheme resolver, auth-event hosted handlers, cache invalidators, boot-time analyzers)
  • The umbrella package exposes — Cirreum.Runtime.Authentication (the AddAuthentication(...) app-facing builder)

Contract surface

Schemes:

  • ISchemeSelector + SchemeCategory enum — per-request scheme dispatch (open/closed)
  • CredentialTransport enum — where the scheme reads its credential
  • ISignedRequestAlgorithm + resolver — version-pluggable crypto for SignedRequest scheme
  • SessionTicket family — HTTP→long-lived-connection handoff primitives

Patterns:

  • IAuthenticationBuilder — the builder surface scheme registrations extend
  • [AllowPendingAuth] — opt-in for Two-Phase Auth's anonymous-pending-auth pattern

Compositions:

  • AudienceSchemeRegistration — the audience → scheme routing contribution audience-based registrars add per instance
  • IRevokedCredentialProvider — app-side credential revocation hydration

Profile enrichment (IUserProfileEnrichmentBuilder, IGraphEnabledBuilder, IExternalGraphEnabledBuilder, ClaimsUserProfileEnricher) is not part of this package — it's host-agnostic (any host may enrich a profile post-authentication, regardless of which — or whether any — auth scheme is active) and lives in Cirreum.Contracts/Cirreum.Domain instead. The same reasoning applies to authentication-boundary resolution (IAuthenticationBoundaryResolver, AuthenticationBoundary): the server user-state pipeline consumes it whether or not any authentication scheme is composed, so it lives in Cirreum.Kernel.

Where it fits

Cirreum.Kernel                  (auth event bus — IAuthenticationEventPublisher/Handler)
Cirreum.AuthenticationProvider  ← this package
Cirreum.Authentication.{Scheme} — ApiKey, SignedRequest, SessionTicket, ...
Cirreum.Runtime.AuthenticationProvider
Cirreum.Runtime.Authentication  (app-facing umbrella; AddAuthentication(...))

License

MIT — see LICENSE.

Product Compatible and additional computed target framework versions.
.NET 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 (7)

Showing the top 5 NuGet packages that depend on Cirreum.AuthenticationProvider:

Package Downloads
Cirreum.Authentication.External

BYOID (Bring-Your-Own-IDp) external authentication scheme for the Cirreum framework. Validates JWT bearer tokens from multiple customer Identity Providers (Okta, Auth0, customer Entra tenants) per tenant-identifier resolution (header / path / subdomain), via an ISchemeSelector that routes to the resolved tenant's issuer.

Cirreum.Runtime.AuthenticationProvider

Runtime driver for the Cirreum Authentication track. Provides the typed RegisterAuthenticationProvider<TRegistrar, TSettings, TInstanceSettings>() bootstrap that the umbrella package Cirreum.Runtime.Authentication calls once per framework-shipped scheme registrar, plus the framework-shipped AudienceProviderRoleClaimsTransformer and its diagnostics (ActivitySource + Meter).

Cirreum.Authentication.ApiKey

ApiKey authentication scheme for the Cirreum framework. Provides the ApiKey authentication handler, options, registrar, ISchemeSelector, and a source-based client resolver family — static configured keys plus dynamic default / named sources (with optional per-source caching and X-Api-Source routing). Supports both Authorization: Bearer and custom-header credential transports.

Cirreum.Authentication.Entra

Azure Entra ID authentication scheme for the Cirreum framework. Wraps Microsoft.Identity.Web for Entra-issued JWT validation (Web API) and OpenID Connect (Web App).

Cirreum.Authentication.SessionTicket

SessionTicket authentication scheme for the Cirreum framework — session-establishment credentials minted by app code (negotiate endpoints, webhook handlers) and validated at WebSocket / SignalR / gRPC handshake. 1.0.0 ships opaque-variant tickets with Bearer transport + in-memory store; JWT-variant tickets and subprotocol / cookie / query transports planned for 1.1.0+.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.0.5 0 8/4/2026
2.0.4 37 8/3/2026
2.0.3 76 7/31/2026
2.0.2 40 7/31/2026
2.0.1 137 7/29/2026
2.0.0 197 7/27/2026
1.4.2 186 7/25/2026
1.4.1 233 7/20/2026
1.4.0 100 7/20/2026
1.3.0 93 7/20/2026
1.2.2 218 7/18/2026
1.2.1 252 7/7/2026
1.2.0 219 7/6/2026
1.1.7 191 7/5/2026
1.1.6 103 7/5/2026
1.1.5 103 7/5/2026
1.1.4 107 7/5/2026
1.1.3 108 7/5/2026
1.1.2 131 7/4/2026
1.1.1 260 7/4/2026
Loading failed