Azure AD B2C租户和普通的Azure AD租户有什么区别?

34

我看到很多人对于Azure AD B2C租户能做什么以及与普通Azure AD租户的区别非常困惑。主要问题如下:

  • Azure AD B2C租户和普通Azure AD租户有什么区别?

  • 既然我可以在B2C租户中使用一些功能,例如Azure AD Connect,在B2C租户中购买新订阅并使用等等,那么我应该使用这些功能吗?

  • 为什么在B2C租户中给我这些功能? 为什么不在普通Azure AD租户中使用B2C?

1个回答

41

Azure AD B2C租户只是用于使用Azure AD B2C功能的。 Azure AD B2C功能(而不是租户)就像普通Azure AD中的VM一样,只是一种资源,需要您切换到B2C租户才能使用。我们不应在B2C租户中使用与Azure AD B2C无关的其他功能。

B2C租户和普通Azure AD租户之间的区别

最重要的区别是用户管理。

  • 对于普通Azure AD,用户数据(不严格)存储在“Users”中,在Azure Active Directory上的Users选项卡中可以看到它。但是,对于B2C租户,用户数据存储在“Users”和B2C扩展应用程序中,您可以在应用程序注册中看到它。

  • 对于普通Azure AD,用户在一个组织中管理,这些用户通常指一个组织中的员工。然而,在B2C租户中,这些用户都是客户,可以访问您的B2C应用程序。

  • 在普通的Azure AD中,可以通过点击“新用户”按钮创建用户,此类用户为租户中的成员。您还可以通过Azure AD B2B邀请外部用户,这种类型的邀请用户是来宾用户。对于B2C租户,所有用户都是租户成员。但是,用户帐户的类型是本地帐户和社交帐户。本地帐户可以通过注册或使用Azure AD Graph API创建。不能像普通的Azure AD一样单击“新用户”来创建它。社交帐户只能通过注册创建。

总体而言,普通的Azure AD租户是基于员工的,租户代表一个组织。Azure AD B2C租户表示与依赖方应用程序一起使用的身份集合。每个人都可以注册该应用程序并访问它。此外,您可以通过自定义策略使AAD租户成为B2C租户的社交帐户身份提供者。您可以参考此文档以实现此目标。

既然我甚至可以在B2C租户中使用一些功能,例如Azure AD Connect,在B2C租户中购买新订阅并使用它等等,那么我应该使用这些功能吗?

答案是否定的,您不应该这样做。即使您可以在B2C租户中使用这些功能,我们不支持或建议您这样做。这是因为在使用这些功能时可能会遇到太多问题,而且B2C租户并未设计用于这些功能。

为什么在B2C租户中给我这些功能?为什么不只是在普通的Azure AD租户中使用B2C?

  • 首先,我们需要通过不同的租户来区分基于员工的用户和客户。基于员工的用户应该严格管理,并在受控范围内进行管理。但是,客户是公开的,任何人都可以访问您的应用资源。

  • 其次,2C的身份验证逻辑与2B并没有不同。 B2C需要新的身份验证端点,这些端点与普通Azure AD不同。此外,B2C租户需要使用自定义的Identity Experience Framework以实现更友好的客户用户体验。这就是为什么我们不能在普通的Azure AD租户中使用B2C的原因。

  • 第三,B2C用户可能有数百万甚至更多的用户,而AAD组织用户的数量应该比B2C用户少得多。B2C的后端引擎不同于AAD,所以它们使用不同的硬件。

然而,B2C租户是基于普通Azure AD开发的,因此它可以使用其他与AAD相关的功能进行管理。因此,您也可以在B2C租户中看到与普通Azure AD相同的用户界面和其他功能。

总之,您可以将Azure AD B2C视为需要切换目录来使用的功能。如果您想使用其他功能,请转到普通的Azure Active Directory。

参考文献:

Azure AD B2C租户和普通Azure AD租户有什么区别?

Azure AD B2C: 常见问题解答 (FAQ)

比较Azure Active Directory中的B2B协作和B2C

Azure AD、Azure AD B2B、Azure AD B2C之间的区别。

如何重置Azure AD B2C密码


3
嗨@GauravMantri,我很高兴我的问答对您有所帮助。在使用Azure AD B2C时,我看到了许多社区成员的困惑。我希望我们能让Azure AD B2C更清晰、更易于使用。 - Wayne Yang
描述清楚了AD和ADB2C之间的区别。我应该在公司的租户中部署将使用ADB2C功能的应用程序还是在ADB2C租户中?这会有什么区别吗? - Fotios Tragopoulos
1
@FotiosTragopoulos 这取决于你的应用场景。如果你的应用用户是使用社交身份登录你的应用程序的消费者用户,例如 Google、Facebook,那么你需要在 AAD B2C 租户中注册你的应用程序。但对于你的应用服务、服务器,你应该将它们部署在你的普通 AAD 租户中。 - Wayne Yang
非常感谢您的回复。我从微软得到了这个答案:https://dev59.com/UHANtIcB2Jgan1znyqi-#7CjtnYgBc1ULPQZFy9L4 - Fotios Tragopoulos
1
@WayneYang 完全同意你的观点,现在加入“B2C租户”,这三个术语极其令人困惑,可悲的是微软甚至没有一个清晰的文档解释。我有一个面向B2C应用程序的问题请在登录之前注册,你说“社交账户只能通过注册创建”可能不再适用,因为微软提供了“仅登录”的用户流程。 - Jeb50

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接