Jwt KeyClope:冒充错误客户端的mints令牌

Jwt KeyClope:冒充错误客户端的mints令牌,jwt,keycloak,access-token,impersonation,Jwt,Keycloak,Access Token,Impersonation,我试图通过使用信任客户端并为公共客户端发出令牌来通过模拟发出访问令牌。我已经设置了令牌交换权限,请求可以正常工作。但是,我的问题是,颁发的令牌似乎在AZP中包含错误的客户端 以下是我的要求: curl -v -X POST \ -d "client_id=impersonator-client" \ -d "client_secret=<secret omitted>" \ --data-urlencode "grant_type=urn:ietf:param

我试图通过使用信任客户端并为公共客户端发出令牌来通过模拟发出访问令牌。我已经设置了令牌交换权限,请求可以正常工作。但是,我的问题是,颁发的令牌似乎在AZP中包含错误的客户端

以下是我的要求:

curl -v -X POST \
    -d "client_id=impersonator-client" \
    -d "client_secret=<secret omitted>" \
    --data-urlencode "grant_type=urn:ietf:params:oauth:grant-type:token-exchange" \
    -d "audience=target-client" \
    --data-urlencode "requested_subject=john.doe" \
    http://localhost:8080/auth/realms/swarm/protocol/openid-connect/token
curl-v-X POST\
-d“客户端\u id=模拟客户端”\
-d“客户机密=”\
--数据urlencode“授权类型=urn:ietf:params:oauth:grant类型:令牌交换”\
-d“受众=目标客户”\
--数据urlencode“请求的主题=john.doe”\
http://localhost:8080/auth/realms/swarm/protocol/openid-连接/令牌
基本上,我希望通过使用“模拟客户端”模拟用户来获得用户“john.doe”的访问令牌。颁发的令牌应为“目标客户端”生成,但是AZP仍然包含“模拟客户端”

我这样做的原因是,应该可以使用外部身份验证工作流登录,最终提供一个访问令牌,然后可以在我的后端服务器上进行验证,该服务器使用受信任的客户端进行模拟

根据docs(),受众应该定义应该为其生成令牌的目标客户机

关于权限:

我已经使用引用“模拟客户端”的客户端策略设置了“admin imposating.permission.users”权限。“目标客户机”本身配置有权限“令牌交换.权限.客户机.e236d39c-9b9c-4815-b734-90364fea4e91”,其中包括引用“模拟客户机”的客户机策略。我遗漏了什么吗?这里的问题是,文件似乎是错的。文档使用“用户模拟.权限.用户”而不是“管理员模拟.权限.用户”。当我这样尝试时,请求甚至被拒绝了

这是钥匙斗篷里的虫子还是我做错了什么

提前谢谢