我们正在设计一个应用程序,供客户的员工,他们的一些供应商和消费者使用。所有这三种类型的用户都拥有不同的权利集。
我们正在分析Azure AD,发现Azure B2B可以用于员工和供应商,而B2C可以用于消费者。所以,我们需要他们两个。我们可以设置我们的应用程序,以便能够从B2B和B2C进行身份验证吗?或任何其他建议来实现这一点。
提前致谢
答案 0 :(得分:4)
您可以完全设置应用程序以使用多个目录进行身份验证。
设置将由员工使用的一个Azure AD,其中可以通过B2B添加合作伙伴。然后还为客户设置B2C目录。
在您的应用程序端,您需要为用户显示一个选项:是否要以员工/合作伙伴或客户身份登录。然后,您将重定向到正确的登录页面。
您需要在两个目录中定义应用两次。
实际实现将根据您的技术堆栈而有所不同,但在ASP.NET Core中,您需要设置多个Open ID Connect中间件。并且他们都不能使用AutomaticChallenge,因为您需要知道重定向用户的位置,您无法真正选择它们。
更新到B2C允许您现在就完成所有操作
Azure AD B2C现在允许自定义策略(预览功能)。这意味着您可以使用任何OpenId Connect提供程序进行登录,当然包括Azure AD。
此新功能允许您: