【发布时间】:2016-01-06 18:10:33
【问题描述】:
我必须将 openid 连接身份验证提供程序集成到 pentaho。
目前,我指的是以下网址:
https://bitbucket.org/secureops/sops-pentaho
以上链接仅针对第三方 openId 提供程序,例如(gmail、yahoo、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 使用的是非常旧的,所以库不兼容问题即将到来。
请建议我解决上述问题的任何想法或建议我任何其他方法。
非常感谢您的帮助。
【问题讨论】:
标签: oauth-2.0 pentaho openid-connect