ITfoxtec Identity
ITfoxtec Identity es una biblioteca .NET de código abierto que implementa OAuth 2.0 y OpenID Connect 1.0.
La biblioteca incluye modelos de solicitud y respuesta para OAuth 2.0 y OpenID Connect, ayudas de validación y utilidades para construir flujos de autorización, tokens y cierre de sesión.
Las ayudas de descubrimiento OIDC integradas facilitan almacenar en caché documentos de descubrimiento y conjuntos de claves web JSON (JWKS).
Cuándo FoxIDs es relevante
Usa la biblioteca open source cuando necesites componentes de OAuth 2.0 y OpenID Connect en tu propio código .NET. FoxIDs es relevante cuando necesitas una plataforma de identidad alojada y completa con flujos de inicio de sesión, federación, configuración multi-tenant y soporte operativo.
- Pasa de componentes de protocolo a un servicio de identidad completo
- Añade federación, proveedores de identidad externos y flujos de inicio de sesión específicos por tenant
- Obtén operaciones alojadas, funciones de cumplimiento y soporte experto
Puedes usar la herramienta JWT para decodificar tokens y crear certificados autofirmados con la herramienta de certificados.
Código
El código siguiente muestra cómo construir una URL de autorización OAuth 2.0 usando descubrimiento OIDC.
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());