1.2. 다중 클러스터 엔진 Operator 역할 기반 액세스 제어
RBAC는 콘솔 수준 및 API 수준에서 검증됩니다. 콘솔의 작업은 사용자 액세스 역할 권한에 따라 활성화하거나 비활성화할 수 있습니다. 제품의 특정 라이프사이클에 대한 RBAC에 대한 자세한 내용은 다음 섹션을 참조하십시오.
1.2.1. 역할 개요 링크 복사링크가 클립보드에 복사되었습니다!
일부 제품 리소스는 클러스터 전체이며 일부는 네임스페이스 범위입니다. 일관된 액세스 제어를 위해 사용자에게 클러스터 역할 바인딩 및 네임스페이스 역할 바인딩을 적용해야 합니다. 지원되는 다음 역할 정의의 표 목록을 확인합니다.
1.2.1.1. 역할 정의 표 링크 복사링크가 클립보드에 복사되었습니다!
| Role | 정의 | 
|---|---|
|   
										  |   
										OpenShift Container Platform 기본 역할입니다.   | 
|   
										  |   
										  | 
|   
										  |   
										  | 
|   
										  |   
										  | 
|   
										  |   
										  | 
|   
										  |   
										  | 
|   
										  |   
										admin, edit, view는 OpenShift Container Platform 기본 역할입니다. 이러한 역할에 대한 네임스페이스 범위 바인딩이 있는 사용자는 특정 네임스페이스의   | 
중요:
- 모든 사용자는 OpenShift Container Platform에서 프로젝트를 생성할 수 있으므로 네임스페이스에 대한 관리자 역할 권한이 부여됩니다.
 - 
								사용자에게 클러스터에 대한 역할 액세스 권한이 없는 경우 클러스터 이름이 표시되지 않습니다. 클러스터 이름은 다음 기호와 함께 표시됩니다. 
-. 
RBAC는 콘솔 수준 및 API 수준에서 검증됩니다. 콘솔의 작업은 사용자 액세스 역할 권한에 따라 활성화하거나 비활성화할 수 있습니다. 제품의 특정 라이프사이클에 대한 RBAC에 대한 자세한 내용은 다음 섹션을 참조하십시오.
1.2.2. 클러스터 라이프사이클 RBAC 링크 복사링크가 클립보드에 복사되었습니다!
다음 클러스터 라이프사이클 RBAC 작업을 확인합니다.
모든 관리 클러스터에 대한 클러스터 역할 바인딩을 생성하고 관리합니다. 예를 들어 다음 명령을 입력하여 클러스터 역할
open-cluster-management:cluster-manager-admin에 대한 클러스터 역할 바인딩을 생성합니다.oc create clusterrolebinding <role-binding-name> --clusterrole=open-cluster-management:cluster-manager-admin --user=<username>
oc create clusterrolebinding <role-binding-name> --clusterrole=open-cluster-management:cluster-manager-admin --user=<username>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 역할은 모든 리소스 및 작업에 액세스할 수 있는 슈퍼유저입니다. 클러스터 범위의
관리 클러스터리소스, 관리 클러스터를 관리하는 리소스의 네임스페이스, 이 역할이 있는 네임스페이스의 리소스를 생성할 수 있습니다. 권한 오류를 방지하기 위해 역할연결이 필요한 ID의 사용자 이름을추가해야 할 수 있습니다.다음 명령을 실행하여
cluster-name이라는 관리 클러스터의 클러스터 역할 바인딩을 관리합니다.oc create clusterrolebinding (role-binding-name) --clusterrole=open-cluster-management:admin:<cluster-name> --user=<username>
oc create clusterrolebinding (role-binding-name) --clusterrole=open-cluster-management:admin:<cluster-name> --user=<username>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 역할에는 클러스터 범위의
managedcluster리소스에 대한 읽기 및 쓰기 권한이 있습니다. 이는managedcluster가 네임스페이스 범위 리소스가 아닌 클러스터 범위 리소스이므로 필요합니다.다음 명령을 입력하여 클러스터 역할
admin에 대한 네임스페이스 역할 바인딩을 생성합니다.oc create rolebinding <role-binding-name> -n <cluster-name> --clusterrole=admin --user=<username>
oc create rolebinding <role-binding-name> -n <cluster-name> --clusterrole=admin --user=<username>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 역할에는 관리 클러스터의 네임스페이스의 리소스에 대한 읽기 및 쓰기 권한이 있습니다.
open-cluster-management:view:<cluster-name> 클러스터 역할에 대한 클러스터 역할 바인딩을 생성하여cluster-name이라는 관리 클러스터를 확인합니다.oc create clusterrolebinding <role-binding-name> --clusterrole=open-cluster-management:view:<cluster-name> --user=<username>
oc create clusterrolebinding <role-binding-name> --clusterrole=open-cluster-management:view:<cluster-name> --user=<username>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 역할은 클러스터 범위의
managedcluster리소스에 대한 읽기 액세스 권한이 있습니다. 이는managedcluster가 클러스터 범위 리소스이므로 필요합니다.다음 명령을 입력하여 클러스터 역할
뷰에 대한네임스페이스 역할 바인딩을 생성합니다.oc create rolebinding <role-binding-name> -n <cluster-name> --clusterrole=view --user=<username>
oc create rolebinding <role-binding-name> -n <cluster-name> --clusterrole=view --user=<username>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 역할에는 관리 클러스터의 네임스페이스의 리소스에 대한 읽기 전용 권한이 있습니다.
다음 명령을 입력하여 액세스할 수 있는 관리 클러스터 목록을 확인합니다.
oc get managedclusters.clusterview.open-cluster-management.io
oc get managedclusters.clusterview.open-cluster-management.ioCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령은 클러스터 관리자 권한이 없는 관리자와 사용자가 사용합니다.
다음 명령을 입력하여 액세스할 수 있는 관리 클러스터 세트 목록을 확인합니다.
oc get managedclustersets.clusterview.open-cluster-management.io
oc get managedclustersets.clusterview.open-cluster-management.ioCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령은 클러스터 관리자 권한이 없는 관리자와 사용자가 사용합니다.
1.2.2.1. 클러스터 풀 RBAC 링크 복사링크가 클립보드에 복사되었습니다!
다음 클러스터 풀 RBAC 작업을 확인합니다.
클러스터 관리자는 관리 클러스터 세트를 생성하고 그룹에 역할을 추가하여 관리자 권한을 부여하여 클러스터 풀 프로비저닝 클러스터를 사용합니다. 다음 예제를 확인합니다.
다음 명령을 사용하여
server-foundation-clusterset관리 클러스터 세트에관리자권한을 부여합니다.oc adm policy add-cluster-role-to-group open-cluster-management:clusterset-admin:server-foundation-clusterset server-foundation-team-admin
oc adm policy add-cluster-role-to-group open-cluster-management:clusterset-admin:server-foundation-clusterset server-foundation-team-adminCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 사용하여
server-foundation-clusterset관리 클러스터 세트에보기권한을 부여합니다.oc adm policy add-cluster-role-to-group open-cluster-management:clusterset-view:server-foundation-clusterset server-foundation-team-user
oc adm policy add-cluster-role-to-group open-cluster-management:clusterset-view:server-foundation-clusterset server-foundation-team-userCopy to Clipboard Copied! Toggle word wrap Toggle overflow 
클러스터 풀
server-foundation-clusterpool의 네임스페이스를 만듭니다. 역할 권한을 부여하려면 다음 예제를 확인합니다.다음 명령을 실행하여 server-foundation-
team-에 부여합니다.admin에 대한 관리자 권한을server-foundation-clusterpooloc adm new-project server-foundation-clusterpool oc adm policy add-role-to-group admin server-foundation-team-admin --namespace server-foundation-clusterpool
oc adm new-project server-foundation-clusterpool oc adm policy add-role-to-group admin server-foundation-team-admin --namespace server-foundation-clusterpoolCopy to Clipboard Copied! Toggle word wrap Toggle overflow 
팀 관리자로 클러스터 세트 레이블
cluster.open-cluster-management.io/clusterset=server-foundation-clusterset를 사용하여ocp46-aws-clusterpool이라는 클러스터 풀을 생성합니다.- 
										
server-foundation-webhook는 클러스터 풀에 클러스터 세트 레이블이 있는지, 사용자가 클러스터 세트에 클러스터 풀을 생성할 수 있는 권한이 있는지 확인합니다. - 
										
