2017-09-05 2 views
0

keycloak adminクライアントからユーザーを作成したいが、私は400のステータスを取得している。keycloakでkeycloakでユーザーを作成するadmin client returns 400

  • keycloakクライアントのログを有効にすることはできません。そのため、httpコールの実行についてはわかりません。
  • 私は郵便配達員を通じてユーザーを作成することができました。
  • 検索し、あなたが私のコードですべてのエラーを参照しています

(下記参照)、ユーザの作業を取得しますか?事は、私が同じkeycloakインスタンスを使用してユーザーを取得しようとするならば、それは動作しますが、ある400

 Keycloak keycloak = Keycloak.getInstance(keycloakUrl,"master", 
    keycloakAdminUsername, keycloakAdminPassword, 
        keycloakAdminClient); 
      UserRepresentation user = new UserRepresentation(); 
      user.setUsername("username"); 
      user.setFirstName("firstname"); 
      user.setEmail("[email protected]"); 
      user.setRequiredActions(Collections.<String>emptyList()); 
      user.setEnabled(true); 

      Response response = keycloak.realm(realm).users().create(user); 
      if (response.getStatus() != 201) { 
       log.error("Couldn't create user, status:{}", response.getStatus()); 
       } else { 
        log.info("User# created", user.getUsername()); 
        log.info("Keycloak response status: {}", 
response.getStatus()); 
        } 

は、ユーザ、ステータスを作成できませんでした。

UserResource userX = keycloak.realm(realm).users().get("8c1d29fd-8d6b-4dea-817f-3fc1421096f0"); 
log.debug(userX.toRepresentation().getUsername()); 

同じ私は、検索

log.debug("Getting users from keycloak"); 
    List<UserRepresentation> users = keycloak.realm(realm).users().search(username, 0, 10); 
    users.forEach(user -> log.info("username: {}", user.getUsername())); 
+0

これは 'kc'変数かtypoですか(代わりに' keycloak'ですか)? – Thomas

+0

確かに、それは悪いコピー貼り付けでした、私はそれを訂正しました – Grandmaster

+0

私は前に同じことをしましたが、残念ながら私はコードatmにアクセスできず、私のメモリはあまりにもうまく機能しません何を試すことができます:1)あなたの領域にユーザーを作成し管理することが許可されている管理者のユーザーを確認する2)必要なアクション(iircはここではうまくいない)を試してみてください)3)(一時的な)パスワード – Thomas

答えて

0

を使用する場合は、まあ、私は一種の愚かな私の目の解決策を、発見しました。クライアントは、keycloakサーバーと同じバージョンである必要があります。私のケースでは、例えば、キークローキングサーバが2.0.0であるため、2.0.0.Finalバージョンのkeycloak管理クライアントを手に入れました。私が理解している限り、それはUserRepresentationクラスに関するものです。

関連する問題