【问题标题】:How to authenticate corporate users with Azure AD, and also external users in a single page application?如何使用 Azure AD 对企业用户以及单页应用程序中的外部用户进行身份验证?
【发布时间】:2020-05-14 23:04:28
【问题描述】:

我们有使用 Azure AD 进行身份验证的单页应用程序(Angular 前端和 .NET Core Web API)。前端和 Web API 都注册在同一个租户中,WebUI 有权调用 Web API。这个 Web API 也使用了一些其他的内部 Web API。

我们在应用中有一项新要求,允许需要先注册的外部用户访问应用的某些区域。所以现在应用程序需要对现有 AD 用户和外部用户进行身份验证。

我的问题是这是否可以在单个应用程序中实现?如果是,推荐的认证企业和外部用户的方法是什么?

【问题讨论】:

  • 嗨 Rumi,您使用的是自定义策略还是流程?
  • Ermm 它的标准 Azure 广告集成和 UI 应用正在使用隐式授权流。我还没有开始使用 B2C,但如果这可以帮助我们使用任何自定义策略对企业广告用户和外部用户进行身份验证,我可以考虑使用它
  • 外部用户应存储在 B2C 中,除非有充分的理由将其存储在 B2B 中。我们使用的是 B2C 策略,其中 Azure AD 作为添加的 IDP。当用户进入登录页面时,他们可以选择使用普通帐户登录,也可以选择使用 Azure Ad 登录的按钮。我们使用的另一种方法是 B2C 中的 Home Realm Discovery 页面,它检测 AD 帐户并重定向它们。
  • 您能否提供一个链接,我可以在其中找到更多使用 azure 广告添加 b2c 政策的信息?谢谢
  • 好的,这里有一个链接:docs.microsoft.com/en-us/azure/active-directory-b2c/…也欢迎您给我留言。

标签: asp.net-web-api azure-active-directory azure-ad-b2c


【解决方案1】:

由于您需要使用注册功能,您将需要使用 Azure AD B2C,它支持多个提供商以获得有效的用户流。

例如,如果您希望 azure 广告用户和外部用户使用您的应用程序。您可以选择 OpenID Connect(Azure AD) 和本地帐户(或其他社交帐户)。在登录页面,用户可以选择注册或使用Azure AD账号直接登录。

步骤:

只需将您的 Wep 应用程序和 api 应用程序保留在现有租户中即可。您需要创建 Azure AD B2C 租户,创建用户注册/登录流程,为用户流程配置提供程序。

参考:

Create B2C tenant

Create user flow

Add identity providers

Configure your original Azure AD application to the identity provider

【讨论】:

  • 这很有帮助,对于迟到的回复深表歉意。您所说的是keep 同一租户中的现有 Web 应用程序和 api 应用程序,但是您还说将原始现有 Web 应用程序移动/配置到新的 b2c 租户中并将广告添加为身份提供者?这是否意味着将 Web 应用程序迁移到新租户中
  • @rumi 我说'只需将您的 Wep 应用程序和 api 应用程序保留在现有租户中即可。您需要创建 Azure AD B2C 租户,创建用户注册/登录流程,为用户流程配置提供程序。无需将原有的现有 webapp 移动/配置到新租户中。
  • 我创建了一个新的 b2c 租户并配置了用户注册/登录流程并配置了一个开放的 Id Connect 提供程序以使用 Azure Ad,但现在我应该如何在现有租户中配置我现有的应用程序以使用它新租户进行身份验证?您能否分享另一个链接或教程更详细地解释这一点?
猜你喜欢
  • 2017-02-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-14
  • 1970-01-01
  • 1970-01-01
  • 2017-11-10
  • 1970-01-01
相关资源
最近更新 更多