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 SAML2
wartość . Ustaw element OutputTokenFormat na SAML2
wartość .
W poniższym przykładzie przedstawiono profil techniczny dla Saml2AssertionIssuer
programu :
<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 , , Sha512 Sha384 lub 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: