【问题标题】:Azure Active Directory B2C as a MicroserviceAzure Active Directory B2C 作为微服务
【发布时间】:2020-08-18 05:48:01
【问题描述】:

我一直在考虑实现一个身份微服务(根据 eShopOnContainers 示例 ...https://github.com/dotnet-architecture/eShopOnContainers),我想知道是否有可能以您可以使用任何身份提供者的方式实现身份微服务您想要,包括 Active Directory B2C?

也许我想多了,但我要问的是,是否可以让身份微服务松散耦合到 AD B2C?是否有任何示例(例如在 GitHub 中)可以证明这一点?

提前致谢。

【问题讨论】:

  • 查看 IdentityService4 和 Auth0。
  • 我的意思是 IdentityServer4
  • 使用 Azure AD B2C,您可以拥有 N 个身份提供者,其中微服务是一种架构风格,将应用程序构建为松散耦合服务的集合。在您的用例中,一旦用户向身份提供者进行身份验证,就需要对数十个微服务进行身份验证。请查看此blog,了解 Azure AD B2C 的微服务身份验证
  • @AndyRefuerzo ...我已经查看了 IdentityServer4,但我无法解决 a) 如何处理用户注册和 b) 如果我在 ADB2C 中启用外部提供程序(例如Google、Facebook),IdentityServer4 还能处理吗?我知道 ID4 可以实现 Google、Facebook 等,但我希望这一切都由 ADB2C 处理。
  • @Raghavendra-MSFTIdentity ...如果我使用 ADB2C,是否可以通过 API 端点访问所有登录/注销/注册...所以我可以使用用于测试的邮递员?

标签: .net-core azure-active-directory microservices azure-ad-b2c


【解决方案1】:

(从 cmets 转移到 Answer)

使用 Azure AD B2C,您可以拥有 N 个身份提供者,其中微服务是一种架构风格,将应用程序构建为松散耦合服务的集合。在这个用例中,一旦用户向身份提供者进行身份验证,就需要对数十个微服务进行身份验证。请查看此blog,了解 Azure AD B2C 的微服务身份验证

【讨论】:

    【解决方案2】:

    经过大量阅读和研究,我最终直接使用 AD B2C 来验证我的客户端应用程序以及通过 Azure API 管理器公开的 API 端点。我的微服务使用其他形式的身份验证,因为它们只能从 API Manager 访问(不公开可见)。当用户注册/登录时,我能够使用自定义策略来实现我自己的逻辑。

    如果您希望获得更精细的控制和配置,Identity Server 4 看起来是一个不错的选择......而且我将来可能最终会使用这个解决方案。

    但就目前而言,AD B2C 满足了我的所有需求,因此我很乐意将其用作微服务本身。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-06-26
      • 2016-08-13
      • 1970-01-01
      • 1970-01-01
      • 2017-01-03
      • 2016-04-17
      • 1970-01-01
      相关资源
      最近更新 更多