如何在Azure AD B2C中使用唯一的用户名但允许相同的电子邮件地址创建多个帐户?

时间:2020-08-02 18:08:35

标签: azure azure-ad-b2c

我需要在Azure AD B2C中使用唯一的用户名但使用相同的电子邮件地址创建多个用户帐户。用户使用用户名登录。

场景

我有一个电子商务b2b网站。 用户转销商在b2b网站上拥有一个具有唯一用户名和电子邮件地址的帐户。 同一用户在同一b2b网站上拥有另一个具有不同(唯一)用户名的帐户,但是他具有相同的电子邮件地址。 所以你有:

  • 帐户1 :用户名是用户名1 ,电子邮件是 matt@pippo.com
  • 帐户2 :用户名是用户名2 ,电子邮件是 matt@pippo.com

要重置密码,您需要用户名和电子邮件。

Azure AD B2C是否支持此方案?

欢迎提出建议。预先感谢。

2 个答案:

答案 0 :(得分:0)

理论上有一种方法。这要求您为此电子邮件地址设置不同的帐户类型。例如,如果您有一个gmail帐户,则可以将其作为本地帐户直接注册到B2C,或者可以将gmail配置为身份提供者,如果您使用gmail登录,则会获得两个相同的邮箱,但使用不同的帐户名。

但是,不建议使用此方法。这等效于两种完全不同的帐户类型。如果您同时要求 account1 account2 均为本地帐户,则显然该方法无效。因此,总而言之,我认为您无法使用相同的电子邮件地址创建两个不同的用户帐户。

答案 1 :(得分:0)

此用户名示例已完成以下操作:

https://github.com/azure-ad-b2c/samples/tree/master/policies/username-signup-or-signin

用户名或登录标识符存储在signInNames.username属性中。这具有唯一性约束。

电子邮件存储在strongAuthenticationEmailAddress属性中,该属性没有唯一性约束。您也可以将其交换为扩展属性。