Keycloak GraphDB用KeyClope示波器分离器固定

Keycloak GraphDB用KeyClope示波器分离器固定,keycloak,openid-connect,graphdb,Keycloak,Openid Connect,Graphdb,我正试图通过OpenID用KeyClope保护GraphDB的一个实例。我已经在KeyClope中创建了一个领域、一个客户端和一些用户 然后,我根据配置了GraphDB。现在,当我单击GraphDB登录屏幕上的“使用OpenID登录”按钮时,它会让我返回GraphDB登录屏幕。我注意到Keyclope的日志中有一个错误,上面写着: KC-SERVICES0093:范围的参数值无效 [org.keydape.events](默认任务-1)类型=登录错误,realmId=kodi,clientId=

我正试图通过OpenID用KeyClope保护GraphDB的一个实例。我已经在KeyClope中创建了一个领域、一个客户端和一些用户

然后,我根据配置了GraphDB。现在,当我单击GraphDB登录屏幕上的“使用OpenID登录”按钮时,它会让我返回GraphDB登录屏幕。我注意到Keyclope的日志中有一个错误,上面写着:

KC-SERVICES0093:范围的参数值无效

[org.keydape.events](默认任务-1)类型=登录错误,realmId=kodi,clientId=graphdb,userId=null,ipAddress=127.0.0.1,错误=无效请求,响应类型=代码,重定向uri=http://localhost:7200/,响应模式=查询

我检查了浏览器中的请求,似乎以下身份验证请求是罪魁祸首:
http://localhost:8080/auth/realms/kodi/protocol/openid-连接/身份验证?响应类型=代码和作用域=openid%20%20脱机访问和客户端\U id=图形和重定向\U uri=http://localhost:7200/&&state=530bc478e086b3e6b4474c35b7649c34faf0e0ae1a36f4a36ba3eb2c&code_challenge=W4IA_YvcdXVYJbgApldqdoHePBXZxzToSaPdfgsxTYM&code_challenge_method=S256

我在Postman中测试了它,问题似乎是
openid
offline\u access
范围查询参数值之间有两个空格。根据,作用域应该用空格分隔,但问题显然是GraphDB请求中有两个。如果我手动删除其中一个编码的空格,并在Postman中重新运行请求,则请求将在没有错误的情况下完成(导致KeyClope登录屏幕)

我不确定这是一个keydape(能够处理范围参数中的多个空格)还是GraphDB(不要使用两个空格来分隔范围参数)问题。此外,我找不到任何配置参数来影响这一点。如何解决/解决这个问题有什么想法吗?谢谢

更新: 我已经从下面的Pavel那里得到了令人满意的答案,但仅供将来参考,我尝试的版本是:

  • GraphDB 9.5.0
  • 钥匙斗篷12.0.1

我们知道GraphDB的空间问题,它将在未来的版本中解决。看起来,一些OpenID提供者比其他提供者更宽容地使用额外的空间。不幸的是,目前还没有已知的解决方法。

谢谢您提供的信息,Pavel!期待修复。。。