我想在Azure AD B2C中创建自定义策略。我在入门包(https://github.com/Azure-Samples/active-directory-b2c-custom-policy-starterpack)中找不到这样的示例。
我检查了此帖子Azure AD B2C Link to Sign Up Page (Not Sign In),如果我理解正确,则没有网址,我可以使用现有的自定义signup_signin策略直接在“注册”页面中结束。创建“ Sign v2”流程是可行的,但是我需要一个自定义流程,并从其中一个构建代码来处理代码,然后将其从starterpack放置到LocalAccounts示例中。
这是从“注册v2”流程中下载的UserJourney代码
<UserJourney Id="B2CSignUp_V2"> <OrchestrationSteps> <OrchestrationStep
Order="1" Type="ClaimsProviderSelection"
ContentDefinitionReferenceId="api.idpselections.signup">
<ClaimsProviderSelections> <ClaimsProviderSelection
TargetClaimsExchangeId="SignUpWithLogonEmailExchange" />
</ClaimsProviderSelections> </OrchestrationStep> </OrchestrationSteps>
</UserJourney>
我尝试将starterpack中的OrchestrationStep 1和2替换为此处的一个,但它不起作用。
答案 0 :(得分:2)
或者,您可以:
例如:
<OrchestrationStep Order="1" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="SignUpWithLogonEmailExchange" TechnicalProfileReferenceId="LocalAccountSignUpWithLogonEmail" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="2" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="AADUserReadWithObjectId" TechnicalProfileReferenceId="AAD-UserReadUsingObjectId" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="3" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
答案 1 :(得分:1)
在您的自定义策略中,在B2C_1A_TrustFrameworkBase.xml文件中,将用户旅程Id =“ SignUpOrSignIn”的第一个编排步骤替换为以下编排步骤,您将直接进入“注册”页面-
<OrchestrationStep Order="1" Type="ClaimsProviderSelection" ContentDefinitionReferenceId="api.idpselections.signup">
<ClaimsProviderSelections>
<ClaimsProviderSelection TargetClaimsExchangeId="SignUpWithLogonEmailExchange" />
</ClaimsProviderSelections>
</OrchestrationStep>