2009-06-23 59 views
5

我遇到了Google openid标识符的问题。 我在简单的asp.net mvc项目中使用了dotnetopenauth库(dotnetopenid的后继者)。 在本地主机上进行测试期间,我注意到谷歌不时生成新的声明标识符。这是为什么?这只是与本地主机?一切看起来不错,与不同的提供商(如雅虎)谷歌是否为本地主机生成新的openid声明的标识符?

回答

6

Google OP为每个用户RP Realm组合创建一个唯一的“匿名”声明标识符。 (根据域,它是而不是,但是完整的RP域,或者至少比域更多)。端口号是领域URI的一部分,因此如果您的本地主机上的站点偶尔更改端口号,因为VS可以在没有警告的情况下进行更改,您声明的ID将会发生变化。此外,如果您将自己的网站设置为将自己的claims_id设置为“管理员”,那么它将不会是生产中的正确管理员claims_id,因为这个领域会有所不同。

2

谷歌的openid确实是per domain(嘿,它位于SO团队,所以你在一个很好的公司)。它真的归结为每个openid提供商的实现细节 - 谷歌已经走到了一个稍微不同(但技术上有效)的路线。为了测试,你可以尝试博主提供者(仍然是你的谷歌账户) - 它更加静态。

+2

我不相信谷歌的OpenID实际上是按照域名而不是每个域名。 – 2009-06-23 21:15:52