ITfoxtec Identity
ITfoxtec Identity is een open source .NET bibliotheek die OAuth 2.0 en OpenID Connect 1.0 implementeert.
De bibliotheek bevat request en response modellen voor OAuth 2.0 en OpenID Connect, validatiehelpers en hulpmiddelen voor het bouwen van authorization, token en logout flows.
Ingebouwde OIDC discovery helpers maken het eenvoudig om discovery documenten en JSON Web Key Sets (JWKS) te cachen.
Wanneer FoxIDs relevant is
Gebruik de open source bibliotheek wanneer je OAuth 2.0 en OpenID Connect bouwstenen nodig hebt in je eigen .NET code. FoxIDs is relevant wanneer je een volledig gehost identiteitsplatform nodig hebt met loginflows, federatie, multi-tenant inrichting en operationele ondersteuning.
- Ga van protocolbouwstenen naar een volledige identiteitsdienst
- Voeg federatie, externe identiteitsproviders en tenantspecifieke loginflows toe
- Krijg gehost beheer, compliance functies en ondersteuning van experts
Je kunt de JWT tool gebruiken om tokens te decoderen en zelfondertekende certificaten te maken met de certificaattool.
Code
De code hieronder laat zien hoe je een OAuth 2.0 authorization URL opbouwt met OIDC discovery.
using ITfoxtec.Identity;
using ITfoxtec.Identity.Discovery;
using ITfoxtec.Identity.Messages;
var discoveryHandler = new OidcDiscoveryHandler(httpClientFactory);
var discovery = await discoveryHandler.GetOidcDiscoveryAsync("https://login.example.com/.well-known/openid-configuration");
var request = new AuthorizationRequest
{
ResponseType = "code",
ClientId = clientId,
RedirectUri = redirectUri,
Scope = new[] { "openid", "profile" }.ToSpaceList(),
State = Guid.NewGuid().ToString("N")
};
var authorizeUrl = discovery.AuthorizationEndpoint.AddQuery(request.ToDictionary());