server-foundation-controller는server-foundation-team-user의server-foundation-clusterpool네임스페이스에 대한보기권한을 부여합니다. 
- 
										
 클러스터 풀이 생성되면 클러스터 풀이
클러스터 배포를생성합니다. 자세한 내용은 계속 읽으십시오.- 
										
server-foundation-controller는server-foundation-team-의adminclusterdeployment네임스페이스에 대한 관리자 권한을 부여합니다. server-foundation-controller는server-foundation-team-user에 대한보기권한클러스터 배포네임스페이스를 부여합니다.참고:
team-admin및team-user로clusterpool,clusterdeployment,clusterclaim에 대한관리자권한이 있습니다.
- 
										
 
1.2.2.2. 클러스터 라이프사이클을 위한 콘솔 및 API RBAC 테이블 링크 복사링크가 클립보드에 복사되었습니다!
클러스터 라이프사이클에 대해 다음 콘솔 및 API RBAC 테이블을 확인합니다.
| 리소스 | 관리자 | 편집 | view | 
|---|---|---|---|
|   클러스터  |   읽기, 업데이트, 삭제  |   -  |   읽기  | 
|   클러스터 세트  |   get, update, bind, join  |   언급되지 않은 편집 역할  |   get  | 
|   관리형 클러스터  |   읽기, 업데이트, 삭제  |   언급된 편집 역할 없음  |   get  | 
|   공급자 연결  |   생성, 읽기, 업데이트 및 삭제  |   -  |   읽기  | 
| API | 관리자 | 편집 | view | 
|---|---|---|---|
|   
										 
										이 API의 명령에   |   생성, 읽기, 업데이트, 삭제  |   읽기, 업데이트  |   읽기  | 
|   
										 
										이 API의 명령에서   |   읽기  |   읽기  |   읽기  | 
|   
										  |   업데이트  |   업데이트  | |
|   
										 
										이 API의 명령에   |   생성, 읽기, 업데이트, 삭제  |   읽기, 업데이트  |   읽기  | 
|   
										  |   읽기  |   읽기  |   읽기  | 
|   
										 
										이 API의 명령에   |   생성, 읽기, 업데이트, 삭제  |   읽기, 업데이트  |   읽기  | 
|   
										  |   생성, 읽기, 업데이트, 삭제  |   읽기, 업데이트  |   읽기  | 
|   
										  |   생성, 읽기, 업데이트, 삭제  |   읽기, 업데이트  |   읽기  | 
|   
										  |   생성, 읽기, 업데이트, 삭제  |   읽기, 업데이트  |   읽기  | 
|   
										  |   생성, 읽기, 업데이트, 삭제  |   읽기, 업데이트  |   읽기  | 
|   
										  |   생성, 읽기, 업데이트, 삭제  |   읽기, 업데이트  |   읽기  | 
|   
										  |   생성, 읽기, 업데이트, 삭제  |   읽기, 업데이트  |   읽기  | 
|   
										  |   생성, 읽기, 업데이트, 삭제  |   읽기, 업데이트  |   읽기  | 
1.2.2.3. 인증 정보 역할 기반 액세스 제어 링크 복사링크가 클립보드에 복사되었습니다!
인증 정보에 대한 액세스는 Kubernetes에서 제어합니다. 인증 정보는 Kubernetes 시크릿으로 저장되고 보호됩니다. 다음 권한은 Red Hat Advanced Cluster Management for Kubernetes의 보안에 적용됩니다.
- 네임스페이스에서 보안을 생성할 수 있는 액세스 권한이 있는 사용자는 인증 정보를 생성할 수 있습니다.
 - 네임스페이스에서 시크릿 읽기에 대한 액세스 권한이 있는 사용자는 인증 정보를 볼 수도 있습니다.
 - 
								
admin의 Kubernetes 클러스터 역할이 있는 사용자는 시크릿을 생성하고편집할수 있습니다. - 
								Kubernetes 클러스터 역할의 사용자는 시크릿 내용을 읽을 수 없으므로 시크릿을 
볼수 없습니다. 서비스 계정 자격 증명에 액세스할 수 있기 때문입니다.