Jwt Quarkus、Key斗篷和OIDC令牌刷新
我目前正在使用多个Quarkus服务和KeyClope RBAC开发PoC。就像一个魅力,很容易引导和开始实施功能 但我遇到了一个我无法解决的问题。想象一下:Jwt Quarkus、Key斗篷和OIDC令牌刷新,jwt,keycloak,openid-connect,quarkus,Jwt,Keycloak,Openid Connect,Quarkus,我目前正在使用多个Quarkus服务和KeyClope RBAC开发PoC。就像一个魅力,很容易引导和开始实施功能 但我遇到了一个我无法解决的问题。想象一下: 用户访问受保护的服务 quarkus oidc扩展不支持通过HTTP重定向获取令牌,cookie中的JWT持续30分钟 用户经过身份验证并返回到web应用程序 用户在应用程序中工作,填写表单和数据 数据由JWT丰富的REST调用存储(我们通过hibernate validator进行验证) 用户再次工作,时间超过30分钟 想要存储另一个条
quarkus oidc
扩展不支持通过HTTP重定向获取令牌,cookie中的JWT持续30分钟hibernate validator
进行验证)感谢互联网!对于此类用例,我倾向于使用JWT的相反方式。我将用户数据保存在共享数据服务(Infinispan或Redis等数据网格)中。因此,这些数据由用户键入并可用。我在共享数据服务中控制该数据的TTL 它既可以是特定于某个应用程序的,也可以在少数应用程序之间共享。它确实带来了一些耦合,但JWT属性结构也带来了一些耦合
对于Quarkus,有Infinispan客户端集成、Hazelcast客户端集成、mongodb和AWS dynamoDB。您可以带来其他库。关于第3步。在Quarkus 1.5.0中,添加
Quarkus.oidc.token.refresh expired=true
将刷新ID令牌,并且如果刷新授权成功,将延长用户会话。sed它,所以不能帮助它,但我知道keydape附带了一个JavaScript库。除此之外,它允许您轻松地执行选项3(在后台刷新令牌),请参阅仅供参考,它是此处添加的属性: