Cirreum.AuthenticationProvider
3.2.0
dotnet add package Cirreum.AuthenticationProvider --version 3.2.0
NuGet\Install-Package Cirreum.AuthenticationProvider -Version 3.2.0
<PackageReference Include="Cirreum.AuthenticationProvider" Version="3.2.0" />
<PackageVersion Include="Cirreum.AuthenticationProvider" Version="3.2.0" />
<PackageReference Include="Cirreum.AuthenticationProvider" />
paket add Cirreum.AuthenticationProvider --version 3.2.0
#r "nuget: Cirreum.AuthenticationProvider, 3.2.0"
#:package Cirreum.AuthenticationProvider@3.2.0
#addin nuget:?package=Cirreum.AuthenticationProvider&version=3.2.0
#tool nuget:?package=Cirreum.AuthenticationProvider&version=3.2.0
Cirreum.AuthenticationProvider
Authentication track abstractions for the Cirreum framework — the contracts scheme implementations and runtime composition build on.
Overview
Cirreum.AuthenticationProvider provides the shared contracts for Cirreum authentication providers.
It sits between individual authentication scheme packages and the runtime that composes them:
- Scheme packages implement these contracts —
Cirreum.Authentication.ApiKey,Cirreum.Authentication.SignedRequest,Cirreum.Authentication.SessionTicket, etc. - Runtime composition consumes them —
Cirreum.Runtime.AuthenticationProvider - Applications access them through —
Cirreum.Runtime.Authentication
Contract surface
Provider registration
AuthenticationProviderRegistrar<TSettings, TInstanceSettings>— base registrar for provider instances, scheme naming, and instance deduplicationHeaderAuthenticationProviderRegistrar<,>/AudienceAuthenticationProviderRegistrar<,>— registrar specializations by credential routing modelProviderNameandSubjectKind— provider identity and authenticated subject classification
Scheme contracts
ISchemeSelector/SchemeCategory— per-request authentication scheme selectionCredentialTransport— identifies where a scheme receives its credentialISignedRequestAlgorithmand resolver — pluggable SignedRequest algorithmsSessionTicketcontracts — HTTP-to-long-lived-connection authentication handoff
Configuration
AuthenticationProviderSettings<TInstanceSettings>/HeaderAuthenticationProviderInstanceSettings,AudienceAuthenticationProviderInstanceSettings— base provider configuration bound fromCirreum:Authentication:Providers:{ProviderName}ClaimAuthoritySettings— declares whether profile and role claims are authoritative from the identity provider or application store
Composition
IAuthenticationBuilder— builder surface used by scheme packages to register and declare authentication schemesAudienceSchemeRegistration— audience-to-scheme routing metadataSchemeClaimAuthorityRegistration— per-scheme claim-authority metadataIRevokedCredentialProvider— application-provided credential revocation stateConfigureCoordination(...)/AddDefaultCoordinationScope()— authentication-specific coordination helpers
This package contains authentication-provider composition contracts only. Host-independent identity/profile enrichment and authorization primitives live in lower-level Cirreum packages.
Where it fits
Cirreum.Kernel (auth event bus — IAuthenticationEventPublisher/Handler;
attribute-authority vocabulary — SubjectKind, ClaimAuthority)
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 | Versions 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. |
-
net10.0
- Cirreum.Contracts (>= 4.7.0)
- Cirreum.Coordination (>= 1.3.1)
- Cirreum.Providers (>= 1.3.1)
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.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. Opaque single-use tickets over Authorization: Bearer transport with an in-memory store; distributed deployments register their own ISessionStore. |
|
|
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.SignedRequest
SignedRequest authentication scheme for the Cirreum framework. Verifies RFC 9421 HTTP Message Signatures (HMAC-SHA256, with a pluggable algorithm resolver) and RFC 9530 Content-Digest for partner / M2M integrations, and signs outbound requests. Ships the authentication handler, ISchemeSelector, the dynamic credential resolver, and the strict-nonce replay posture. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.2.0 | 202 | 8/24/2026 |
| 3.1.0 | 92 | 8/24/2026 |
| 3.0.5 | 78 | 8/24/2026 |
| 3.0.4 | 202 | 8/20/2026 |
| 3.0.3 | 162 | 8/18/2026 |
| 3.0.2 | 160 | 8/17/2026 |
| 3.0.1 | 90 | 8/17/2026 |
| 3.0.0 | 101 | 8/17/2026 |
| 2.0.5 | 200 | 8/4/2026 |
| 2.0.4 | 111 | 8/3/2026 |
| 2.0.3 | 192 | 7/31/2026 |
| 2.0.2 | 99 | 7/31/2026 |
| 2.0.1 | 215 | 7/29/2026 |
| 2.0.0 | 204 | 7/27/2026 |
| 1.4.2 | 193 | 7/25/2026 |
| 1.4.1 | 237 | 7/20/2026 |
| 1.4.0 | 105 | 7/20/2026 |
| 1.3.0 | 98 | 7/20/2026 |
| 1.2.2 | 223 | 7/18/2026 |
| 1.2.1 | 256 | 7/7/2026 |