Return 仅来自 keylcoak 用户端点的用户的特定字段
Return only specific fields of a user from keylcoak users endpoint
目前我有多个 Keycloak 用户。在我的前端,一个用户应该能够从 keycloak 接收所有用户以进行进一步处理。
这就是我想出使用这个端点的原因:KEYCLOAK_URL/auth/admin/realms/REALM/users
这给了我以下输出:
[
{
"id": "ebe12164-9097-49c0-a1dd-809dbc63b6bf",
"createdTimestamp": 1604691601645,
"username": "test@test.de",
"enabled": true,
"totp": false,
"emailVerified": false,
"firstName": "test",
"lastName": "test",
"email": "test@test.de",
"disableableCredentialTypes": [],
"requiredActions": [],
"notBefore": 0,
"access": {
"manageGroupMembership": false,
"view": true,
"mapRoles": false,
"impersonate": false,
"manage": false
}
},
...
]
问题:有没有办法限制keycloak返回用户的哪些字段?例如只有“id”和“用户名”而不是其他可能更敏感的东西,比如“access”部分?
要获取端点 KEYCLOAK_URL/auth/admin/realms/REALM/users
返回的内容,您需要知道类似管理员的用户(具有适当角色)的凭据,然后使用这些凭据代表该用户获取令牌用户最终使用该令牌从端点 KEYCLOAK_URL/auth/admin/realms/REALM/users
.
获取信息
所有这一切都表明,从类似管理员的用户角度来看,信息并不敏感,例如,没有共享用户凭据。因此,尝试过滤掉该端点发送的内容是没有意义的,因为该端点旨在供类似管理员的用户使用,他们无论如何都可以访问管理控制台上的所有信息。
In my frontend, one user should be able to receive all users from
keycloak for further processing.
即使您为该用户分配角色 'view-users' 以便该用户可以获取其他用户的信息,它仍然会附带您显示的所有信息。
假设你有一个后端,我会说更简单的解决方案是创建一个自定义端点,returns 你是用户列表。
目前我有多个 Keycloak 用户。在我的前端,一个用户应该能够从 keycloak 接收所有用户以进行进一步处理。
这就是我想出使用这个端点的原因:KEYCLOAK_URL/auth/admin/realms/REALM/users
这给了我以下输出:
[
{
"id": "ebe12164-9097-49c0-a1dd-809dbc63b6bf",
"createdTimestamp": 1604691601645,
"username": "test@test.de",
"enabled": true,
"totp": false,
"emailVerified": false,
"firstName": "test",
"lastName": "test",
"email": "test@test.de",
"disableableCredentialTypes": [],
"requiredActions": [],
"notBefore": 0,
"access": {
"manageGroupMembership": false,
"view": true,
"mapRoles": false,
"impersonate": false,
"manage": false
}
},
...
]
问题:有没有办法限制keycloak返回用户的哪些字段?例如只有“id”和“用户名”而不是其他可能更敏感的东西,比如“access”部分?
要获取端点 KEYCLOAK_URL/auth/admin/realms/REALM/users
返回的内容,您需要知道类似管理员的用户(具有适当角色)的凭据,然后使用这些凭据代表该用户获取令牌用户最终使用该令牌从端点 KEYCLOAK_URL/auth/admin/realms/REALM/users
.
所有这一切都表明,从类似管理员的用户角度来看,信息并不敏感,例如,没有共享用户凭据。因此,尝试过滤掉该端点发送的内容是没有意义的,因为该端点旨在供类似管理员的用户使用,他们无论如何都可以访问管理控制台上的所有信息。
In my frontend, one user should be able to receive all users from keycloak for further processing.
即使您为该用户分配角色 'view-users' 以便该用户可以获取其他用户的信息,它仍然会附带您显示的所有信息。
假设你有一个后端,我会说更简单的解决方案是创建一个自定义端点,returns 你是用户列表。