我再次在我的 keycloak 服务上通过 restapi 创建用户时遇到了麻烦。它正在创建一个用户,但之后没有分配正确的角色。
发现代码在以下部分失败
private void assignRoleToUser(String userId, String role){
Keycloak keycloak = getAdminKeycloak();
UsersResource usersResource = keycloak.realm(realm).users();
UserResource userResource = usersResource.get(userId);
ClientResource clientResource =keycloak.realm(realm).clients().get(clientId);
RoleRepresentation clientRole = clientResource.roles().get(role).toRepresentation(); //<-- here
userResource.roles().clientLevel(clientId).add(Collections.singletonList(clientRole));
}
它返回给我一个 HTTP 404 错误。深入挖掘,看起来该.roles()
方法失败了。用户是在我的 keycloak 中创建的,只是没有分配我的角色。.roles()
:
@Path("/roles")
RolesResource roles();
知道如何解决这个问题吗?到现在心里很郁闷。