OpenID标识是否始终可以作为OpenID提供程序URL使用?

时间:2014-01-29 17:22:02

标签: openid

如果我的术语不准确,请道歉。

我有一个充当OpenID依赖方的应用程序。假设用户通过OpenID注册,并为我提供其OpenID提供商的URL。身份验证发生了,我收到了一个OpenID身份。

如果我需要再次验证用户,我是否可以始终使用Identity而不是最初提供的URL?

一个具体的例子,如果以上是无稽之谈。要将Google用作其OpenID提供商,用户请输入https://www.google.com/accounts/o8/id。通过身份验证后,Google会向我提供https://www.google.com/accounts/o8/id?id=A1B2c3d45F6g7等身份网址。我随后可以使用该身份URL进行身份验证(我已经检查过);但对所有提供商来说都保证是真的吗?

1 个答案:

答案 0 :(得分:0)

该身份URL是声明的标识符。 spec says它“应该被依赖方用作本地存储用户信息的密钥”。因此,您可以相信,对于任何正确实现的提供程序,您将为给定用户获得稳定的声明标识符。

请注意,这样的标识符通常特定于每个RP的域(在技术上,;此功能是一种隐私保护措施,可防止RP在跟踪不同用户活动时串通服务)。因此,您可能会为同一用户获取不同的标识符,例如:您的临时环境和生产环境。