重要
自 2025 年 5 月 1 日起,Azure AD B2C 将不再可供新客户购买。 在我们的常见问题解答中了解详细信息。
备注
在 Azure Active Directory B2C 中,自定义策略 主要用于解决复杂场景。 对于大多数场景,我们建议您使用内置的用户流。 如果未这样做,请通过 Active Directory B2C 中的自定义策略入门来了解自定义策略初学者包。
自定义策略表示为一个或多个 XML 格式的文件,这些文件在分层链中相互引用。 XML 元素定义策略的元素,例如声明架构、声明转换、内容定义、声明提供程序、技术配置文件、用户旅程和业务流程步骤。 每个策略文件都在策略文件的顶级 TrustFrameworkPolicy 元素中定义。
<TrustFrameworkPolicy
xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="https://www.w3.org/2001/XMLSchema"
xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06"
PolicySchemaVersion="0.3.0.0"
TenantId="yourtenant.partner.onmschina.cn"
PolicyId="B2C_1A_TrustFrameworkBase"
PublicPolicyUri="http://yourtenant.partner.onmschina.cn/B2C_1A_TrustFrameworkBase">
...
TrustFrameworkPolicy 元素包含以下属性:
特征 | 必选 | DESCRIPTION |
---|---|---|
PolicySchemaVersion | 是的 | 用于执行策略的架构版本。 该值必须是“0.3.0.0 ” |
TenantObjectId | 否 | Azure Active Directory B2C(Azure AD B2C)租户的唯一对象标识符。 |
租户ID | 是的 | 此策略所属的租户的唯一标识符。 |
`PolicyId` | 是的 | 策略的唯一标识符。 此标识符必须以B2C_1A_为前缀 |
PublicPolicyUri | 是的 | 策略的 URI,该 URI 是租户 ID 和策略 ID 的组合。 |
DeploymentMode | 否 | 可能的值:Production 或 Development 。
Production 是默认值。 使用此属性调试策略。 有关详细信息,请参阅 收集日志。 |
UserJourneyRecorderEndpoint | 否 | 用于日志记录的终结点。 如果属性存在,则必须将 urn:journeyrecorder:applicationinsights 该值设置为。 有关详细信息,请参阅 收集日志。 |
以下示例演示如何指定 TrustFrameworkPolicy 元素:
<TrustFrameworkPolicy
xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="https://www.w3.org/2001/XMLSchema"
xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06"
PolicySchemaVersion="0.3.0.0"
TenantId="yourtenant.partner.onmschina.cn"
PolicyId="B2C_1A_TrustFrameworkBase"
PublicPolicyUri="http://yourtenant.partner.onmschina.cn/B2C_1A_TrustFrameworkBase">
TrustFrameworkPolicy 元素包含以下元素:
元素 | 出现次数 | DESCRIPTION |
---|---|---|
BasePolicy | 0:1 | 基本策略的标识符。 |
BuildingBlocks | 0:1 | 策略的构建基块。 |
ClaimsProviders | 0:1 | 声明提供程序的集合。 |
UserJourneys | 0:1 | 用户旅程的集合。 |
SubJourneys | 0:1 | 子旅程的集合。 |
RelyingParty | 0:1 | 信赖方策略的定义。 |
若要从另一个策略继承策略,必须在策略文件的 TrustFrameworkPolicy 元素下声明 BasePolicy 元素。 BasePolicy 元素是对从中派生此策略的基本策略的引用。
出现 次数是指父元素可以或必须具有的子元素数:
- 0:1 表示父元素具有零个或一个子元素。
- 1:1 表示父元素必须具有一个子元素。
- 1:n 表示父元素必须具有一个或多个子元素。
- 0:n 表示父元素可以有零个或任意数量的元素。
BasePolicy 元素包含以下元素:
元素 | 出现次数 | DESCRIPTION |
---|---|---|
租户ID | 1:1 | Azure AD B2C 租户的标识符。 |
`PolicyId` | 1:1 | 父策略的标识符。 |
以下示例演示如何指定基本策略。 此 B2C_1A_TrustFrameworkExtensions 策略派生自 B2C_1A_TrustFrameworkBase 策略。
<TrustFrameworkPolicy
xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="https://www.w3.org/2001/XMLSchema"
xmlns="http://schemas.microsoft.com/online/cpim/schemas/2013/06"
PolicySchemaVersion="0.3.0.0"
TenantId="yourtenant.partner.onmschina.cn"
PolicyId="B2C_1A_TrustFrameworkExtensions"
PublicPolicyUri="http://yourtenant.partner.onmschina.cn/B2C_1A_TrustFrameworkExtensions">
<BasePolicy>
<TenantId>yourtenant.partner.onmschina.cn</TenantId>
<PolicyId>B2C_1A_TrustFrameworkBase</PolicyId>
</BasePolicy>
...
</TrustFrameworkPolicy>