相关疑难解决方法(0)

“会话没有所需的客户端”是什么意思?

我有一个关于 Keycloak 4.8.3 的问题。

我正在使用 Spring 安全适配器通过 keycloak 和启用的登录功能来保护我们的 Web 应用程序:记住我。

用户从浏览器登录,然后重定向回 Web 应用程序。

然后,我们的 Web 应用程序使用 KeycloakRestTemplate 在内部调用另一个 Keycloak 安全的 REST-API 端点,因为我们还需要使用 Web 应用程序的同一用户来授权这些调用。

重点是:我想将授权令牌用于另一个 REST-API 服务方法。

一段时间后,REST-API 调用失败并显示以下错误消息:

ERROR RefreshableKeycloakSecurityContext Refresh token failure status: 400 {"error":"invalid_grant","error_description":"Session doesn't have required client"}
Run Code Online (Sandbox Code Playgroud)

keycloak 日志文件包含以下警告:

17:25:51,929 WARN  [org.keycloak.events] (default task-1) type=REFRESH_TOKEN_ERROR, realmId=EHotel, clientId=IBE, userId=f:8db533c4-9733-48d4-8b30-28a50954b7ad:khaendel, ipAddress=192.168.1.76, error=invalid_token, grant_type=refresh_token, refresh_token_type=Refresh, refresh_token_id=9fba841f-54bb-4c81-8f7b-6a7e1c5ab92e, client_auth_method=client-secret
Run Code Online (Sandbox Code Playgroud)

我无法准确预测这种情况何时发生,大概是 15 分钟后或一小时后。令牌过期设置如下: SSO 会话空闲:15 分钟 SSO 会话最长:15 分钟 SSO 会话空闲“记住我”:1 天 SSO 会话最长“记住我”:1 天 访问令牌有效期:5 分钟

错误消息(会话没有所需的客户端)是什么意思?

我究竟做错了什么?

远程调试显示:看来,在 keycloak …

keycloak

6
推荐指数
1
解决办法
5256
查看次数

标签 统计

keycloak ×1