LightOpenID-提供程序为发现信息不匹配的标识符发出断言 [英] LightOpenID - Provider issued an assertion for an Identifier whose discovery info did not match
问题描述
这是我使用LightOpenID提供程序脚本登录Stack后得到的错误.
This is the error I get after logging into Stack with my LightOpenID provider script.
OpenID提供者为发现信息不匹配的标识符发出了断言.
Assertion endpoint info:
ClaimedIdentifier: http ://sub.mydomain.net/?cgillis
ProviderLocalIdentifier: http ://sub.mydomain.net/?cgillis
ProviderEndpoint: http ://sub.mydomain.net/
OpenID version: 2.0 Service Type URIs:
Discovered endpoint info: [{
ClaimedIdentifier: http ://specs.openid.net/auth/2.0/identifier_select
ProviderLocalIdentifier: http ://specs.openid.net/auth/2.0/identifier_select
ProviderEndpoint: http ://sub.mydomain.net/
OpenID version: 2.0 Service Type URIs: http ://specs.openid.net/auth/2.0/server },]
提供商脚本: https://gist.github.com/1072612
我应该注意提供商将select_id设置为true.如果将其设置为false,则一切正常.
I should note the provider has select_id set to true. Everything works if it's set to false.
推荐答案
基本上,问题在于您为身份URL设置了select_id = true
.如果仅将checkid()返回的网址设置为false,它将按预期运行.
Basically, the problem is that you set select_id = true
for the identity urls. If you set it to false for only the urls returned by checkid(), it will work as expected.
有关如何解决此问题的示例,请参见资源库中example.php
中的__construct().
See __construct() in example.php
from the repository for an example on how can this problem be solved.
You should also see the Provider wiki page and a related bug report
这篇关于LightOpenID-提供程序为发现信息不匹配的标识符发出断言的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!