Azure AD B2C 在迁移时更改密码

Azure AD B2C change password on migration

我正从 Asp.Net 身份管理转移到 Azure AD B2C。我通过 Graph API 添加了现有用户,并在阶段中为用户提供了一些随机密码。是否可以使用用户的旧密码(我无法从我的数据库中获取现有密码)。我记得在 Azure AD B2C 的一次谈话中,他们通过回溯请求获取密码,但我不太清楚。

以最小的密码摩擦迁移到 Azure AD B2C 的最佳策略是什么?

我认为您无法从 ASP.NET 身份管理中获取密码,因为密码是经过哈希处理的。

作为一种迁移策略,您可以在成功登录后从 ASP.NET 身份管理中现有的身份验证逻辑后端创建 Azure B2C 用户,因为用户正在发送他们的用户名和密码进行身份验证。移动所有用户后,您可以转移到 Azure B2C 登录。

我使用了此处描述的方法 (Just-In-Time migration source code)

  1. 使用自动生成的密码预迁移用户
  2. 创建 API 以检查旧用户存储 (Microsoft Docs) 中的用户凭据
  3. 在登录策略中添加对技术配置文件的 API 调用,这样每次用户尝试登录时,系统都会根据旧用户存储 (Microsoft Docs)
  4. 添加 API 如果旧凭据得到验证 () 或冒充用户(如果您将自动生成的密码安全地存储在安全位置)更改密码的权限
  5. 您的用户凭据已更新'just-in-time'因此您的用户不会即时注意到此更改