繁体   English   中英

Azure AD 认证仅适用于部分应用程序

[英]Azure AD authentication for only a part of the application

是否可以仅对部分应用程序使用 Azure AD 身份验证?

我在一所学校工作,我们的团队正在创建一个 web 应用程序,其中一些用户需要使用他们的工作/学校帐户登录。 其他用户可以创建个人帐户并使用该帐户登录。 他们将使用应用程序的不同部分。

用户应该看到的第一件事是一个页面,他可以在其中选择他是什么类型的用户。 如果用户是“外部用户”,他可以使用他的个人帐户登录。 如果用户是“老师”或“学生”,他可以通过 Azure AD 使用他的工作/学校帐户登录。

像这样的东西。

在此处输入图像描述

这就是品牌下 Azure 门户网站上的“主页 URL”吗? 当我填写此信息时,该应用程序仍会立即显示 Azure AD 登录页面。

还是我们需要使用 Azure AD B2C? 还是仅适用于 Google、Facebook 等社交身份?

您可以使用 Azure AD 和 OpenID 身份验证流程来实现此目的。

此问题中的更多详细信息Mixing Azure AD 身份验证与 Forms 身份验证

这就是品牌下 Azure 门户网站上的“主页 URL”吗?

您可以在您的应用程序中注册多种身份验证方案,一种是使用本地数据库进行身份验证,一种是使用 Azure AD 进行身份验证。 您应该在您的应用程序中使登录页面不在 Azure 侧,并具有触发不同方案的按钮,例如 AAD 方案:

if (!User.Identity.IsAuthenticated)
{
     return Challenge(new AuthenticationProperties() { RedirectUri = "/" } , AzureADDefaults.AuthenticationScheme);
 }   

最简单的方法是使用 ASP.NET Core Identity 并添加 Azure AD 身份验证作为外部登录。 是代码示例。

对于授权部分,您可以在本地数据库中管理用户和角色,因为默认情况下,在 AAD 登录后,身份框架将帮助在数据库中创建本地用户,但也可以根据您的要求进行自定义。 或者您可以直接创建策略并检查用户的声明,从 AAD 或本地数据库登录的用户应该有不同的声明。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM