9.5. 역할 관리
스토리지 관리자는 radosgw-admin
명령을 사용하여 역할 및 해당 역할과 연결된 권한을 생성, 삭제 또는 업데이트할 수 있습니다.
역할은 사용자와 유사하며 권한 정책이 연결되어 있습니다. 모든 ID로 간주할 수 있습니다. 사용자가 역할을 가정하면 동적으로 생성된 임시 인증 정보 세트가 사용자에게 반환됩니다. 역할은 일부 S3 리소스에 액세스할 수 있는 권한이 없는 사용자, 애플리케이션 및 서비스에 대한 액세스를 위임하는 데 사용할 수 있습니다.
9.5.1. 역할 생성 링크 복사링크가 클립보드에 복사되었습니다!
radosgw-admin role create
명령을 사용하여 사용자의 역할을 생성합니다. 명령에 assume-role-policy-doc
매개 변수를 사용하여 사용자를 생성해야 합니다. 이 매개 변수는 엔터티에 역할을 가정할 수 있는 권한을 부여하는 신뢰 관계 정책 문서입니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- Ceph Object Gateway 설치
- Ceph Object Gateway 노드에 대한 루트 수준 액세스.
- S3 버킷이 생성되었습니다.
- 사용자 액세스 권한이 있는 S3 사용자
프로세스
역할을 생성합니다.
구문
radosgw-admin role create --role-name=ROLE_NAME [--path=="PATH_TO_FILE"] [--assume-role-policy-doc=TRUST_RELATIONSHIP_POLICY_DOCUMENT]
radosgw-admin role create --role-name=ROLE_NAME [--path=="PATH_TO_FILE"] [--assume-role-policy-doc=TRUST_RELATIONSHIP_POLICY_DOCUMENT]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow --path
의 값은 기본적으로/
입니다.
9.5.2. 역할 가져오기 링크 복사링크가 클립보드에 복사되었습니다!
get
명령을 사용하여 역할에 대한 정보를 가져옵니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- Ceph Object Gateway 설치
- Ceph Object Gateway 노드에 대한 루트 수준 액세스.
- S3 버킷이 생성되었습니다.
- 생성된 역할입니다.
- 사용자 액세스 권한이 있는 S3 사용자
프로세스
역할에 대한 정보를 가져옵니다.
구문
radosgw-admin role get --role-name=ROLE_NAME
radosgw-admin role get --role-name=ROLE_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.3. 역할 나열 링크 복사링크가 클립보드에 복사되었습니다!
list 명령을 사용하여 특정 경로의 역할을 나열
할 수 있습니다.
모든 역할을 나열하려면 radosgw-admin 역할 목록 --account-id <RGWaccountID> 명령에 계정 ID
를 지정해야 합니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- Ceph Object Gateway 설치
- Ceph Object Gateway 노드에 대한 루트 수준 액세스.
- S3 버킷이 생성되었습니다.
- 생성된 역할입니다.
- 사용자 액세스 권한이 있는 S3 사용자
프로세스
역할을 나열합니다.
구문
radosgw-admin role list
radosgw-admin role list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.4. 역할의 역할 정책 문서 업데이트 링크 복사링크가 클립보드에 복사되었습니다!
modify
명령으로 역할을 가정할 수 있도록 엔터티 권한을 부여하는 assume 역할 정책 문서를 업데이트할 수 있습니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- Ceph Object Gateway 설치
- Ceph Object Gateway 노드에 대한 루트 수준 액세스.
- S3 버킷이 생성되었습니다.
- 생성된 역할입니다.
- 사용자 액세스 권한이 있는 S3 사용자
프로세스
역할의 assume 역할 정책 문서를 수정합니다.
구문
radosgw-admin role-trust-policy modify --role-name=ROLE_NAME --assume-role-policy-doc=TRUST_RELATIONSHIP_POLICY_DOCUMENT
radosgw-admin role-trust-policy modify --role-name=ROLE_NAME --assume-role-policy-doc=TRUST_RELATIONSHIP_POLICY_DOCUMENT
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.5. 역할에 연결된 권한 정책 가져오기 링크 복사링크가 클립보드에 복사되었습니다!
get
명령을 사용하여 역할에 연결된 특정 권한 정책을 가져올 수 있습니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- Ceph Object Gateway 설치
- Ceph Object Gateway 노드에 대한 루트 수준 액세스.
- S3 버킷이 생성되었습니다.
- 생성된 역할입니다.
- 사용자 액세스 권한이 있는 S3 사용자
프로세스
권한 정책을 가져옵니다.
구문
radosgw-admin role-policy get --role-name=ROLE_NAME --policy-name=POLICY_NAME
radosgw-admin role-policy get --role-name=ROLE_NAME --policy-name=POLICY_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예
radosgw-admin role-policy get --role-name=S3Access1 --policy-name=Policy1
[root@host01 ~]# radosgw-admin role-policy get --role-name=S3Access1 --policy-name=Policy1 { "Permission policy": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"s3:*\"],\"Resource\":\"arn:aws:s3:::example_bucket\"}]}" }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.6. 역할 삭제 링크 복사링크가 클립보드에 복사되었습니다!
연결된 권한 정책을 제거한 후에만 역할을 삭제할 수 있습니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- Ceph Object Gateway 설치
- Ceph Object Gateway 노드에 대한 루트 수준 액세스.
- 생성된 역할입니다.
- S3 버킷이 생성되었습니다.
- 사용자 액세스 권한이 있는 S3 사용자
프로세스
역할에 연결된 정책을 삭제합니다.
구문
radosgw-admin role policy delete --role-name=ROLE_NAME --policy-name=POLICY_NAME
radosgw-admin role policy delete --role-name=ROLE_NAME --policy-name=POLICY_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예
radosgw-admin role policy delete --role-name=S3Access1 --policy-name=Policy1
[root@host01 ~]# radosgw-admin role policy delete --role-name=S3Access1 --policy-name=Policy1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 역할을 삭제합니다.
구문
radosgw-admin role delete --role-name=ROLE_NAME
radosgw-admin role delete --role-name=ROLE_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예
radosgw-admin role delete --role-name=S3Access1
[root@host01 ~]# radosgw-admin role delete --role-name=S3Access1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.7. 역할에 연결된 정책 업데이트 링크 복사링크가 클립보드에 복사되었습니다!
put
명령을 사용하여 역할에 연결된 인라인 정책을 추가하거나 업데이트할 수 있습니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- Ceph Object Gateway 설치
- Ceph Object Gateway 노드에 대한 루트 수준 액세스.
- S3 버킷이 생성되었습니다.
- 생성된 역할입니다.
- 사용자 액세스 권한이 있는 S3 사용자
프로세스
인라인 정책을 업데이트합니다.
구문
radosgw-admin role-policy put --role-name=ROLE_NAME --policy-name=POLICY_NAME --policy-doc=PERMISSION_POLICY_DOCUMENT
radosgw-admin role-policy put --role-name=ROLE_NAME --policy-name=POLICY_NAME --policy-doc=PERMISSION_POLICY_DOCUMENT
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예
radosgw-admin role-policy put --role-name=S3Access1 --policy-name=Policy1 --policy-doc=\{\"Version\":\"2012-10-17\",\"Statement\":\[\{\"Effect\":\"Allow\",\"Action\":\[\"s3:*\"\],\"Resource\":\"arn:aws:s3:::example_bucket\"\}\]\}
[root@host01 ~]# radosgw-admin role-policy put --role-name=S3Access1 --policy-name=Policy1 --policy-doc=\{\"Version\":\"2012-10-17\",\"Statement\":\[\{\"Effect\":\"Allow\",\"Action\":\[\"s3:*\"\],\"Resource\":\"arn:aws:s3:::example_bucket\"\}\]\}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 예제에서는
Policy1
을example_bucket
의 모든 S3 작업을 허용하는S3Access1
역할에 연결합니다.
9.5.8. 역할에 연결된 권한 정책 나열 링크 복사링크가 클립보드에 복사되었습니다!
list 명령을 사용하여 역할에 연결된 권한 정책의 이름을 나열
할 수 있습니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- Ceph Object Gateway 설치
- Ceph Object Gateway 노드에 대한 루트 수준 액세스.
- S3 버킷이 생성되었습니다.
- 생성된 역할입니다.
- 사용자 액세스 권한이 있는 S3 사용자
프로세스
권한 정책의 이름을 나열합니다.
구문
radosgw-admin role-policy list --role-name=ROLE_NAME
radosgw-admin role-policy list --role-name=ROLE_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예
radosgw-admin role-policy list --role-name=S3Access1
[root@host01 ~]# radosgw-admin role-policy list --role-name=S3Access1 [ "Policy1" ]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.9. 역할에 연결된 정책 삭제 링크 복사링크가 클립보드에 복사되었습니다!
rm
명령을 사용하여 역할에 연결된 권한 정책을 삭제할 수 있습니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- Ceph Object Gateway 설치
- Ceph Object Gateway 노드에 대한 루트 수준 액세스.
- S3 버킷이 생성되었습니다.
- 생성된 역할입니다.
- 사용자 액세스 권한이 있는 S3 사용자
프로세스
권한 정책을 삭제합니다.
구문
radosgw-admin role policy delete --role-name=ROLE_NAME --policy-name=POLICY_NAME
radosgw-admin role policy delete --role-name=ROLE_NAME --policy-name=POLICY_NAME
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예
radosgw-admin role policy delete --role-name=S3Access1 --policy-name=Policy1
[root@host01 ~]# radosgw-admin role policy delete --role-name=S3Access1 --policy-name=Policy1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.10. 역할의 세션 기간 업데이트 링크 복사링크가 클립보드에 복사되었습니다!
update
명령을 사용하여 역할의 세션 기간을 업데이트하여 제공된 인증 정보를 사용하여 사용자에게 로그인할 수 있는 시간을 제어할 수 있습니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- Ceph Object Gateway 설치
- Ceph Object Gateway 노드에 대한 루트 수준 액세스.
- S3 버킷이 생성되었습니다.
- 생성된 역할입니다.
- 사용자 액세스 권한이 있는 S3 사용자
프로세스
update
명령을 사용하여 max-session-duration을 업데이트합니다.구문
radosgw-admin role update --role-name=ROLE_NAME --max-session-duration=7200
[root@node1 ~]# radosgw-admin role update --role-name=ROLE_NAME --max-session-duration=7200
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예
radosgw-admin role update --role-name=test-sts-role --max-session-duration=7200
[root@node1 ~]# radosgw-admin role update --role-name=test-sts-role --max-session-duration=7200
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
역할을 나열하여 업데이트를 확인합니다.
예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow