2016-12-08 76 views
3

在Keycloak(2.4.0.Final)中通過Admin Rest API成功創建用戶後,無法使用此用戶登錄。我只能進入管理控制檯並重置用戶的密碼。用Spring Rest API創建用戶後,無法登錄到Keycloak

按照使用的代碼。

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("[email protected]"); 
    user.setEnabled(true); 
    user.setCredentials(Arrays.asList(credential)); 

    keycloak.realm("realm-test").users().create(user); 

回答

6

keycloak不支持創建用戶(API)與密碼,u需要撥打另一個電話,以該用戶註冊的密碼:

UserResource userResource=kc.realm("master").users().get(id); 
CredentialRepresentation newCredential = new CredentialRepresentation(); 
newCredential.setType(PASSWORD); 
newCredential.setValue("Tersting1"); 
newCredential.setTemporary(false); 
userResource.resetPassword(newCredential);` 
相關問題