18.7. 역할 작업
영역 역할 생성
역할
끝점을 사용하여 영역 역할을 생성합니다.
$ kcadm.sh create roles -r demorealm -s name=user -s 'description=Regular user with a limited set of permissions'
클라이언트 역할 생성
- 클라이언트를 식별합니다.
get
명령을 사용하여 사용 가능한 클라이언트를 나열합니다.$ kcadm.sh get clients -r demorealm --fields id,clientId
clientId
특성을 사용하여클라이언트/ID/roles
와 같은 엔드포인트 URI를 구성하여 새 역할을 생성합니다.예를 들면 다음과 같습니다.
$ kcadm.sh create clients/a95b6af3-0bdc-4878-ae2e-6d61a4eca9a0/roles -r demorealm -s name=editor -s 'description=Editor can edit, and publish any article'
영역 역할 나열
roles
끝점에서 get
명령을 사용하여 기존 영역 역할을 나열합니다.
$ kcadm.sh get roles -r demorealm
get-roles
명령을 사용할 수도 있습니다.
$ kcadm.sh get-roles -r demorealm
클라이언트 역할 나열
Red Hat Single Sign-On에는 영역 및 클라이언트 역할 목록을 단순화하는 전용 get-roles
명령이 있습니다. 명령은 get
명령의 확장이며 get
명령과 동일하게 작동하지만 역할을 나열하기 위한 추가 의미가 있습니다.
clientId(--cclientid
) 옵션 또는 id
(-cid ) 옵션을 전달하여
명령을 사용하여 클라이언트 역할을 나열할 클라이언트를 식별합니다.
get-
roles
예를 들면 다음과 같습니다.
$ kcadm.sh get-roles -r demorealm --cclientid realm-management
특정 영역 역할 가져오기
get
명령과 역할 이름을
사용하여 특정 영역 역할, roles/ROLE_NAME
에 대한 끝점 URI를 구성합니다. 여기서 user
는 기존 역할의 이름입니다.
예를 들면 다음과 같습니다.
$ kcadm.sh get roles/user -r demorealm
get-roles
명령을 사용하여 역할 이름(--rolename
옵션) 또는 ID(-roleid
옵션)를 전달할 수 있습니다.
예를 들면 다음과 같습니다.
$ kcadm.sh get-roles -r demorealm --rolename user
특정 클라이언트 역할 가져오기
get-roles
명령을 사용하여 clientId 속성(--cclientid
옵션) 또는 ID 속성(-cid
옵션)을 전달하여 클라이언트를 식별하고 역할 이름(--rolename
옵션) 또는 role ID 특성(--roleid
)을 전달하여 특정 클라이언트 역할을 식별합니다.
예를 들면 다음과 같습니다.
$ kcadm.sh get-roles -r demorealm --cclientid realm-management --rolename manage-clients
영역 역할 업데이트
특정 영역 역할을 가져오는 데 사용한 엔드포인트 URI와 함께 update
명령을 사용합니다.
예를 들면 다음과 같습니다.
$ kcadm.sh update roles/user -r demorealm -s 'description=Role representing a regular user'
클라이언트 역할 업데이트
특정 클라이언트 역할을 가져오는 데 사용한 엔드포인트 URI와 함께 update
명령을 사용합니다.
예를 들면 다음과 같습니다.
$ kcadm.sh update clients/a95b6af3-0bdc-4878-ae2e-6d61a4eca9a0/roles/editor -r demorealm -s 'description=User that can edit, and publish articles'
영역 역할 삭제
특정 영역 역할을 가져오는 데 사용한 엔드포인트 URI와 함께 delete
명령을 사용합니다.
예를 들면 다음과 같습니다.
$ kcadm.sh delete roles/user -r demorealm
클라이언트 역할 삭제
특정 클라이언트 역할을 가져오는 데 사용한 엔드포인트 URI와 함께 delete
명령을 사용합니다.
예를 들면 다음과 같습니다.
$ kcadm.sh delete clients/a95b6af3-0bdc-4878-ae2e-6d61a4eca9a0/roles/editor -r demorealm
복합 역할에 할당, 사용 가능한 유효 영역 역할 나열
get-roles
명령을 사용하여 복합 역할에 할당된 사용 가능한 유효 영역 역할을 나열합니다.
복합 역할에 할당된 영역 역할을 나열하려면 대상 복합 역할을 이름(
-rname
옵션) 또는 ID(--rid
옵션)로 지정합니다.예를 들면 다음과 같습니다.
$ kcadm.sh get-roles -r demorealm --rname testrole
-- effective
옵션을 사용하여 유효 영역 역할을 나열합니다.예를 들면 다음과 같습니다.
$ kcadm.sh get-roles -r demorealm --rname testrole --effective
--available
옵션을 사용하여 복합 역할에 추가할 수 있는 영역 역할을 나열합니다.예를 들면 다음과 같습니다.
$ kcadm.sh get-roles -r demorealm --rname testrole --available
복합 역할에 할당, 사용 가능하고 효과적인 클라이언트 역할 나열
get-roles
명령을 사용하여 복합 역할에 할당, 사용 가능한 유효 클라이언트 역할을 나열합니다.
복합 역할에 할당된 클라이언트 역할을 나열하려면 이름(
--rname
옵션) 또는 ID(-rid 옵션) 및 client by the clientId 속성(
option) 또는 ID(---
cclientidcid
옵션)로 대상 복합 역할을 나열할 수 있습니다.예를 들면 다음과 같습니다.
$ kcadm.sh get-roles -r demorealm --rname testrole --cclientid realm-management
-- effective
옵션을 사용하여 유효 영역 역할을 나열합니다.예를 들면 다음과 같습니다.
$ kcadm.sh get-roles -r demorealm --rname testrole --cclientid realm-management --effective
--available
옵션을 사용하여 대상 복합 역할에 추가할 수 있는 영역 역할을 나열합니다.예를 들면 다음과 같습니다.
$ kcadm.sh get-roles -r demorealm --rname testrole --cclientid realm-management --available
복합 역할에 영역 역할 추가
Red Hat Single Sign-On은 영역 역할 및 클라이언트 역할을 추가하기 위한 애드온
역할을 제공합니다.
이 예제에서는 복합 역할 testrole
에 사용자
역할을 추가합니다.
$ kcadm.sh add-roles --rname testrole --rolename user -r demorealm
복합 역할에서 영역 역할 제거
Red Hat Single Sign-On은 영역 역할 및 클라이언트 역할을 제거하기 위한 remove-roles
명령을 제공합니다.
다음 예제에서는 대상 복합 역할 testrole
에서 user
역할을 제거합니다.
$ kcadm.sh remove-roles --rname testrole --rolename user -r demorealm
영역 역할에 클라이언트 역할 추가
Red Hat Single Sign-On은 영역 역할 및 클라이언트 역할을 추가하기 위한 애드온
역할을 제공합니다.
다음 예제에서는 클라이언트 영역 관리 ,
및 create-
clientview-users
에 정의된 역할을 testrole
복합 역할에 추가합니다.
$ kcadm.sh add-roles -r demorealm --rname testrole --cclientid realm-management --rolename create-client --rolename view-users
클라이언트 역할에 클라이언트 역할 추가
get-roles
명령을 사용하여 복합 클라이언트 역할의 ID를 결정합니다.예를 들면 다음과 같습니다.
$ kcadm.sh get-roles -r demorealm --cclientid test-client --rolename operations
-
클라이언트가
test-client
라는 클라이언트 역할,support
라는 클라이언트 역할과 "fc400897-ef6a-4e8c-872b-1581b7fa8a7a71" ID가 있는 복합 역할이 되는 클라이언트 역할이 있다고 가정합니다. 다음 예제를 사용하여 복합 역할에 다른 역할을 추가합니다.
$ kcadm.sh add-roles -r demorealm --cclientid test-client --rid fc400897-ef6a-4e8c-872b-1581b7fa8a71 --rolename support
get-roles --all
명령을 사용하여 복합 역할의 역할을 나열합니다.예를 들면 다음과 같습니다.
$ kcadm.sh get-roles --rid fc400897-ef6a-4e8c-872b-1581b7fa8a71 --all
복합 역할에서 클라이언트 역할 제거
remove-roles
명령을 사용하여 복합 역할에서 클라이언트 역할을 제거합니다.
다음 예제를 사용하여 testrole
복합 역할에서 클라이언트 realm-management
, create-client
역할 및 view-users
역할에 정의된 두 역할을 제거합니다.
$ kcadm.sh remove-roles -r demorealm --rname testrole --cclientid realm-management --rolename create-client --rolename view-users
그룹에 클라이언트 역할 추가
add-roles
명령을 사용하여 영역 역할 및 클라이언트 역할을 추가합니다.
다음 예제에서는 클라이언트 realm-management
,create-client
및 view-users
에 정의된 역할을 Group
그룹(-gname
옵션)에 추가합니다. 또는 그룹을 ID(-gid
옵션)로 지정할 수도 있습니다.
자세한 내용은 그룹 작업을 참조하십시오.
$ kcadm.sh add-roles -r demorealm --gname Group --cclientid realm-management --rolename create-client --rolename view-users
그룹에서 클라이언트 역할 제거
remove-roles
명령을 사용하여 그룹에서 클라이언트 역할을 제거합니다.
다음 예제에서는 Group
그룹에서 클라이언트 영역 관리
,create-client
및 view-users
에 정의된 두 개의 역할을 제거합니다.
자세한 내용은 그룹 작업을 참조하십시오.
$ kcadm.sh remove-roles -r demorealm --gname Group --cclientid realm-management --rolename create-client --rolename view-users