Node.js 撤销密钥斗篷访问令牌

Node.js 撤销密钥斗篷访问令牌,node.js,reactjs,keycloak,keycloak-rest-api,keycloak-nodejs-connect,Node.js,Reactjs,Keycloak,Keycloak Rest Api,Keycloak Nodejs Connect,我正在使用KeyClope保护我的react前端和node.js后端。这些客户端使用基于角色的授权进行保护 我的前端应用程序作为公共客户机在KeyClope中注册,而后端应用程序作为仅承载客户机注册。当一个用户登录到前端时,我获取该特定用户的访问令牌,并使用该访问令牌调用后端api层 当用户从前端注销时,我使用keydove对象注销方法从keydove清除该特定用户的前端客户端会话。这工作正常,用户正在注销并重定向到KeyClope登录页面 但问题是我仍然可以使用该注销用户的访问令牌来调用后端a

我正在使用KeyClope保护我的react前端和node.js后端。这些客户端使用基于角色的授权进行保护

我的前端应用程序作为公共客户机在KeyClope中注册,而后端应用程序作为仅承载客户机注册。当一个用户登录到前端时,我获取该特定用户的访问令牌,并使用该访问令牌调用后端api层

当用户从前端注销时,我使用keydove对象注销方法从keydove清除该特定用户的前端客户端会话。这工作正常,用户正在注销并重定向到KeyClope登录页面

但问题是我仍然可以使用该注销用户的访问令牌来调用后端api。即使用户注销,访问令牌仍然有效

我尝试了这个端点来撤销用户访问令牌。但是没有起作用 /auth/admin/realms//users/
有没有一种方法可以在keydove中撤销特定用户的访问令牌?

我认为您只能撤销会话,但不能撤销已颁发的访问令牌。因此,唯一的解决方案是选择一个非常短的访问令牌生命周期并结合静默刷新,因此可用性仍然良好,会话撤销后的最大访问时间等于或小于令牌生命周期


编辑:有一个。他们没有提到如何撤销一个单独的访问令牌,因此没有文档化的方法来这么做。但是,您可以通过所述的“不在之前”方式撤销所有已颁发的访问密钥。

有相关文档吗?我也怀疑这种行为,但没有办法找到明确的解释。谢谢你的评论。我添加了一个链接。由于本指南中没有记录,所以很可能无法做到这一点。这是我的问题,大多数访问令牌实现都忽略了这个问题。我正在构建自己的实现,其中它将检查缓存中已撤销的令牌,这样既安全又超快速。