当前位置: 首页 > 知识库问答 >
问题:

从 Keycloak 令牌endpoint获取授权代码

卫英悟
2023-03-14

密钥锁留档中写到,令牌endpoint可用于在授权代码流中获取临时代码,或通过隐式流、直接授权或客户端授权获取令牌。

但是即使使用response_type=code,我也无法获得授权码:只能获得令牌。我该怎么做呢?

我的测试请求:

curl -X POST \
  http://localhost:8080/auth/realms/my-realm/protocol/openid-connect/token \
  -H 'Cache-Control: no-cache' \
  -H 'Connection: keep-alive' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -H 'Host: localhost:8080' \
  -H 'Postman-Token: e103dff9-7b25-4f8f-886b-2af73efee561,e8f92a85-1489-4d7f-b89f-76cfe85e9c68' \
  -H 'User-Agent: PostmanRuntime/7.15.0' \
  -H 'accept-encoding: gzip, deflate' \
  -H 'cache-control: no-cache' \
  -H 'content-length: 94' \
  -d 'grant_type=password&username=login&password=pwd&client_id=my-app&response_type=code'

资料来源:https://www.keycloak.org/docs/latest/server_admin/index.html#keycloak-服务器oidc-uriendpoint

共有1个答案

姬和豫
2023-03-14

response_type只能在对授权终结点 (http://localhost:8080/auth/realms/my-realm/protocol/openid-connect/auth) 的授权请求中使用,在这种情况下(在令牌请求中)将被忽略。可以从授权endpoint获取授权代码,如下所示:

http://localhost:8080/auth/realms/my-realm/protocol/openid-connect/auth?client_id=my-ap

另请参阅:https://www.rfc-editor.org/rfc/rfc6749#section-4.1.1

 类似资料:
  • 我遇到了使用文档签名 API 的第一个障碍,需要一些帮助。 我将docusignrestapi集合导入到Postman中。我设置了iKey、iSec、encodedKeys和codeFromUrl变量。 当尝试发送'01-授权代码授予访问令牌'post API时,我每次都得到以下响应。 我尝试从Postman中删除所有内容,包括环境,并从DocuSign中删除该应用程序,然后重新开始,以便我的所有

  • 我正在尝试在多租户应用程序中实现 OAuth 2.0 授权代码流。 我首先在 请求了“openid 配置文件电子邮件”范围的授权,然后使用我获得的代码以及 、client_id、client_secret redirect_uri 作为访问令牌 我得到的响应只包含< code>id_token和< code>token_type=Bearer。为什么没有给我< code>access_token和

  • 我想避开keycloak登录页面。我将这个“避免keycloak默认登录页面和使用项目登录页面”链接引用到“http://localhost:5555/auth/realms/master/protocol/openid-connect/token”链接,并能够使用post方法获得访问令牌。 在此步骤中获得访问令牌后,提到要传递以下头部 标题:{ 但是不清楚将访问令牌传递到哪里,响应是什么,请求类

  • 我目前正在构建一个web应用程序,其后端完全构建在API Gateway/lambda中。我构建了一个自定义的JSON Web令牌(JWT)授权器来授权用户。目前我正在头字段中传递令牌。 不幸的是,我只能定义一个头字段,将令牌发送到API网关。我的应用程序将令牌存储在一个cookie中。 有什么办法吗?谢谢!

  • 接口说明 获取授权代码 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 API地址 GET /wish3dearth/api/access/v1.0.0/getHardWareCode 是否需要登录 否 请求字段说明 无 响应字段说明 无 响应成功示例 { "code": 0, "data": "134305892", "message":