ToolUp.AuthProviders.Oidc.Shared 0.22.0

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

ToolUp.AuthProviders.Oidc

Generic OIDC server-side IAuthProvider for ToolUp.Platform. Discovers JWKS via .well-known/openid-configuration, validates RS256 JWT bearer tokens against the discovered keys, and projects the resolved identity into AuthenticatedUser. Provider-agnostic — works against any OIDC-compliant issuer (Auth0, Cognito, Keycloak, etc.).

Key revocation window — read before deploying

By default this provider caches JWKS keys for 10 minutes and OIDC discovery metadata for 24 hours. So:

A signing key the issuer has revoked keeps validating tokens on a given instance for up to 10 minutes while the issuer is reachable, and for as long as JWKS fetches keep failing. Once a refresh is failing, the provider prefers serving the last-known-good key set over failing every sign-in — the window is then bounded by provider availability, not by the TTL.

That is a deliberate availability-over-revocation default, matching mainstream OIDC libraries: an issuer blip should not take your application down. If your threat model includes signing-key compromise, three opt-in knobs on OidcHardening change it, and every one defaults to the behaviour above:

  • JwksCacheTtl — shorten the ordinary window. Some TimeSpan.Zero disables the JWKS cache entirely: every validation re-fetches and nothing is served from cache, stale fallback included. That is the tightest window this provider offers, at one round-trip per validated request.
  • FailClosedOnStaleJwks — bound the outage window: a failing refresh surfaces the error rather than serving possibly-revoked keys. Sign-in fails while the IdP is unreachable; that is the trade.
  • JwksEvictionSignal — bound the window across instances. A fetch failure publishes a CustomNotification on the platform-reserved scope; siblings subscribed via OidcJwksCache.subscribeToEvictions evict their own entry for that URL. Without it, a fleet's window is each instance's TTL measured independently. Requires a distributed notification channel — the in-process default reaches only the publishing process.

Not covered by any of them: per-token revocation. This provider does not perform token introspection (RFC 7662); revocation is observed only through the key set, so a revoked grant whose signing key is still published keeps validating until the token's exp. Keep access-token lifetimes short.

Full guidance, including the wiring snippet for the cross-instance signal, is in the SDK's auth-providers companion documentation.

Licensed under Apache-2.0.

Part of the ToolUp Platform SDK — see github.com/ToolUp-Forge/toolup-forge for full documentation.

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 (1)

Showing the top 1 NuGet packages that depend on ToolUp.AuthProviders.Oidc.Shared:

Package Downloads
ToolUp.AuthProviders.Oidc.Client

Client-side OIDC sign-in UI for ToolUp.Platform: Authorization Code + PKCE flow against any OIDC-compliant issuer. (Phase 11.C.5 unified the `.Client` suffix convention: `ToolUp.AuthProviders.OidcClient` -> `.Oidc.Client`, matching `ToolUp.AIProviders.Claude.Client` and `ToolUp.AuthProviders.EntraExternalId.Client`.)

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.22.0 37 8/27/2026
0.21.0 56 8/26/2026
0.20.1 105 8/20/2026
0.20.0 126 8/19/2026