我在 Xamarin 应用程序中使用 Azure Active Directory B2C 进行登录/注册策略。
但是,当我单击页面上的忘记密码链接时,B2C 会重定向回应用程序,并显示一条错误消息。
Exception: `Microsoft.Identity.Client.MsalServiceException: 'AADB2C90118: The user has forgotten their password. Correlation ID: 1587ecf1-90f6-42cf-99ad-44b3bdf60eb5 Timestamp: 2017-12-14 13:21:58Z'
我可以捕获此异常,然后可以使用以下代码重置密码:
注意:_azureAdB2COptions
是一个模型类
if (ex.Message.Contains("AADB2C90118"))
{
try
{
var scopes = _azureAdB2COptions.Scopes.Split(' ');
AuthenticationResult ar = await _publicClientApplication.AcquireTokenAsync(scopes, (IUser)null, UIBehavior.SelectAccount, string.Empty, null, _azureAdB2COptions.AuthorityPasswordReset, uiParent);
}
catch (Exception exp)
{
await DisplayAlert("Status", "Password reset: " + exp.Message, "Close");
}
}
有人可以帮我捕获忘记密码的“点击事件”并重定向到密码重置策略吗?
最佳答案
您可以使用UI customization自定义页面的功能。为此,您可以使用 CSS 隐藏 B2C 添加的忘记密码链接,并创建自己的链接来发送忘记密码的授权请求。
future 的一项功能还允许您在这些自定义页面上运行 JavaScript。一旦可用,您将能够在客户端上连接点击和类似事件。
关于c# - 如何使用azure Active Directory b2c覆盖忘记密码的调用功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47814391/