2017-01-11 1 views
0

샘플과 같은 사용자 그룹을 얻을 수 없습니다. 샘플 : testsuite를 살펴보십시오. 예를 들어 : 그룹에 사용자를 수신 예에서사용자 키 클록 가져 오기 예외 없음

UserTest

GroupTest

샘플 코드의 회원입니다 :

List<GroupRepresentation> membership = realm.users().get(user.getId()).groups(); 

내 방식 : 1. 내가 관리 - CLI에 대한 keycloak 객체를 생성 myreal 영역의 클라이언트 :

this.keycloak = KeycloakBuilder.builder() 
      .serverUrl("http://localhost:18080/auth") 
      .realm("myrealm") 
      .username("admin") 
      .password("admin") 
      .clientId("admin-cli") 
      .resteasyClient(new ResteasyClientBuilder().connectionPoolSize(10).build()) 
      .build(); 
,451,515,
  1. 나는 좀하려고하면 사용자 :

    //this line works 
    final UserResource userr = this.keycloak.realms().realm("myrealm").users().get("admin"); 
    
    //this two doesnt, in both result is javax.ws.rs.NotFoundException: HTTP 404 Not Found 
    final UserRepresentation ur = userr.toRepresentation(); 
    final List<GroupRepresentation> groups = this.getRealm().users().get(user.getId()).groups(); 
    
    에서 keycloak에서

내가 2 사용자와 2 개 그룹 모든 사용자와 영역 "myrealm"를 만들어 관리 - CLI 두 그룹의 구성원입니다. admin은이 사용자 중 하나이며이 두 그룹의 구성원입니다.

내가 만든 사용자는 "myrealm"영역에 있으며 "admin"도 그 중 하나입니다.

나는 클라이언트와 영역에서 사용 가능한 모든 역할을 제공하려고 시도했지만이 변경 사항은 없습니다.

관리 - CLI는 내가 놓친 게 무엇

로컬 호스트

에 keycloak 응용 프로그램을 의미?

libs와 내가 사용하고 : 난 그냥 당신과 같은 문제에 발견

import org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder; 
import org.keycloak.admin.client.Keycloak; 
import org.keycloak.admin.client.KeycloakBuilder; 
import org.keycloak.admin.client.resource.RealmResource; 
import org.keycloak.admin.client.resource.UserResource; 
import org.keycloak.admin.client.resource.UsersResource; 
import org.keycloak.representations.idm.GroupRepresentation; 
import org.keycloak.representations.idm.UserRepresentation; 

답변

1

. 문제는 "get"메소드에서 발생했습니다. 인수는 사용자 이름 (admin)이 아니라 사용자 ID입니다. "494061c1-c8f3-44c9-8542-df895af81716"과 같은 것입니다.

필자의 경우 사용자 ID를 올바르게 전달하려고했지만 완전히 다른 무언가 인 토큰 ID를 사용했습니다.