没有Google+的Google OpenID代理提供商

时间:2013-01-05 22:13:56

标签: openid google-plus openid-provider stackexchange

多年来,我一直在使用自己的域frightanic.com作为我的OpenID。但是,我的网站通过在index.html的HTML主管中使用以下内容来委托Google的OpenID提供商:

<link rel="openid2.provider" href="https://www.google.com/accounts/o8/ud?source=profiles" >
<link rel="openid2.local_id" href="http://www.google.com/profiles/marcelstoer" >
谷歌推出了Google+,打破了这一局面。现在,每次登录尝试都会显示一个&#34;切换到Google +&#34;没有逃脱的页面。

解决方法是什么(除了寻找新的OpenID提供商或点击StackExchange上的Google登录选项)?

2 个答案:

答案 0 :(得分:3)

在黑暗中拍摄,但在local_id工作中使用标识符选择网址?

<link rel="openid2.provider" href="https://www.google.com/accounts/o8/ud">
<link rel="openid2.local_id" href="https://www.google.com/accounts/o8/id">

(请注意,第二个URL是/ id而不是/ ud)

答案 1 :(得分:3)

我能够破解这一点,但我刚刚创建了&amp;删除了Google Plus个人资料,因此我不确定它是否会在几天后停止工作。

转到http://profiles.google.com。它应该将您重定向到个人资料页面,其中包含您在URL中列出的用户编号:

https://profiles.google.com/NNNNNNNNNNN/about

或者,它可能只是要求您注册Google Plus。如果是,您可以启用它,然后删除Google Plus配置文件。标识符应该保持不变,上面的技巧应该从现在开始工作。可悲的是,我不知道如何解决这个问题。

将该网址的 NNNNNNNNNNN 号码复制到以下代码段,它应该有效:

该代码段如下:

<link rel="openid2.provider" href="https://www.google.com/accounts/o8/ud" />
<link rel="openid2.local_id" href="https://profiles.google.com/NNNNNNNNNNN" />

请注意,不再有?source=profiles。它过去曾经为我工作,但现在结果是500。

从我尝试过的OpenID-LDAP test开始,似乎openid2.local_id几乎可以取任何价值。它仅负责将您的Google标识符映射到您的域。任何其他Google标识符都将按原样使用,无需映射。

那是:

  1. 如果您使用列为local_id的Google帐户登录,则会以http://yourdomain.com身份登录。

  2. 如果您使用任何其他Google帐户登录,您将以https://www.google.com/accounts/o8/id?...身份登录。

  3. 如果local_id的值无效,且与任何帐户标识符都不匹配,则所有用户都将使用其“长”Google ID登录,并且该代码段基本上只是重定向到Google登录。