Definición de un perfil técnico para un emisor de tokens de SAML en una directiva personalizada de Azure Active Directory B2C
Nota:
En Azure Active Directory B2C, las directivas personalizadas se han diseñado principalmente para abordar escenarios complejos. Para la mayoría de los escenarios, se recomienda usar flujos de usuario integrados. Si no lo ha hecho, obtenga información sobre el paquete de inicio de directivas personalizadas en Introducción a las directivas personalizadas en Active Directory B2C.
Azure Active Directory B2C (Azure AD B2C) emite varios tipos de tokens de seguridad a medida que procesa cada flujo de autenticación. Un perfil técnico de un emisor de tokens de SAML emite un token de SAML que se devuelve a la aplicación de usuario de confianza (proveedor de servicios). Este perfil técnico suele ser el último paso de orquestación en el recorrido del usuario.
Protocolo
El atributo Name del elemento Protocol tiene que establecerse en SAML2
. Establezca el elemento OutputTokenFormat en SAML2
.
En el ejemplo siguiente se muestra un perfil técnico de Saml2AssertionIssuer
:
<TechnicalProfile Id="Saml2AssertionIssuer">
<DisplayName>Token Issuer</DisplayName>
<Protocol Name="SAML2"/>
<OutputTokenFormat>SAML2</OutputTokenFormat>
<Metadata>
<Item Key="IssuerUri">https://tenant-name.b2clogin.com/tenant-name.onmicrosoft.com/B2C_1A_signup_signin_SAML</Item>
<Item Key="TokenNotBeforeSkewInSeconds">600</Item>
</Metadata>
<CryptographicKeys>
<Key Id="MetadataSigning" StorageReferenceId="B2C_1A_SamlIdpCert"/>
<Key Id="SamlMessageSigning" StorageReferenceId="B2C_1A_SamlIdpCert"/>
</CryptographicKeys>
<InputClaims/>
<OutputClaims/>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Saml-issuer"/>
</TechnicalProfile>
Notificaciones de entrada, de salida y persistentes
Los elementos InputClaims, OutputClaims y PersistClaims están vacíos o faltan. Los elementos InutputClaimsTransformations y OutputClaimsTransformations faltan también.
Metadatos
Atributo | Obligatorio | Descripción |
---|---|---|
IssuerUri | No | Nombre del emisor que aparece en la respuesta de SAML. El valor debe ser el mismo nombre que el configurado en la aplicación de usuario de confianza. |
XmlSignatureAlgorithm | No | El método que usa Azure AD B2C para firmar la aserción SAML. Valores posibles: Sha256 , Sha384 , Sha512 o Sha1 . Asegúrese de configurar el algoritmo de firma en ambos lados con el mismo valor. Use solo el algoritmo que admite el certificado. Para configurar la respuesta SAML, consulte las Opciones para registrar una aplicación SAML. |
TokenNotBeforeSkewInSeconds | No | Especifica el sesgo, como un entero, para la marca de tiempo que marca el inicio del período de validez. Cuanto mayor sea este número, más remoto será el inicio del período de validez con respecto al momento en que se emiten las reclamaciones para el usuario de confianza. Por ejemplo, si el valor de TokenNotBeforeSkewInSeconds se establece en 60 segundos, si el token se emite a las 13:05:10 UTC, el token es válido a partir de 13:04:10 UTC. El valor predeterminado es 0. El valor máximo es 3600 (una hora). |
TokenLifeTimeInSeconds | No | Especifica la duración de la aserción SAML. Este valor se especifica en segundos desde el valor NotBefore al que se ha hecho referencia anteriormente. El valor predeterminado es de 300 segundos (5 minutos). |
Claves de cifrado
El elemento CryptographicKeys contiene los siguientes atributos:
Atributo | Obligatorio | Descripción |
---|---|---|
MetadataSigning | Sí | El certificado X509 (conjunto de claves RSA) que se va a usar para firmar los metadatos SAML. Azure AD B2C usa esta clave para firmar los metadatos. |
SamlMessageSigning | Sí | Especifique el certificado X509 (conjunto de claves RSA) que se va a usar para firmar los mensajes de SAML. Azure AD B2C usa esta clave para firmar la respuesta <samlp:Response> enviada al usuario de confianza. |
SamlAssertionSigning | No | Especifique el certificado X509 (conjunto de claves RSA) que se va a usar para firmar el elemento <saml:Assertion> de aserción de SAML del token SAML. Si no se proporciona, se usa la clave criptográfica SamlMessageSigning en su lugar. |
Administración de sesiones
Para configurar las sesiones de SAML de Azure AD B2C entre una aplicación de usuario de confianza, el atributo del elemento UseTechnicalProfileForSessionManagement
, haga referencia a la sesión de inicio de sesión único SamlSSOSessionProvider.
Pasos siguientes
Consulte el siguiente artículo para obtener un ejemplo del uso de un perfil técnico del emisor de SAML: