Azure 是否提供像 AWS Cognito 一样以编程方式登录、重置密码或设备进行身份验证的功能?

med*_*iev 5 php azure amazon-web-services azure-active-directory

我有一个 Web 应用程序,在 Azure AD 中有一组用户,我想通过用户名/密码对其进行身份验证,但使用我自己风格的登录屏幕自定义解决方案,并具有类似于 AWS Cognito 具有 OTP/ 的设备身份验证艺术硕士。

我寻求的用户流程:

  1. 用户访问我的网站
  2. 我提供自己的登录表单
  3. 理论上,该表单将使用 AWS Cognito 提供的相同功能以编程方式登录,无需 Microsoft 流程或重定向
  4. 我使用 Azure 功能/API 或我自己的功能/API 进行 MFA 设备身份验证

因此,查看提供的流程列表:

摘自 Microsoft DevRadio 的 YouTube 视频

我可以使用哪些可能的流程来完成我的需要?

  1. 用户名/密码“密码”授予仅在 MFA 被禁用的情况下才起作用,因此我可以设想的一种情况是可以将其与我自己执行 MFA 的代码(并且可能使用 MS Authenticator)相结合。它似乎也不适用于重置密码。

  2. 交互流程是标准流程,会显示默认的 MS 页面以及 MFA,但不可自定义

  3. 是否可以使用自定义流程或设备代码流程,并且这是否仅限于 B2C 租户?

  4. 是否可以将 Azure AD 设置为联合身份并连接到 Cognito 的方法来执行此操作?我认为不是,因为身份验证需要针对原始身份提供商,而且似乎只能反向工作(认知用户可以访问 Azure)。

似乎唯一可能的解决方案是使用 Azure 的 ROPC 与用户名/密码密码授予 API 端点结合我自己的设备身份验证,但这不会考虑密码重置,也不会提供任何 api 设备身份验证方法?

提前致谢

kri*_*shg 4

Azure AD(非 B2C)中的自定义登录页面当前仅限于品牌更新。但这仅适用于高级级别。

您可以在这里对反馈进行投票。

另一种选择是使用您自己的页面的资源所有者密码凭据,但 Microsoft 建议不要使用 ROPC 流。此外,MFA 不适用于 ROPC。

当您说“用户名/密码“密码”授予仅在启用 MFA 时才有效”时,不确定我是否可以遵循!你可以解释吗?

并且,自定义用户流程仅限于 B2C。https://learn.microsoft.com/azure/active-directory-b2c/