Azure AD 与 Azure AD B2C 与 Azure AD B2B

Posted

技术标签:

【中文标题】Azure AD 与 Azure AD B2C 与 Azure AD B2B【英文标题】:Azure AD vs Azure AD B2C vs Azure AD B2B 【发布时间】:2017-01-09 07:41:21 【问题描述】:

在 Azure AD B2C 和 Azure AD B2B 出现之前,我通常将我的应用程序添加到我们租户的 Azure AD 中,并且 office 365 用户可以使用他们的帐户 (SSO) 访问这些应用程序。

我不是专家,所以我需要查看代码并阅读确切的示例来理解这些概念。

我可以像通常使用 Azure AD 一样将 B2C 用于 SSO 吗?否则我如何/何时可以使用 B2C 和 B2B?

感谢并感谢各种建议。

【问题讨论】:

【参考方案1】:

Azure AD 是一种目录服务,旨在为组织及其在云中的身份管理需求提供服务。您针对 Azure AD 进行开发,您可以使用它来保护您的应用程序 - Azure AD 租户中的用户可以使用它。

您的应用程序针对使用 Azure AD (Office 365) 的特定组织或多个组织。

Azure AD B2B 只是 Azure AD 的一项功能。它允许组织向其他租户的用户授予对其应用程序和服务的访问权限。从您的应用程序的角度来看,没有任何变化。它仍然是同一个 Azure AD 应用程序。 Azure AD B2B 有一个 API,可用于创建流程以邀请来自另一个目录的用户,但它不会改变您的应用设计等。

Azure AD B2C 是另一种基于相同技术构建的服务,但功能与 Azure AD 不同。 Azure AD B2C 的目标是为消费者应用程序构建一个目录,用户可以在其中使用电子邮件 ID 或 Google、FB、MSA 等社交服务提供商(称为联合网关)进行注册。 Azure AD B2C 的目标是允许组织管理在所有应用程序之间共享的客户身份的单一目录,即单点登录。

Azure AD B2C 不针对组织用户,而是针对消费者。

2021 年 3 月更新:微软推出了一种新的解决方案,它融合了 B2B 和 B2C - 它被称为“外部身份”。

什么是“外部身份”: 它是一种机制,可让您在 Azure AD (corp) 租户中拥有外部用户、为他们自行注册并控制他们的流程。

为什么它是 Azure AD B2C 和 Azure AD 之间的合并 - 这些是外部用户,就像在 B2C 中一样,他们可以使用自己的用户名/电子邮件(不是公司域)和自助注册,但在 AAD 企业中租户。您还可以通过调用外部系统来扩展外部身份的身份验证流程,类似于在 AAD B2C 中。

我们来说说场景,申请学校:

内部用户 -> Azure AD,涵盖组织中的内部应用程序、员工等。用户在 Azure AD 中 外部用户,如来自其他学校的客座教师、合作伙伴 -> Azure AD B2B、Azure AD 中的客座用户 外部用户,但与任何组织无关,例如需要在特定应用程序中访问学生成绩的家长 -> 外部身份,他们可以自行注册,它们存在于特定应用程序的上下文中,您可以调用其他 API检查,例如,它们是否与注册期间 CRM 中的记录匹配 外部用户,对互联网开放,例如学生艺术比赛 -> Azure AD B2C。任何人都可以注册,学生、教师和员工都可以通过 Azure AD 访问它。

定价更新:有影响 Azure AD B2C 和外部身份的定价更新。

首先 - 价格是每月活跃用户 (MAU)。 MAU 是指有人在计费周期(月)内至少登录一次。 第二 - Azure AD B2C 或外部身份的前 50k 用户是免费的。因此,一个月内的前 5 万名用户是免费的 - 接下来是付费用户,因此一个月内 6 万名活跃用户的费用大约为 16 美元。

简单:

Azure AD - 适用于组织及其企业用户的应用程序 Azure AD B2C - 面向客户的应用,例如移动应用、购物门户等。

为了快速参考,我在博文中收集了这个:https://www.predicagroup.com/blog/azure-ad-b2b-b2c-puzzled-out/

有关外部身份的更新和视频格式的参考,我已将其收集在此视频中:https://www.youtube.com/watch?v=E6S1yJKTB7c

【讨论】:

【参考方案2】:

Here is the 'official' doc comparing B2B and B2C

【讨论】:

以上是关于Azure AD 与 Azure AD B2C 与 Azure AD B2B的主要内容,如果未能解决你的问题,请参考以下文章

Azure AD B2C 将用户流与应用一对一关联

Azure AD B2C:请求中的重定向 URI 与授权给 OAuth 客户端的不匹配

Azure AD B2C - 角色管理

Azure AD B2C OpenIdConnect ConfigurationManager 错误

Azure AD B2C:注销社交帐户(使用 OIDC 的 Azure AD)

Azure AD B2C 是不是允许组层次结构?