我必须集成openid连接身份验证提供者到宾得。
目前,我所指的网址如下:
https://bitbucket.org/secureops/sops-pentaho
上面的链接只针对第三方openId提供商,如gmail、雅虎、facebook等,但在我的需求中,客户端有IdentityServer3实现的SSO身份验证提供者。我尝试了在上面的链接中内部使用的OpenId4Java API来使用客户端端点,但是它失败了,只有以下例外:
org.openid4java.consumer.ConsumerException: 0xa00:身份验证不能继续:没有提供发现信息。
不管它连接到什么openid提供者,如果它找不到上面的异常,那么它在XRDS下面的不协调文档就会作为响应返回。
<?xml version="1.0" encoding="UTF-8"?>
<xrds:XRDS
xmlns:xrds="xri://$xrds"
xmlns:openid="http://openid.net/xmlns/1.0"
xmlns="xri://$xrd*($v*2.0)">
<XRD>
<Service priority="0">
<Type>http://specs.openid.net/auth/2.0/server</Type>
<Type>http://specs.openid.net/extensions/pape/1.0</Type>
<Type>http://openid.net/srv/ax/1.0</Type>
<Type>http://specs.openid.net/extensions/oauth/1.0</Type>
<Type>http://specs.openid.net/extensions/ui/1.0/lang-pref</Type>
<Type>http://specs.openid.net/extensions/ui/1.0/mode/popup</Type>
<Type>http://schemas.xmlsoap.org/ws/2005/05/identity/claims/privatepersonalidentifier</Type>
<Type>http://www.idmanagement.gov/schema/2009/05/icam/no-pii.pdf</Type>
<Type>http://www.idmanagement.gov/schema/2009/05/icam/openid-trust-level1.pdf</Type>
<Type>http://csrc.nist.gov/publications/nistpubs/800-63/SP800-63V1_0_2.pdf</Type>
<URI>https://open.login.yahooapis.com/openid/op/auth</URI>
</Service>
</XRD>
</xrds:XRDS>但是在IdentityServer3 openid提供程序中,它没有实现提供上述XRDS文件的服务。
任何知道如何解决这个问题,我已经做了搜索,但没有找到任何解决这个问题。
我也尝试过Spring,但问题是这个API使用的是Spring的高级版本,而https://github.com/mitreid-connect/OpenID-Connect-Java-Spring-Server使用的是非常老的版本,所以库的不兼容问题就出现了。
请建议我解决上述问题的任何想法,或建议我任何其他方法。
我真的很感激你的帮助。
发布于 2016-01-06 18:40:40
原始的OpenID (1.0,2.0)和最近的OpenID连接协议有很大的不同。您提供的五旬节链接指向OpenID 2.0文档。IdentityServer3 (以及谷歌)只支持OpenID连接,所以您无法跟踪这些文档。我不认为五旬节支持基于标准的OpenID连接。
https://stackoverflow.com/questions/34639850
复制相似问题