Keycloak:缺少领域公钥

时间:2016-11-09 09:34:48

标签: keycloak

当我访问keycloak管理控制台(!远程)并创建客户端时:

keycloak client settings

keycloak OIDC JSON没有公钥

keycloak OIDC JSON

我希望在JSON中有类似的东西:

 "realm-public-key": "MIIBIjANBg....

2 个答案:

答案 0 :(得分:17)

最新的keycloak中的keycloak.json没有任何域公钥......实际上你似乎使用的是keycloak版本2.3.x,它有一些变化。基本上,您可以为领域旋转多个公钥。该文件说明了这一点: -

  

在2.3.0版本中,我们添加了对公钥轮换的支持。当管理员   在Keycloak管理控制台(客户端适配器)中旋转领域键   将能够识别它并自动下载新的公钥   来自Keycloak。然而,这种自动下载新密钥已经完成   只是如果您的适配器中没有realm-public-key选项   硬编码的公钥。出于这个原因,我们不建议使用   适配器配置中的realm-public-key选项。请注意这一点   仍然支持选项,但如果你真的那么它可能会有用   希望在适配器配置中使用硬编码的公钥   永远不要从Keycloak下载公钥。在理论上,一个原因   如果您不受信任,这可以避免中间人攻击   适配器和Keycloak之间的网络,但在这种情况下,它是很多   更好的选择,使用HTTPS,这将保护之间的所有请求   适配器和Keycloak。

答案 1 :(得分:10)

我仍然不知道为什么keycloak OIDC JSON中没有公钥(可能是出于安全原因),但我发现它在:

领域设置>键>公钥视图

enter image description here