Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

beforeafterdescription
 

GET /realms

GET /realms/a/b

list realms starting at given root:
all realms in the former case, realms rooted at /a/b in the latter case
 GET /realms/a/b/cread realm /a/b/c
 POST /realms/a/bcreate realm under /a/b
 PUT /realms/a/b/c/d

update realm /a/b/c/d

 DELETE /realms/a/bdelete realm /a/b (and all sub-realms)
GET /usersGET /users
GET /users;realm=/a/b 
list users under the given realm (e.g. assigned to given realm and related sub-realms):
all users in the former case, users in realm /a/b (all all sub-realms) in the latter case
POST /usersPOST /users
POST /users?realm=/a/b 
create user under the given realm:
root realm in the former case, /a/b in the latter case 
 PUT /users/{userId}?realm=/a/bmove user with id {userId} under realm /a/b
GET /users/searchGET /users/search
GET /users/search;realm=/a/b 
search users under the given realm:
root realm in the former case, /a/b in the latter case
GET /rolesGET /rolesgroups
GET /rolesgroups;realm=/a/b 
see users
POST /roles

POST /rolesgroups
POST /rolesgroups?realm=/a/b

see users
 PUT /rolesgroups/{roleIdgroupId}?realm=/a/bmove role grpup with id {roleIdgroupId} under realm /a/b
GET /roles/searchGET /rolesgroups/search
GET /rolesgroups/search;realm=/a/b 
see users
GET /roles/{roleId}/parent  
GET /roles/{roleId}/children  

...

The idea is that any user U assigned to a role R, which provides entitlements E1...En for realms Re1...Rek can exercise Ei on entities (users or rolesgroups, depending on the type of Ei) under any Rej or related sub-realms.

...

Let's suppose that we want to implement the following scenario:
Administrator A can create users under realm R5 but not under realm R7, administrator B can update users under realm R6 and R8, administrator C can update roles groups under realm R8.

As default, Syncope will have defined the following entitlements, among others:

  • USER_CREATEUSER_UPDATE,   ROLEGROUP_UPDATE

Here it follows how entitlements should be assigned (via roles) to administrators in order to implement the scenario above:

  • A: USER_CREATE on R5
  • B: USER_UPDATE on R6 and R8
  • C: ROLEGROUP_UPDATE on R8

...

  • R8

...

  • D: ROLE_READ + ROLE_CREATE + ROLE_UPDATE + ROLE_DELETE only on role R (not the whole realm R8)