我正在使用Microsoft Azure 身份验证进行用户登录,
用户登录后,我的应用程序中有更改密码部分,用户在其中提供他的当前密码和新密码,所以我的查询是
是否有任何 API(图形(来获取该用户的当前密码或任何 API(图形(,我们通过它验证用户提供的当前密码
是否有任何其他情况可以帮助我验证用户在更改密码时提供的当前密码
或任何其他获取该用户当前密码的方法
谢谢
无法获取用户的当前密码。 这将是一个巨大的安全漏洞,并意味着他们以不安全的方式存储它们。
有一种方法可以像这样对用户进行身份验证,但如果用户具有例如 MFA,它将不起作用。
我建议采取不同的方法。 检查身份验证的年龄(id 令牌具有发布时间(。 如果时间超过 15 分钟,则要求用户使用 AAD 进行身份验证(提示 = 登录(。 如果您知道所有用户都使用它,则还可以要求对登录进行 MFA。 然后,他们应该能够提供一个新密码,然后可以使用图形 API 设置该密码。
因此,无需调用来检查当前密码,而是需要新的 ID 令牌并依赖 AAD 来检查用户凭据。
此外,用户应该能够按照文档中编写的内容自行更改它:https://learn.microsoft.com/en-us/azure/active-directory/user-help/active-directory-passwords-update-your-own-password