我们有几个asp.net应用程序,每个都有自己的用户表和数据库。每个应用程序都有自己的登录/重置密码等。我们的用户来自不同的公司,因此用户是该公司的员工。
现在我们要使用中央身份提供商,让它完成所有身份验证和授权工作。
我们可以使用Azure AD / Azure AD B2B / Azure AD B2C来实现我们的目标吗?
我们有来自这些公司的数千名用户,他们中的大多数都没有自己的AD或Azure广告。我们需要从我们自己的用户表中批量迁移现有用户到Azure AD(或者如果使用b2c,则向他们发送邀请)。
答案 0 :(得分:3)
B2C很不错但它基本上允许任何人在那里登录。因此,除非这些应用程序面向消费者,否则我可能会选择B2B。
您可以为那些没有Azure AD的用户创建一个目录,并在那里邀请他们(这也是一个API)。
当然,您的用户当然必须再次创建密码,因为我假设您已经以不可逆的形式存储它们。
答案 1 :(得分:1)
是的,使用Azure B2C或B2B应该能够为您实现这一目标。 我相信B2C会比B2B更理想。
https://docs.microsoft.com/en-us/azure/active-directory/active-directory-b2b-what-is-azure-ad-b2b
答案 2 :(得分:0)
用户是用户还是组织内部的用户? B2B用于您公司的用户群或与您有合作伙伴关系的其他公司。 B2C是客户方,不仅支持使用Azure AD帐户登录,还支持使用诸如Facebook,google和Outlook.com之类的消费者身份提供商。
话虽如此,这两种方法都将允许您设置支持SAML,OAuth和OpenID的Azure AD应用程序,以允许用户登录到您的应用程序以进行身份验证和授权
什么是Azure Active Directory B2C? https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-overview
什么是Azure Active Directory B2B? https://docs.microsoft.com/en-us/azure/active-directory/b2b/what-is-b2b
答案 3 :(得分:-1)
这还取决于您为客户提供的用户名或登录电子邮件。我在这里假设您没有与客户Azure AD联系,并且他们没有Azure AD租户,即使不是全部,大多数也是如此。据我所知,如果您选择B2B,则不允许注册未经验证的域电子邮件。因此,使用默认租户,您的所有用户均为“ username@tenantname.onmicrosoft.com”。为了添加其他域,您需要添加并验证它,这需要与域注册商进行一些合作。
我们有非常相似的用例,最终选择了B2C。它使我们能够支持客户用例(user@anyemail.com)。对于Azure AD租户中的内部用户,我们将Azure AD添加为B2C中的IdP之一。