php - Azure 是否提供任何以编程方式登录、重置密码或设备身份验证的功能,如 AWS Cognito?
问题描述
我有一个 Web 应用程序,该应用程序在 Azure AD 中有一组用户,我想通过用户名/密码对其进行身份验证,但使用我自己样式的登录屏幕自定义解决方案,并具有类似于 AWS Cognito 具有 OTP/ 的设备身份验证外交部。
我寻求的用户流:
- 用户访问我的网站
- 我提供自己的登录表单
- 理论上,所述表单将使用 AWS Cognito 提供的相同功能,以编程方式登录,无需 Microsoft 流程或重定向
- 无论是使用 Azure 功能/API 还是我自己的,我都会为 MFA 进行设备身份验证
因此,查看提供的流程列表:
我可以使用哪些可能的流程来完成我需要的工作?
用户名/密码“密码”授权仅在 MFA 被禁用时才有效,因此我可以设想的一种情况是将其与我自己的执行 MFA 的代码(并且可能使用 MS Authenticator)结合起来。它似乎也不适用于重置密码。
交互式流程是标准流程,将显示默认 MS 页面和 MFA,但不可自定义
是否可以使用自定义流程或设备代码流程,这是否仅限于 B2C 租户?
是否可以将 Azure AD 设置为联合身份并挂钩到 Cognito 的方法来执行此操作?我认为不是因为身份验证需要针对原始身份提供者,而且它似乎只能反向工作(认知用户可以访问 Azure)。
似乎唯一可能的解决方案是将 Azure 的 ROPC 与用户名/密码密码授予 API 端点结合使用我自己的设备身份验证,但这不会考虑密码重置,也不会提供任何 api 设备身份验证方法?
提前致谢
解决方案
在 Azure AD(不是 B2C)中自定义登录页面目前仅限于Branding update。但这仅在高级层中可用。
您可以在此处对反馈进行投票。
另一种选择是使用您自己的页面的资源所有者密码凭据,但 Microsoft 建议不要使用 ROPC 流。MFA 也不能在 ROPC 中工作。
当您说“用户名/密码“密码”授权仅在启用 MFA 时有效”,不确定我是否可以遵循!你可以解释吗?
而且,自定义用户流仅限于 B2C。https://docs.microsoft.com/azure/active-directory-b2c/
推荐阅读
- arrays - 逐行解析文本文件并在匹配时提取字符串
- tfs - 当 Visual Studio 测试任务尝试发布结果时,TFS 2017 卡住
- reactjs - 仅在开发环境中使用 redux-persist
- json - 解组动态 JSON,忽略已知字段
- javascript - 如何在 ejs 和页面脚本之间共享变量
- typo3 - TYPO3 8.7.13 - getArguments() 返回无响应
- azure - Azure 数据目录:资产和用户信息框不见了,如何添加回来?
- vim - 按文件过滤 vim 的 quickfix 窗口
- mysql - 使用 Alteryx 将表从一个数据库复制到另一个数据库
- r - 在 phytools 中使用 plotBranchbyTrait() 时,'use.edge.length = FALSE' 似乎不起作用