问题描述
刚刚开始使用 Keycloak 进行 OpenIdConnect 身份验证。我在本地 Keycloak 服务器上创建了一个 test-realm
,我正在尝试使用它下的 admin-cli
客户端进行身份验证。在 admin-cli
下的 test-realm
设置下,我设置了以下内容:
客户端协议:Open Id Connect 访问类型:机密 启用直接访问授权:ON 服务帐户已启用:开启
在 Fine Grain OpenID Connect Configuration
> Valid Request URIs
下,我暂时添加了 *
(即使我添加了正确的重定向 URL,即 localhost:9999
,也无济于事)。
然而,每次我尝试获取 /token
时,我总是得到
{
"error": "invalid_grant","error_description": "Code not valid"
}
奇怪的是,当我将 grant_type
更改为 client_credentials
时,我在响应中完美地收到了访问令牌。但是将其改回 authorization_code
并且我收到该错误。这是我所做的 curl 调用:
curl --request POST \
--url http://localhost:8080/auth/realms/test-realm/protocol/openid-connect/token \
--header 'Authorization: Basic YWRtaW4tY2xpOjEwMWRkOWJjLTc1NjItNDBhNy04OWI1LWJhOTUxMWJiYmQ5ZA==' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data grant_type=authorization_code \
--data code=IvGEFwk0LRBSuQSJgHHrZsWYPKCloLh6L8N7nOGhnUz \
--data redirect_uri=http://localhost:9999
其中 localhost:8080
是我的本地密钥斗篷服务器
我的配置有问题吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)