我们有一个使用 Asp.Net Identity 的 Asp.Net 4.5 MVC 应用程序来管理我们的客户数据库。我们目前正在使用 Microsoft 帐户身份验证。我们正在考虑使用 OpenId Connect,以便拥有工作/学校帐户的客户也可以登录添加登录到 .NET MVC Web 应用程序。
Microsoft 帐户身份验证返回 ProviderKey 作为已登录用户的唯一 ID。这映射到我们客户数据库中的 UserId。
OpenId Connect 似乎没有返回 ProviderKey,但NameIdentifier
看起来很有希望
ClaimsPrincipal.Current.FindFirst(System.IdentityModel.Claims.ClaimTypes.NameIdentifier)?.Value;
OpenId Connect返回的是NameIdentifier
用户的唯一标识吗?随着时间的推移,它能否可靠地用于唯一地识别用户?