ITfoxtec Identity
ITfoxtec Identity to biblioteka open-source .NET implementująca OAuth 2.0 i OpenID Connect 1.0.
Biblioteka zawiera modele żądań i odpowiedzi dla OAuth 2.0 i OpenID Connect, helpery walidacji oraz narzędzia do budowy przepływów autoryzacji, tokenów i wylogowania.
Wbudowane helpery OIDC discovery ułatwiają cache'owanie dokumentów discovery i zestawów kluczy JSON Web Key Sets (JWKS).
Kiedy FoxIDs jest odpowiedni
Użyj biblioteki open source, gdy potrzebujesz elementów OAuth 2.0 i OpenID Connect we własnym kodzie .NET. FoxIDs jest odpowiedni, gdy potrzebujesz kompletnej hostowanej platformy tożsamości z przepływami logowania, federacją, konfiguracją multi-tenant i wsparciem operacyjnym.
- Przejdź od elementów protokołu do kompletnej usługi tożsamości
- Dodaj federację, zewnętrznych dostawców tożsamości i przepływy logowania specyficzne dla tenantów
- Uzyskaj hostowaną obsługę operacyjną, funkcje zgodności i wsparcie ekspertów
Możesz użyć narzędzia JWT do dekodowania tokenów i tworzenia certyfikatów samopodpisanych za pomocą narzędzia certyfikatów.
Kod
Poniższy kod pokazuje, jak zbudować adres URL autoryzacji OAuth 2.0 przy użyciu 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());