1

在 Keycloak 服务器中,我们创建了一个Access Type具有confidential. 通过使用和调用/protocol/openid-connect/token端点,我们得到了,它应该在后续请求中对有问题的应用程序(客户端)进行身份验证。client_idclient_secretaccess_token

即使令牌是有效的(我通过调用introspect端点进行了双重检查),对于任何具有此功能的请求,我都会从服务器收到 500 错误access_token

简而言之:

  • 调用此端点<base_url>/auth/realms/<realm>/protocol/openid-connect/token会提供 access_token
    • 提供的数据:client_id、client_secret、grant_type:“client_credentials”
  • 打电话<base_url>/auth/realms/<realm>/protocol/openid-connect/userinfo500Internal Server Error
{
    "error": "unknown_error"
}

关于问题可能是什么的任何见解?

4

2 回答 2

1

这应该在 Keycloak 13.0.0 中修复。请参阅此提交:https ://github.com/keycloak/keycloak/commit/056b52fbbe5af06aab957d37405215f1f4ed6ecd

于 2021-05-12T11:51:58.393 回答
0

从您如何将令牌发送到 userInfo 端点的问题中尚不清楚,只要您收到的访问令牌有效,请确保您在请求标头中发送令牌。试试下面的 curl 命令:-

curl 
     -X GET 
     -H "Authorization: Bearer <Access Token>" 
     -H "Content-type: application/json" 
     http://{hostname}/auth/realms/{realm_name}/protocol/openid-connect/userinfo
于 2021-05-02T10:10:29.267 回答