Wsparcie
Zadaj pytania na Stack Overflow.
E-mail support@foxids.com z linkiem do pytania.
Pakiet
Wydania
NuGet ITfoxtec Identity
Kod i licencja
Kod na GitHub
Licencja open-source
ITfoxtec Identity
ITfoxtec Identity to biblioteka open-source .NET implementująca OAuth 2.0 i OpenID Connect 1.0.
Nazwa firmy ITfoxtec została zmieniona na FoxIDs ale komponenty na razie zachowają nazwę ITfoxtec jako część nazwy komponentu.
Obsługiwane wersje .NET:
- .NET 10.0
- .NET 9.0
- .NET 8.0
- .NET 7.0
- .NET 6.0
- .NET Standard 2.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).
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());