繁体   English   中英

在 .NET 中为 Azure AD 和 GSuite 用户配置 SSO

[英]Configure SSO for Azure AD and GSuite users in .NET

我正在使用 .NET 5 开发 Web 应用程序,我想使用 Azure AD(组织 Microsoft 帐户)和 G-Suite 帐户将 SSO 添加到应用程序。 当用户进入 Web 应用程序时,他应该可以选择使用他们的 Microsoft 组织帐户或他们的 G-Suite 帐户进行签名。 该应用程序将作为应用服务托管在 Azure 上。 此外,我还为我的组织设置了 Azure Active Directory,因此我可以创建应用程序注册。

我遇到的问题是对在我的 Web 应用程序中使用什么来实现这种身份验证缺乏了解。

Azure Active Directory 提供 B2C 和 B2B 选项来配置身份验证。 Azure AD B2B 似乎更倾向于让供应商/合作伙伴访问 Azure 中的应用程序和资源,可以通过在主要组织的 AD 中将用户添加为来宾来实现。 另一方面,Azure AD B2C 似乎更加以客户为中心,用户可以使用他们的社交帐户登录,也可以使用工作帐户登录。 我访问了 Microsoft Docs ( https://woodgrovedemo.com/Account/LogIn ) 上列出的 Woodgrove 演示解决方案,并尝试使用工作帐户登录 G-Suite 帐户。 但是,工作帐户必须是“Microsoft 帐户”,因此我无法对其进行签名。 我还尝试使用个人帐户选项登录,但这次它不允许我使用我组织的 Microsoft 帐户登录。

还有一些关于在 .NET 中配置身份验证的文章甚至没有像这样提到 Azure AD B2B 和 B2C: https : //docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-v2-aspnet -core-webapp?view=aspnetcore-5.0https://docs.microsoft.com/en-us/aspnet/core/security/authentication/social/google-logins?view=aspnetcore-5.0 在这些文章中,它展示了如何分别配置 Azure AD 和 Gmail 身份验证,并且似乎没有同时配置两者的选项。 此外,对于 Gmail,没有限制只允许 G-Suite 帐户。

如何在我的 .NET 5 Web 应用程序中使用 Azure AD 帐户(Microsoft 组织帐户/Office 365 帐户 - 不确定哪个术语正确)和 G-Suite 帐户配置 SSO 身份验证? 我是否需要使用 Azure AD B2B 或 Azure B2C 来实现这一点,或者我什至不需要这些?

我将不胜感激对此问题的任何帮助或建议。 提前致谢。

应用程序中的用户类型将决定您将要使用的内容:

客户- 使用 Azure Ad B2C 租户合作伙伴- 使用 Azure AD B2b 租户员工- 使用您的组织 Azure AD 租户(Azure 和 Office365 也使用)

请注意,没有什么可以阻止您在 asp.net 核心应用程序中使用多个 Idp,只需进行多个应用程序注册并将它们链接在一起,如下所示:

services.AddAuthentication().AddMicrosoftAccount(...).AddGoogleAccount(...)

Azure 应用服务提供了一种特殊情况,它带有 EasyAuth 模块中的构建。 它将为您注册应用程序,并且您还可以在那里链接多个 Idp(例如,您可以同时选择 AAD 和 google),并且无需任何代码或配置更改即可完成所有这些操作。

Azure 应用服务边栏选项卡中的两个设置是身份验证(经典) - 如果您只想进行身份验证。 身份验证- 如果您还想进行 google API 调用。

所以一定要先检查一下。

暂无
暂无

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

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