我的目标是通过图形API使用我选择的密码创建一个Azure AD B2C用户,然后让该用户在首次登录后经历密码重置的经历。
首先,如何使用户进入一种状态,该状态将在下次登录时触发密码重置?如果我在Azure中进入reset password,然后在登录时使用生成的密码,则会收到“此密码已过期”错误。假设这是密码政策问题,我一直在使用Graph API,例如:
user.PasswordPolicies = "DisablePasswordExpiration,DisableStrongPassword";
user.PasswordProfile = new PasswordProfile
{
ForceChangePasswordNextSignIn = true,
};
我的Graph API访问成功,但仍然无法解决该错误:
“此密码已过期”
第二个问题是,我如何准确地设置实现此目标的用户流程?我希望使用屏幕密码重置体验,而不是基于电子邮件的体验。
最有希望的方向似乎是从“用户流”切换到“自定义策略”,其中有一个如何实现我的目标的示例:https://github.com/azure-ad-b2c/samples/tree/master/policies/force-password-reset-first-logon。
我的问题是-这只能通过“自定义政策”方法来实现吗?
答案 0 :(得分:1)
根据您链接的示例,自定义策略是正确的解决方案。或使用User Flow v1流,它们非常有限,它们支持内置的<!DOCTYPE html>
<html>
<head>
<title>Noticias Cidade - Home</title>
<link rel="stylesheet" href="folha_css.css">
</head>
<body class="Home">
<div id="cabecalho">
<img url="https://i.imgur.com/8EhUFuZ.png" id="logo">
<img url="https://i.imgur.com/3ZjPU9A.png" id="topo">
<ul id="teste">
<li>
<a id="Home" href="index.html">Home</a>
</li>
<li>
<a id="Brasil" href="Brasil.html">Brasil</a>
</li>
<li>
<a id="Internacional" href="Internacional.html">Internacional</a>
</li>
<li>
<a id="Economia" href="Economia.html">Economia</a>
</li>
<li>
<a id="Saude" href="Saude.html">Saude</a>
</li>
<li>
<a id="Ciencia" href="Ciencia.html">Ciencia</a>
</li>
</ul>>
<div class="container">
<div class="coluna-1">
</div>
<div class="coluna-2">
</div>
<div class="coluna-3">
</div>
</div>
</div>
</body>
</html>
标志。