在我公司,我们正在尝试使用Keycloak生成具有最小有效负载的jwt令牌,该令牌仅具有用户,电子邮件以及令牌到期的角色。 我们需要使用此最小有效负载,因为我们有性能限制,我不想进一步解释。
有可能吗?以及如何?
我们正在使用Keycloak v7.0.0,并且尝试使用映射器进行其他操作以仅公开我们需要的内容,而没有成功。
编辑:通过删除默认范围内的所有内容,我仍然得到很多不需要的信息
{
"jti": "ac6f9ed1-e33b-4204-affc-c5992c600ead",
"exp": 1571741519,
"nbf": 0,
"iat": 1571741219,
"iss": "http://keycloak:8080/auth/realms/test",
"sub": "c530d809-fabf-44a7-b186-1d095321edf7",
"typ": "Bearer",
"azp": "web_app",
"auth_time": 0,
"session_state": "83ce24ff-9e2f-4775-ae2c-066935b7ffa9",
"acr": "1",
"scope": "openid"
}
我想要一个看起来像这样的有效载荷
{
"exp": 1571741519,
"email": "john@doe.com"
"groups": ["ROLE_USER"]
}
我正在考虑添加身份验证器SPI
答案 0 :(得分:0)
答案 1 :(得分:0)
通过添加脚本映射器,我们可以从有效负载中删除很多信息。
token.setIssuer(null)
移除iss键
token.notBefore(null)
将nbf键设置为0
您可以查看令牌JavaDoc,以获取有关可能更改的更多信息。