在Keycloak(2.4.0.Final)中通过Admin Rest API成功创建用户后,我无法使用此用户登录。我只能进入管理控制台并重置用户密码。
按照使用的代码。
Keycloak keycloak = Keycloak.getInstance(
"http://localhost:8080/auth",
"master",
"admin",
"admin",
"admin-cli");
CredentialRepresentation credential = new CredentialRepresentation();
credential.setType(CredentialRepresentation.PASSWORD);
credential.setValue("12345678");
credential.setTemporary(false);
UserRepresentation user = new UserRepresentation();
user.setUsername("testBackend");
user.setFirstName("testBackend");
user.setLastName("testBackend");
user.setEmail("testBackend@testBackend.testBackend");
user.setEnabled(true);
user.setCredentials(Arrays.asList(credential));
keycloak.realm("realm-test").users().create(user);
答案 0 :(得分:6)
keycloak不支持使用密码创建用户(API),您需要再次调用以注册该用户的密码:
UserResource userResource=kc.realm("master").users().get(id);
CredentialRepresentation newCredential = new CredentialRepresentation();
newCredential.setType(PASSWORD);
newCredential.setValue("Tersting1");
newCredential.setTemporary(false);
userResource.resetPassword(newCredential);`