在 Keycloak 中通过 refresh_token 刷新 access_token

新手上路,请多包涵

如果用户的 access_token 过期并且用户想要保持登录,我需要让用户在系统中保持登录。如何在 Keycloak 上使用 refresh_token --- 获得最新更新 access_token

我在 vert.x 上使用 vertx-auth 通过 Keycloak 进行身份验证实现。是否可以使用 vertx-authKeycloak 的 REST API 本身刷新 access_token ?或者这将是另一种实现方式是什么?

原文由 RaiBnod 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2.1k
2 个回答

keycloak 具有用于创建 access_token 使用 refresh_token 的 REST API。这是一个 POST endpoint with application/x-www-form-urlencoded

这是它的样子:

 Method: POST
URL: https://keycloak.example.com/auth/realms/myrealm/protocol/openid-connect/token
Body type: x-www-form-urlencoded
Form fields:
client_id : <my-client-name>
grant_type : refresh_token
refresh_token: <my-refresh-token>

这将使用刷新令牌为您提供新的访问令牌。

注意: 如果您的刷新令牌已过期,它将抛出 400 异常,您可以让用户再次登录。

查看 Postman 中的示例,您可以使用它开发和相应的 API。

邮递员中的样本

原文由 Yogendra Mishra 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题