OpenID身份验证的注册表

时间:2011-04-08 04:34:19

标签: openid

我正在创建一个使用OpenID身份验证的网站,但我不确定除了标识符之外应该收集哪些字段。

在网站上集成OpenID时还应该考虑什么?

2 个答案:

答案 0 :(得分:0)

本网站包含您需要的字段以及应用于将其引入您网站的步骤。

http://www.plaxo.com/api/openid_recipe

基本上,OpenID URL和用户ID。用户标识用于指向用户表,因为单个用户可以拥有多个OpenID。

答案 1 :(得分:0)

除了用户名和电子邮件等,我还会考虑存储:

  • 用户的OpenID,也称为声明的标识符,即来自OpenID提供商的响应中的openid.claimed_id所声称的标识符[...]应该被依赖方用作本地存储用户信息的密钥。 The OpenID 2.0 spec

  • the OpenID 2.0 Spec中的OpenID端点openid.op_endpoint。因此,您知道哪个OpenID Provider对用户进行了身份验证。也许将来你会发现一个提供商不是那么值得信赖,然后我认为最好知道,例如, someuser.example.com已由该提供商进行了身份验证。

  • 领域。声称的ID有时因领域而异。例如,如果您的网站可以在两个或更多领域(例如example.comsomewhere-else.com)访问,并且用户使用Gmail登录,则会在{{1}为其分配一个不透明ID }和 example.com处的另一个 ID(所以她可以更匿名)。您可能想知道用户登录到哪个领域,如果您想将用户的两个somewhere-else.comexample.com帐户合并到一个帐户(为此,您可以验证和比较电子邮件地址)。

  • 可能是OP-Local Identifier,以防用户更改其用户提供的标识符。例如,如果用户具有OpenID标识符somewhere-else.com,但将其更改为username.example.com,那么我认为OP本地标识符将保持不变(假设用户继续使用相同的OpenID提供程序)。 Terminology.example.

(我不确定存储这些属性是否有意义。所以我发布了一个问题here。到目前为止,有一个人认为他们不需要存储..)