我有密码重置的自定义政策。 Azure B2C上的自定义策略入门包附带的那个。我希望它输出我已定义的两个自定义属性。我使用自定义注册/登录和edif配置文件使这些属性工作,我可以在执行这些策略后在jwt中看到它们。但我不知道如何使用密码重置策略输出它们。可能吗?或者用户必须登录才能使其正常工作?
提前致谢!
答案 0 :(得分:3)
您可以通过向" PasswordReset"添加新的业务流程步骤来实现此目的。密码由" LocalAccountWritePasswordUsingObjectId"保存后的用户旅程第4步和JWT发布之前的技术概况由JwtIssuer" JwtIssuer"第3步的技术概况。
这个新的业务流程步骤通过调用" AAD-UserReadUsingObjectId"来读取用户,包括自定义声明。技术简介:
(我假设您已将自定义声明retryWithLast
添加到此技术配置文件中。)
<OutputClaim />
然后,您必须将自定义声明<UserJourney Id="PasswordReset">
<OrchestrationSteps>
<OrchestrationStep Order="1" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="PasswordResetUsingEmailAddressExchange" TechnicalProfileReferenceId="LocalAccountDiscoveryUsingEmailAddress" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="2" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="NewCredentials" TechnicalProfileReferenceId="LocalAccountWritePasswordUsingObjectId" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="3" Type="ClaimsExchange">
<ClaimsExchanges>
<ClaimsExchange Id="AADUserReadWithObjectId" TechnicalProfileReferenceId="AAD-UserReadUsingObjectId" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="4" Type="SendClaims" CpimIssuerTechnicalProfileReferenceId="JwtIssuer" />
</OrchestrationSteps>
<ClientDefinition ReferenceId="DefaultWeb" />
</UserJourney>
添加到&#34; PasswordReset&#34;依赖党政策:
<OutputClaim />