登录密钥斗篷后撤销刷新令牌

Posted

技术标签:

【中文标题】登录密钥斗篷后撤销刷新令牌【英文标题】:Revoke refresh token after login keycloak 【发布时间】:2021-12-02 19:21:57 【问题描述】:

我正在使用 Keycloak 来保护我的微服务。我正在通过登录名和密码获取访问和刷新令牌:

http://localhost:8088/auth/realms/keep-list/protocol/openid-connect/token
client_id:<your_client_id>
username:<your_username>
password:<your_password>
grant_type:password

并获得新的访问和刷新令牌:

http://localhost:8088/auth/realms/keep-list/protocol/openid-connect/token

    'client_id': 'your_client_id',
    'refresh_token': refresh_token_from_previous_request,
    'grant_type': 'refresh_token'

通过登录名和密码获取新的刷新令牌后,如何撤销旧的刷新令牌? 如果有人偷了我的刷新令牌并获得了新的访问和刷新令牌,用户将看到该刷新令牌已被使用(重新使用刷新 = 0)。我希望在通过登录通过新授权后,被盗的令牌将被撤销。

【问题讨论】:

【参考方案1】:

尝试调用此端点以使用帖子撤销访问令牌:

serverName/auth/realms/realmName/protocol/openid-connect/revoke

【讨论】:

以上是关于登录密钥斗篷后撤销刷新令牌的主要内容,如果未能解决你的问题,请参考以下文章

代表客户端验证密钥斗篷不记名令牌

如何撤销存储在 Identity Server 数据库中的 asp net core 中的刷新令牌

使用 Keycloak 颁发“API 密钥”

在 Android 上集成 Google 登录时如何在 ID 令牌过期后刷新?

令牌在尝试刷新后被取消身份验证

如果刷新(JWT)令牌未经授权(401响应),AngularJS重定向到登录