在 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>
輸入、輸出和保存宣告
InputClaims、OutputClaims 和 PersistClaims 元素是空的或不存在。 InutputClaimsTransformations 和 OutputClaimsTransformations 元素也不存在。
中繼資料
屬性 | 必要 | 描述 |
---|---|---|
IssuerUri | 否 | 出現在 SAML 回應中的簽發者名稱。 此值應該與信賴憑證者應用程式中所設定的名稱相同。 |
XmlSignatureAlgorithm | No | Azure AD B2C 用來簽署 SAML 判斷提示的方法。 可能的值:Sha256 、Sha384 、Sha512 或 Sha1 。 請確定您會使用相同的值來設定這兩端的簽章演算法。 僅使用您憑證支援的演算法。 若要設定 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簽發者技術設定檔的範例,請參閱下列文章: