postman 如何创建一个新的用户与 Postman 和分配组在keyclock?

mspsb9vt  于 2022-11-07  发布在  Postman
关注(0)|答案(3)|浏览(178)

我使用此JSON创建一个新用户,它对我很有效,但它没有将groups "groups":["APIs"]选项卡中声明的组分配给该用户
杰森:

{ 
   "username":"1prueba@demo.com",
   "firstName":"1pruebattributesFN",
   "lastName":"1pruebattributesAP",
   "email":"1prueba@demo.com",
   "enabled":true,
   "groups":["APIs"],
   "credentials":[ 
      { 
         "temporary": false,
         "type":"password",
         "value":"1234"
      }
   ],
   "attributes":
      { 
         "EmailVerifiedvn":"TRUE",
         "Enabledvn":"TRUE",
         "Entity":"[{\"id\":\"3411982108\",\"name\":\"3411982108 - Claro Home  PAGO APP 2\"}]",
         "State":"Activo",
         "UserCreateDate":"202001031650Z",
         "UserLastModifiedDate":"202001031655Z",
         "UserStatus":"CONFIRMED"
      }
}

用户已创建,但未将组分配给用户。
在我的键盘锁中,我声明了3个组:
groups created
谢谢你的好意。

wydwbb8l

wydwbb8l1#

更新日期:

在Keycloak 17中,它可以被直接赋值。参见Hernaldo的答案。

老者道:

我不认为它的工作方式,你可以使用下面的API来分配一个用户到一个组:

Request URL: http://localhost:8080/auth/admin/realms/{realm}/users/{userId}/groups/{groupId}
    Request Method: PUT

来源:Keycloak Admin Rest API Docs

628mspwn

628mspwn2#

在keycloak 17中,它可以直接赋值:
首先,您必须在Keycloak中创建“mygroup”组

POST
http://<ip>:8080/admin/realms/master/users

表头

Name: Authorization
Value: Bearer <Admin cli Access token>

车身原始数据

{"enabled":true,"username":"usergrupo","email":"usergrupo@gmail.com","firstName":"functest","lastName":"functest", "groups":["migrupo", "miotrogrupo"], "credentials":[{"type":"password","value":"123","temporary":false}]}

最后,将在该组中创建关联的用户
文件:
https://www.keycloak.org/docs-api/12.0/rest-api/#_userrepresentation

mwecs4sa

mwecs4sa3#

// Step 1 - Create User 
// Step 2 - Join Group(s) to this user

javax.ws.rs.core.Response response = KeycloakBuilder.builder().build().realm("your-realm-name").users().create(userRepresentation);
if (response != null && response.getStatusInfo().getFamily() == Family.SUCCESSFUL) 
{
    KeycloakBuilder.builder().build().realm("your-realm-name").users().get(CreatedResponseUtil.getCreatedId(response)).joinGroup("your-group-id");
}

相关问题