分享方式:


在 Azure Active Directory B2C 自訂原則中定義 SAML 權杖簽發者的技術設定檔

注意

在 Azure Active Directory B2C 中,自訂原則的主要用途為處理複雜的案例。 在大部分情況下,我們建議使用內建的使用者流程。 如果您尚未執行此操作,請於在 Active Directory B2C 中開始使用自訂原則中,了解自訂原則入門套件。

Azure Active Directory B2C (Azure AD B2C) 會在處理每個驗證流程時發出數種安全性權杖。 SAML 權杖簽發者其技術設定檔會發出要傳回至信賴憑證者應用程式 (服務提供者) 的 SAML 權杖。 此技術設定檔通常是使用者旅程圖中的最後一個協調流程步驟。

通訊協定

Protocol 元素的 Name 屬性必須設定為 SAML2。 請將 OutputTokenFormat 元素設定為 SAML2

下列範例顯示 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>

輸入、輸出和保存宣告

InputClaimsOutputClaimsPersistClaims 元素是空的或不存在。 InutputClaimsTransformationsOutputClaimsTransformations 元素也不存在。

中繼資料

屬性 必要 描述
IssuerUri 出現在 SAML 回應中的簽發者名稱。 此值應該與信賴憑證者應用程式中所設定的名稱相同。
XmlSignatureAlgorithm No Azure AD B2C 用來簽署 SAML 判斷提示的方法。 可能的值:Sha256Sha384Sha512Sha1。 請確定您會使用相同的值來設定這兩端的簽章演算法。 僅使用您憑證支援的演算法。 若要設定 SAML 回應,請參閱註冊 SAML 應用程式的選項
TokenNotBeforeSkewInSeconds No 使用整數指定標示有效期開始時間的時間戳記偏斜。 此數值愈大,相對於信賴憑證者宣告的發出時間,有效期倒退的開始時間就愈多。 例如,當 TokenNotBeforeSkewInSeconds 設定為 60 秒時,如果權杖在 13:05:10 UTC 發出,則權杖有效期會從 13:04:10 UTC 開始。 預設值為 0。 最大值為 3600 秒 (一小時)。
TokenLifeTimeInSeconds No 指定 SAML 判斷提示的存留時間。 此值是參考前述 NotBefore 值得出的秒數。預設值為 300 秒 (5 分鐘)。

密碼編譯金鑰

CryptographicKeys 元素包含下列屬性:

屬性 必要 描述
MetadataSigning 用來簽署 SAML 中繼資料的 X509 憑證 (RSA 金鑰組)。 Azure AD B2C 會使用此金鑰來簽署中繼資料。
SamlMessageSigning 指定用來簽署 SAML 訊息的 X509 憑證 (RSA 金鑰組)。 Azure AD B2C 使用此金鑰來簽署傳送至信賴憑證者的回應 <samlp:Response>
SamlAssertionSigning No 指定 X509 憑證 (RSA 金鑰集),以用來簽署 SAML 權杖的 SAML 判斷提示 <saml:Assertion> 元素。 如果未提供,則會改用 SamlMessageSigning 密碼編譯金鑰。

工作階段管理

若要在信賴憑證者應用程式 (UseTechnicalProfileForSessionManagement 項目的屬性) 之間設定 Azure AD B2C SAML 工作階段,請參考 SamlSSOSessionProvider SSO 工作階段。

後續步驟

如需使用 SAML簽發者技術設定檔的範例,請參閱下列文章: