如何将 Keycloak 配置为默认使用 HMAC 算法而不是 RSA?

cod*_*ent 6 single-sign-on keycloak

我在 Keycloak 和管理选项卡 Keys -> Active 中创建了一个新领域,我可以看到三个条目:RSA、HMAC、AES。

每当生成 JWT 令牌时,使用的签名算法是 RSA。如何改用 HMAC?

fri*_*234 6

我有同样的问题,并找到以下答案:

最新的文档说访问令牌只支持 rsa。( http://www.keycloak.org/docs/3.3/server_admin/topics/realms/keys.html )

有计划用 hmac 签署刷新令牌。查看此用户邮件列表条目以获取更多详细信息:“无论如何,通过 HMAC 对 accessTokens 和 idTokens 进行签名并不是很好,因为应用程序将需要访问领域签名密钥。因为它是对称的东西。这可能是安全漏洞应用程序可以自己生成和签署令牌。因此,我们宁愿依赖非对称密码学——Keycloak 用私钥对令牌进行签名,而应用程序只有公钥来验证签名。” http://lists.jboss.org/pipermail/keycloak-user/2017-May/010809.html

这是它的 JIRA:https : //issues.jboss.org/browse/KEYCLOAK-4623和内部 https://issues.jboss.org/browse/KEYCLOAK-4622