在网站中集成Azure多因素身份验证以对其用户进行身份验证

在网站中集成Azure多因素身份验证以对其用户进行身份验证,azure,azure-active-directory,multi-factor-authentication,Azure,Azure Active Directory,Multi Factor Authentication,我有一个网站(内置PHP),web服务器的操作系统是AWS EC2的Linux(Ubuntu) 我想在网站中集成Azure MFA,以使用2FA(双因素身份验证)对用户进行身份验证 我使用NodeJS检查了这段代码 这是来自Azure的示例应用程序,其中用户可以使用Azure凭据登录示例应用程序,并可以从Azure获取配置文件信息 这对我来说很好,但是: 1) 它需要先在Active Directory(AD)中添加一个用户,所以我可以直接验证用户身份,而不必在Azure AD上注册吗? 另外,

我有一个网站(内置PHP),web服务器的操作系统是AWS EC2的Linux(Ubuntu)

我想在网站中集成Azure MFA,以使用2FA(双因素身份验证)对用户进行身份验证

我使用NodeJS检查了这段代码

这是来自Azure的示例应用程序,其中用户可以使用Azure凭据登录示例应用程序,并可以从Azure获取配置文件信息

这对我来说很好,但是:

1) 它需要先在Active Directory(AD)中添加一个用户,所以我可以直接验证用户身份,而不必在Azure AD上注册吗? 另外,我在网站上有超过3000个活跃用户,我需要全部注册吗

2) 在身份验证过程中,用户在Microsoft站点上完全重定向,是否有任何方法不重定向,或者使用一些UI内容(使用弹出窗口)

任何帮助或建议都会对我有帮助

提前感谢,,
亨利

1。它需要先在Active Directory(AD)中添加一个用户?

是的,你说得对!首先,您需要在Azure portal上添加您的用户,然后他们需要进行身份验证,同时他们将尝试访问每个操作中的任何内容

2。我可以不在Azure AD上注册而直接对用户进行身份验证吗?

不,你不能!对于身份验证,您需要首先在azure门户上定义一个用户

3。我有超过3000个活跃用户在网站上,我需要吗 全部注册?

由于您的web端有数千个用户,您可以在批量操作中添加它们。 为了避免手动注册,您可以使用命令添加广告。如果将所有用户添加到一个文件中,则可以通过以下脚本轻松地添加它们:

拥有所有用户CSV文件后,您可以运行以下格式的
New AzureADUser
命令

您可以在参考文档中查看类似的详细信息

3。用户在身份验证期间在Microsoft站点上完全重定向 进程,有没有不重定向或使用某些UI的方法 填充(使用弹出窗口)?

由于您在此流中使用协议进行身份验证,在身份验证过程中无法停止Microsoft站点上的重定向。但是有一种方法 使用

建议不要使用资源所有者密码凭据 在这种情况下,流动ROPC。如果用户 不信任您的web应用程序

资源所有者密码凭据(即用户名和密码) 密码)可直接用作授权,以获得 访问令牌。仅当存在高风险时才应使用凭据 资源所有者和客户之间的信任度(例如 客户端是设备操作系统的一部分或高度特权 应用程序),以及其他授权授予类型不可用时 可用(如授权码)

当我们选择OAuth 2 Authorization Framework的交互流时,需要重定向到身份提供者,因为这就是它的工作方式


希望它能帮助你了解你的工作。谢谢大家!

看看这个答案,如果你还有任何疑问,请告诉我。感谢您的回答,我有一个关于用户的问题,假设我的网站上有一个用户的电子邮件
a@a.com
,我可以在广告中注册具有相同电子邮件id的用户吗?这样我可以链接东西,我应该在哪个字段存储电子邮件?在Azure Active Directory(Azure AD)B2C中,您可以使用不同类型的帐户。Azure Active Directory、Azure Active Directory B2B和Azure Active Directory B2C在可使用的用户帐户类型中共享您可以在此处查看| | | |您也可以查看| |只需确保哪一个符合您的要求即可。如果您还有任何疑问,请告诉我。谢谢,非常感谢,我将检查有关Azure B2C的信息,非常感谢,如果您还有任何疑问,请询问。快乐编码!是否有任何SDK可用于实现ROPC?@HerryShawn我想它不需要任何SDK。它的实现非常简单,易于理解。这是一个git hub示例| | | |在实施ROPC之前,我建议您阅读此官方文档| | | | |特别是重要注意事项。不过,如果您需要代码示例,请让我知道我会更新我的答案。谢谢。Hy,@Md Farid,我检查了B2C,看起来B2C是适合我的要求的东西,但是我只能通过B2C实现登录过程吗?这意味着你想定制你的B2C登录页面?是的,我想定制登录页面来隐藏/显示一些功能,另外,请让我知道是否有一些API添加新用户的广告?
foreach($user in import-csv "E:\userinfo.csv") 
{ 
     Write-Host "Processing item with.. UserName="$user.DisplayName

   # Make use of variables like $user.DisplayName and so on in your commands here..
   # New-AzureADUser -DisplayName $user.DisplayName ... and so on..
}