首页 > 解决方案 > Azure 是否提供任何以编程方式登录、重置密码或设备身份验证的功能,如 AWS Cognito?

问题描述

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

我寻求的用户流:

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

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

取自 Microsoft DevRadio 的 youtube 视频

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

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

  2. 交互式流程是标准流程,将显示默认 MS 页面和 MFA,但不可自定义

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

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

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

提前致谢

标签: phpamazon-web-servicesazureazure-active-directory

解决方案


在 Azure AD(不是 B2C)中自定义登录页面目前仅限于Branding update。但这仅在高级层中可用。

您可以在此处对反馈进行投票。

另一种选择是使用您自己的页面的资源所有者密码凭据,但 Microsoft 建议不要使用 ROPC 流。MFA 也不能在 ROPC 中工作。

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

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


推荐阅读