当前位置: 首页 > 知识库问答 >
问题:

禁用密钥斗篷中的刷新令牌

衡安晏
2023-03-14

我们有一个角度水疗中心,是由OIDC授权使用隐式流。我们使用Keycloak作为我们的授权服务器。访问令牌的寿命很短,并且通过隐藏的iframe定期刷新。

在了解到授权代码流PKCE是授权SPA的新推荐方式后,我们决定切换流。一切正常,但每次我们调用令牌endpoint时,KeyCloak确实会给我们一个刷新令牌(以及Access和ID-Token)。由于没有安全的方法来存储刷新令牌,我们想继续使用隐藏的ifra方法来刷新访问令牌。

有没有办法在Keyclock中禁用刷新令牌?还是我们错过了什么?可以在SPA中存储刷新令牌吗?

共有2个答案

祝昊东
2023-03-14

从Keycloak的源代码中可以看出,它仍然没有提供在身份验证代码流期间禁用刷新令牌颁发的方法。不幸的是,您应该继续使用隐式授权流,因为存储在客户端的刷新令牌是一个大缺陷。

凌和悦
2023-03-14

更新版本的Keyclock在“OpenID连接兼容性模式”部分的客户端级别实现了此功能

我已经验证了版本14. x。

 类似资料:
  • 部署在AWS上,我不想隧道到盒子并打开浏览器禁用它。 似乎存在一个配置:,可以放置在文件,但我不确定在哪个对象下。我在“王国”下试过,但一点运气都没有。 我不想在适配器级别禁用它,它需要全局禁用,那么在哪里,或者如何全局禁用ssh/https? 另外,我知道这在生产中是不推荐的。)

  • 谁知道如何使用获取id_令牌? 我一直在(Spring,JEE)和postman中与合作。 基本的工作正常,但我需要,因为有一些声明,它们不存在于中,但它们存在于中。 使用库,我可以获得Keycloak上下文,但id_token属性始终为null。 有什么主意吗?

  • 我试图使用Keycloak的openId-connectendpoint来获取关于用户角色的信息。我使用/auth/realms/moje/protocol/OpenID-connect/userinfoendpoint来获取关于已验证用户的信息。我可以获得姓名、用户名、电子邮件等信息。但是我不能强迫Keyclak给我关于用户角色的信息。 我已经阅读了openID文档,我没有找到任何关于必须获取角

  • 使用KeyCloak时,访问令牌与用户信息令牌有何不同? 从OAuth2/OpenIDConnect中,我了解到访问令牌提供了用户已经通过身份验证的信息,您需要使用用户信息令牌来获取关于用户及其配置文件/角色等的更多信息。 当我看到访问令牌时https://jwt.io/而不是用户信息令牌。我能够获得与用户配置文件相同的信息 为什么会这样,使用Keycloak时访问令牌与用户信息令牌有何不同?

  • 我想设置一个Docker网络,其中包含keyCloak、postgres和webapp实例。 有没有一种方法可以在容器之间进行网络通信,同时也理解oidc客户端重定向?我有一个问题,容器可以互相交谈只是罚款,如果我设置OIDC容器名称为docker网络,但然后我遇到的问题与客户端,不能连接到这些相同的URL以外的docker网络在主机上机器。 有人能给我指出正确的docker留档来寻找DNS或主机

  • 不知何故,我迷失了Spring Security和Keycloak。 在一个应用程序中,我成功地从KeyClope实例接收了一个访问令牌。然后,我使用这个令牌请求我的Spring Security服务器(它使用相同的KeyClope实例)。 但我得到的只是403个错误。 以下是代码摘录(用kotlin编写): 安全配置: 在我的控制器中: 在我对服务器的调用中,我可以验证授权头的设置如下:auth