2016-01-06 88 views
0

我必须将openid连接身份验证提供程序集成到pentaho。pentaho 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文件。

任何想法如何解决这个问题,我已经做了搜索,但没有找到任何解决这个问题。

我也试过https://github.com/mitreid-connect/OpenID-Connect-Java-Spring-Server API,但问题是这个API使用的是高级版本的Spring库,而pentaho使用的是非常旧的,所以库不兼容性问题即将到来。

请给我任何想法来解决上述问题或建议我任何其他方法。

我真的很感谢你的帮助。

回答

0

原来的OpenID(1.0,2.0)和最近的OpenID Connect协议有很大的区别。您提供的Pentaho链接指向OpenID 2.0文档。 IdentityServer3(和Google就此而言)仅支持OpenID Connect,因此您无法关注该文档。我不认为Pentaho支持基于标准的OpenID Connect。

+0

感谢Hans。我们检查了Pentaho的支持,他们证实他们不支持Pentaho 5.3和5.4的OpenId Connect。 – user2486147