Permissions KeyClope将权限与角色一起包含到访问令牌中
我一直在使用keydape设置授权,并根据资源和权限设置了特定的角色和权限,但JWT访问令牌只包含角色的详细信息,而不包含分配给用户的权限 我希望访问令牌包含权限详细信息,并已在KeyClope文档上尝试了以下方法: 1) 使用权限票证无法使用生成票证Permissions KeyClope将权限与角色一起包含到访问令牌中,permissions,authorization,token,keycloak,entitlements,Permissions,Authorization,Token,Keycloak,Entitlements,我一直在使用keydape设置授权,并根据资源和权限设置了特定的角色和权限,但JWT访问令牌只包含角色的详细信息,而不包含分配给用户的权限 我希望访问令牌包含权限详细信息,并已在KeyClope文档上尝试了以下方法: 1) 使用权限票证无法使用生成票证 http://${host}:${port}/auth/realms/${realm_name}/authz/protection/permission 它表明: { "error": "invalid_bearer_token",
http://${host}:${port}/auth/realms/${realm_name}/authz/protection/permission
它表明:
{
"error": "invalid_bearer_token",
"error_description": "Could not obtain bearer access_token from request."
}
因此无法生成RPT并获取权限的详细信息
还尝试使用授权API
2) 使用授权API:
curl -X GET \
-H "Authorization: Bearer ${access_token}" \
"http://localhost:8080/auth/realms/hello-world-authz/authz/entitlement/${resource_server_id}"
我试着用邮递员,结果显示404找不到
任何人都可以向我展示将权限包含在访问令牌中或正确生成RPT的正确过程。KeyClope为授权服务提供了一个发现文档。您可以从以下url获取
curl -X GET http://localhost:8080/auth/realms/{realm}/.well-known/uma2-configuration -H "Authorization: Bearer ${access_token}"
这里localhost和8080用于keydepost主机和端口
错误表示您正在使用的令牌对客户端无效
我可以使用下面的命令获取RPT
curl -X POST http://localhost:8080/auth/realms/${realm}/protocol/openid-connect/token -H "Authorization: Bearer ${access_token}" --data "grant_type=urn:ietf:params:oauth:grant-type:uma-ticket" --data "audience={resource_server_client_id}" --data "permission=Resource#Scope"
keydape使用RPT响应客户机我可以提取分配给用户的所有权限吗,因为这里我只获得与资源和用户相关的权限。我只想在用户登录时这样做。根据权限,我应该能够填充我的UI,但我不想使用资源策略。根据文档,您可以使用/auth/realms/${realm}/authz/protection/uma策略