Ikr*_*yev 6 spring spring-boot keycloak
我在尝试通过 keycloak 管理客户端向用户分配角色时遇到问题。它总是返回错误的请求。首先,我使用新客户端在 keycloak 中创建了一个新领域。我创建了几个用户,并将领域管理客户端的所有角色分配给其中一个用户。我在 KeycloakBuilder 中使用了该用户的凭据。
现在管理客户端可以创建用户,但为用户分配角色会返回 400 错误请求。以下是代码片段
class KeycloakKonfig {
var keycloak: Keycloak = KeycloakBuilder.builder()
.serverUrl("http://localhost:8080/auth")
.username("username")
.password("password")
.realm("realm")
.clientId("clientId")
.clientSecret("clientSecret")
.resteasyClient(ResteasyClientBuilder().connectionPoolSize(20).register(CustomJacksonProvider()).build())
.build()
}
Run Code Online (Sandbox Code Playgroud)
控制器中的方法体
val savedRoleRepresentation = KeycloakKonfig().keycloak.realm("realm").roles().get("role").toRepresentation()
KeycloakKonfig().keycloak.realm("realm").users().get("userId").roles().realmLevel().add(Arrays.asList(savedRoleRepresentation))
Run Code Online (Sandbox Code Playgroud)
谢谢
问题出在keycloak版本上。我有 Keycloak 4.5.0,它不允许创建角色并通过 KeycloakBuilder 将其分配给用户。我切换到 Keycloak 4.8.3,一切都很完美。
| 归档时间: |
|
| 查看次数: |
3555 次 |
| 最近记录: |