Azure AD B2C-恢复您的帐户与重置密码不同

时间:2019-04-04 21:40:17

标签: azure-active-directory azure-ad-b2c msal

我正在使用Azure AD B2C(和MSAL),并且已注册/登录,启用了编辑配置文件和密码重置策略并可以正常工作。

但是,如果您在“编辑配置文件”工作流程中选择“恢复帐户”,我注意到一个异常,返回的流程与链接到登录流程的“重置密码”策略不同。

当用户输入身份信息和验证码时,即使您在登录时选择了密码,它也会返回错误消息“您的组织尚未设置密码重置策略”。

这是我设置密码重置的方式

     AuthenticationResult authResult = await ADB2CClient.AcquireTokenAsync(Scopes, GetUserByPolicy(accounts, EditProfilePolicy), UIBehavior.NoPrompt, string.Empty, null, AuthorityEditProfile, App.UiParent);

这就是我设置“编辑配置文件”的方式

    authenticationResult = await ADB2CClient.AcquireTokenAsync(Scopes, firstAccount, UIBehavior.SelectAccount, string.Empty, null, AuthorityResetPassword, App.UiParent);

但是,如前所述,“编辑配置文件”上的“恢复您的帐户”选项显然会触发不同的流程,而我不清楚如何在“策略”中进行说明?

1 个答案:

答案 0 :(得分:0)

我想您在获取身份验证结果时传递了不同的策略名称。例如,如果使用密码重置策略,则传递“ AuthorityEditProfile ”以获取authentciationResult;如果使用编辑配置文件,则传递“ AuthorityResetPassword ”。

您可以更改它,然后再试一次。

对于编辑配置文件:

AuthenticationResult authResult =等待ADB2CClient.AcquireTokenAsync(Scopes,GetUserByPolicy(accounts,EditProfilePolicy),UIBehavior.NoPrompt,string.Empty,null, AuthorityEditProfile ,App.UiParent);

密码重置:

authenticationResult =等待ADB2CClient.AcquireTokenAsync(范围,firstAccount,UIBehavior.SelectAccount,string.Empty,null, AuthorityResetPassword ,App.UiParent);