Oauth 2.0 从KeyClope令牌终结点获取授权代码

Oauth 2.0 从KeyClope令牌终结点获取授权代码,oauth-2.0,keycloak,openid-connect,Oauth 2.0,Keycloak,Openid Connect,keydape文档中写道,令牌端点可用于获取授权代码流中的临时代码或通过隐式流、直接授权或客户端授权获取令牌 但即使使用response_type=code,我也无法获得授权代码:只有令牌。我该怎么做 我的测试请求: curl -X POST \ http://localhost:8080/auth/realms/my-realm/protocol/openid-connect/token \ -H 'Cache-Control: no-cache' \ -H 'Connection

keydape文档中写道,令牌端点可用于获取授权代码流中的临时代码或通过隐式流、直接授权或客户端授权获取令牌

但即使使用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'

来源:

响应类型
只能用于授权端点的授权请求(
http://localhost:8080/auth/realms/my-realm/protocol/openid connect/auth
),在这种情况下(在令牌请求中)将忽略它。可以从授权端点获取授权代码,如下所示:

另见:

响应类型
只能用于授权端点的授权请求(
http://localhost:8080/auth/realms/my-realm/protocol/openid connect/auth
),在这种情况下(在令牌请求中)将忽略它。可以从授权端点获取授权代码,如下所示:

另见:

但是有了这个端点,我不总是能得到登录页面吗?“grant_type=password”和“prompt=none”似乎被忽略(“prompt”在OAuth2中不存在,但来自OIDC)
prompt
只能用于身份验证(授权)请求,它将被忽略。请参考:所以,如果我理解正确的话:发送凭证和获取授权码作为单个请求的响应是根本不可能的?您是否希望在没有最终用户身份验证的情况下获取访问令牌,不是吗?如果是这样的话,您可以使用。不,我需要在KeyClope管理的一组站点和另一个具有自己的身份提供程序的站点之间设置SSO。但是使用此端点,我不总是可以获得登录页面吗?“grant_type=password”和“prompt=none”似乎被忽略(“prompt”在OAuth2中不存在,但来自OIDC)
prompt
只能用于身份验证(授权)请求,它将被忽略。请参考:所以,如果我理解正确的话:发送凭证和获取授权码作为单个请求的响应是根本不可能的?您是否希望在没有最终用户身份验证的情况下获取访问令牌,不是吗?如果是这样的话,您可以使用。不,我需要在KeyClope管理的一组站点和另一个具有自己的身份提供程序的站点之间设置SSO。