我们目前正在使用Azure访问控制服务(***。accesscontrol.windows.net),允许拥有个人管理的Microsoft帐户(身份提供商)的客户登录我们的客户自助服务门户(依赖方应用程序) ,这是由Web API服务提供支持的Angular应用程序。在我们的访问控制服务中,我们目前正在通过Windows Live ID的nameidentifier one-book
声明传递给依赖方API,该API将该令牌与我们应用程序中的标识相匹配。
我们希望使用Azure AD v2.0 service支持企业和个人Microsoft帐户,但不了解如何将现有用户迁移到新系统。代码示例表明OWIN middleware从用户的身份提供程序返回NameIdentifier claim,但如果该身份提供程序是相同的Microsoft帐户(也称为Windows Live ID),那么我们当前的NameIdentifier是否相同通过访问控制服务传递接收?
任何帮助和/或文档都可以理解这种过渡是如何工作的。
答案 0 :(得分:0)
如果来自ACS的名称标识符是随机生成的值,那么您将被卡住,因为该值对于ACS / RP /用户是唯一的。如果它返回实际的Live ID,那么它显然只会匹配Azure AD用户具有相同的电子邮件地址。
我不知道是否有任何文档描述了如何处理这种情况。我的建议是只要求同一会话中每个来源的一次性身份验证,并将这两个结果结合起来。这基本上意味着
然后,如果他们希望将来使用任一帐户登录,那么您可以在两者之间建立链接。