我已经为社交和本地帐户基于Active Directory B2C custom policy starter pack的示例为社交和本地帐户创建了自定义策略。我已经启用了微软和谷歌的登录功能,并测试了两者都可以工作,我也启用了使用本地帐户登录。Azure AD B2C在自定义政策中将声明添加到id_token
当我log in with google我得到下面的权利要求
EXP,NBF,版本,ISS,分,澳元,ACR,现时,IAT,auth_time,电子邮件,GIVEN_NAME,FAMILY_NAME,名称,IDP,at_hash
当我登录到custom Azure AD tenant权利要求集缺失“电子邮件”,但电子邮件的“名称”要求
EXP,NBF,版本,ISS,分,澳元上市, ACR,现时,IAT,auth_time,给予_name,FAMILY_NAME,名称,IDP,at_hash
当我登录为本地帐户组权利要求中缺少“电子邮件”,也没有在任何字段中列出的电子邮件。
EXP,NBF,版本,ISS,分,澳元,ACR,现时,IAT,auth_time,GIVEN_NAME,FAMILY_NAME,名称,at_hash
最后,当我看着用户的列表B2C管理员,这些都是不同的用户条目...即使电子邮件地址是相同的。所以,我有2个问题,
- 我如何获得一套统一的id_token
- 要求我如何在注册时所有这些帐户连接在一起的(同UPN)
我相信这些可能是相关的,这就是为什么我一起问他们。 您可能想查看策略,但我向您保证它们与入门套件中的策略完全相同,我所做的只是更改租户名称,并在信任框架扩展文件中添加Google和Azure。
有一个功能请求合并所有的电子邮件在单一帐户下https://feedback.azure.com/forums/169401-azure-active-directory/suggestions/13214529-azure-ad-b2c-how-to -avoid-validate-duplicate -s Upvote there – Ramakrishna