Udostępnij za pośrednictwem


Definiowanie profilu technicznego wystawcy tokenu SAML w zasadach niestandardowych usługi Azure Active Directory B2C

Uwaga

W usłudze Azure Active Directory B2C zasady niestandardowe są przeznaczone głównie do rozwiązywania złożonych scenariuszy. W przypadku większości scenariuszy zalecamy używanie wbudowanych przepływów użytkowników. Jeśli nie zostało to zrobione, dowiedz się więcej o niestandardowym pakiecie startowym zasad w temacie Wprowadzenie do zasad niestandardowych w usłudze Active Directory B2C.

Usługa Azure Active Directory B2C (Azure AD B2C) emituje kilka typów tokenów zabezpieczających, ponieważ przetwarza każdy przepływ uwierzytelniania. Profil techniczny wystawcy tokenu SAML emituje token SAML, który jest zwracany z powrotem do aplikacji jednostki uzależnionej (dostawcy usług). Zazwyczaj ten profil techniczny jest ostatnim krokiem aranżacji w podróży użytkownika.

Protokół

Atrybut Name elementu Protocol musi być ustawiony na SAML2wartość . Ustaw element OutputTokenFormat na SAML2wartość .

W poniższym przykładzie przedstawiono profil techniczny dla Saml2AssertionIssuerprogramu :

<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>

Oświadczenia wejściowe, wyjściowe i utrwalane

Elementy InputClaims, OutputClaims i PersistClaims są puste lub nieobecne. Elementy InutputClaimsTransformations i OutputClaimsTransformations są również nieobecne .

Metadane

Atrybut Wymagane Opis
Identyfikator IssuerUri Nie Nazwa wystawcy wyświetlana w odpowiedzi SAML. Wartość powinna być taka sama jak nazwa skonfigurowana w aplikacji jednostki uzależnionej.
XmlSignatureAlgorithm Nie Metoda, która Azure AD B2C używa do podpisywania asercji SAML. Możliwe wartości: Sha256, , Sha512Sha384lub Sha1. Upewnij się, że algorytm podpisu jest konfigurowany po obu stronach o tej samej wartości. Użyj tylko algorytmu obsługiwanego przez certyfikat. Aby skonfigurować odpowiedź SAML, zobacz Opcje rejestrowania aplikacji SAML
TokenNotBeforeSkewInSeconds Nie Określa niesymetryczność jako liczbę całkowitą sygnatury czasowej, która oznacza początek okresu ważności. Im większa jest ta liczba, tym dalej w czasie, w którym zaczyna się okres ważności w odniesieniu do czasu wystawiania oświadczeń dla jednostki uzależnionej. Na przykład jeśli token TokenNotBeforeSkewInSeconds jest ustawiony na 60 sekund, jeśli token jest wystawiony o godzinie 13:05:10 UTC, token jest prawidłowy od 13:04:10 UTC. Wartość domyślna to 0. Wartość maksymalna to 3600 (jedna godzina).
TokenLifeTimeInSeconds Nie Określa żywotność asercji SAML. Ta wartość jest wyrażona w sekundach od wartości NotBefore, do których odwołuje się powyżej. Wartość domyślna to 300 sekund (5 minut).

Klucze kryptograficzne

Element CryptographicKeys zawiera następujące atrybuty:

Atrybut Wymagane Opis
MetadataSigning Tak Certyfikat X509 (zestaw kluczy RSA) używany do podpisywania metadanych SAML. Azure AD B2C używa tego klucza do podpisywania metadanych.
SamlMessageSigning Tak Określ certyfikat X509 (zestaw kluczy RSA), który ma być używany do podpisywania komunikatów SAML. Azure AD B2C używa tego klucza do podpisywania odpowiedzi <samlp:Response> wysyłanej do jednostki uzależnionej.
SamlAssertionSigning Nie Określ certyfikat X509 (zestaw kluczy RSA), który ma być używany do podpisywania elementu asercji <saml:Assertion> SAML tokenu SAML. Jeśli nie zostanie podany, SamlMessageSigning zamiast tego zostanie użyty klucz kryptograficzny.

Zarządzanie sesjami

Aby skonfigurować sesje protokołu SAML Azure AD B2C między aplikacją jednostki uzależnionej, atrybut UseTechnicalProfileForSessionManagement elementu, odwołanie do sesji logowania jednokrotnego SamlSSOSessionProvider.

Następne kroki

Zapoznaj się z następującym artykułem, aby zapoznać się z przykładem użycia profilu technicznego wystawcy SAML: