ClaimedIdentifier会被更改吗?
我打算将ClaimedIdentifier存储为用户数据表中的查找字段。它将来会成为什么问题吗?我有点担心。
例如:
var openid = response.ClaimedIdentifier.ToString();
它给了我价值:“https://www.google.com/accounts/o8/id?id=xxxxxxxx-e-xxxxxxxxxxxxxxxxxxxx”
我不太确定使用它来查找数据表中的用户。
非常感谢。
道明。
答案 0 :(得分:4)
是的!您应该绝对使用ClaimedIdentifier作为用户的持久标识符。您在其中看到的那个长URI是稳定的,也是正确的存储方式。
也就是说,请注意Google使用真正的“定向身份”,这意味着如果您更改了OpenID RP的域名(通常这意味着您的网站的域名),Google将发送不同的所有现有用户的网址。因此,如果您认为您的网站可能会发生这种情况,您可能还希望存储用户的电子邮件地址,以便以后再次关联它们。但这需要您验证电子邮件地址,并且您必须选择您信任哪些提供商的电子邮件(可能只是谷歌和雅虎,并且只有当他们提供以他们控制的域名结尾的电子邮件地址时),yada yada。这是一种痛苦。所以只是不要改变你的域名。 :)