2016-01-06 101 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