IAM 역할 및 조치
Red Hat OpenShift on IBM Cloud 는 IBM Cloud® Identity and Access Management 역할을 사용하여 사용자가 Red Hat OpenShift on IBM Cloud 클러스터, 작업자 노드 및 인그레스 애플리케이션 로드 밸런서(ALB)에서 수행할 수 있는 작업을 결정하도록 구성됩니다.
플랫폼 및 서비스 역할의 목록 및 연관된 조치에 대해서는 다음 표를 검토하십시오.
{{../iam/iam-service-roles.md#containers-kubernetes-roles}}
모든 IBM 서비스 및 관련 역할 및 작업의 목록은 IAM 역할 및 작업을 참조하세요. 계정 및 리소스 설정에 대한 자세한 정보는 사용자, 팀 및 애플리케이션 구성을 위한 우수 사례 를 참조하십시오.
- 플랫폼 액세스 역할
- 사용자는 플랫폼 액세스 역할을 사용하여 클러스터, 작업자 풀, 작업자 노드 및 추가 기능과 같은 리소스를 관리할 수 있습니다. 플랫폼 액세스 역할을 통해 허용되는 조치의 예를 들면 클러스터 작성 또는 제거, 서비스를 클러스터에 바인딩, 네트워킹 및 스토리지 리소스 관리, 작업자 노드 추가 등이 있습니다. 이러한 역할에 대한 정책은 리소스 그룹, 지역 또는 클러스터 인스턴스별로 설정할 수 있습니다. 클러스터 내에서 네임스페이스별로 플랫폼 액세스 역할의 범위를 지정할 수 없습니다. 플랫폼 액세스 역할이 Kubernetes 팟(pod), 네임스페이스 또는 서비스와 같은 클러스터 내에서 리소스를 관리하기 위해 Kubernetes API에 대한 액세스 권한을 부여하지 않습니다.
- 서비스 액세스 역할
- 서비스 액세스 역할을 사용하여 Red Hat OpenShift on IBM Cloud 클러스터 내에서 Kubernetes 리소스를 관리하기 위한 액세스 권한을 사용자에게 부여하십시오. 서비스 액세스 역할은 클러스터 내의 해당 ‘ Kubernetes ’ RBAC 정책 과 동기화됩니다. 따라서 서비스 액세스 역할은 Kubernetes
API, 대시보드 및 CLI(
oc)에 대한 액세스 권한을 부여합니다. 서비스 액세스 역할에서 허용되는 작업의 예로는 앱 배포 생성, 네임스페이스 추가, 컨피그맵 설정 등이 있습니다. 서비스 액세스 역할에 대한 정책의 범위는 리소스 그룹, 지역 또는 클러스터 인스턴스별로 지정할 수 있습니다. 또한 서비스 액세스 역할의 범위를 특정 지역의 모든 클러스터, 개별 클러스터 또는 클러스터에 있는 Kubernetes 네임스페이스로 지정할 수도 있습니다.
클러스터 작성 권한
사용할 수 있는 다른 통합 및 서비스에 대한 필수 권한을 포함하여 클러스터를 작성하는 데 필요한 다음 권한을 검토하십시오.
| 서비스 또는 리소스 그룹 | 역할 | 범위 | 필수? |
|---|---|---|---|
| Kubernetes Service |
|
클러스터를 작성할 리소스 그룹입니다. | 예 |
| Container Registry | 관리자 플랫폼 액세스 역할. | 개별 인스턴스 또는 모든 인스턴스. IBM Cloud Container Registry에 대한 정책을 리소스 그룹 레벨로 제한하지 마십시오. | 예 |
| IBM Cloud Object Storage | 관리자 플랫폼 액세스 역할 | 개별 인스턴스 또는 모든 인스턴스. | 예 |
| Secrets Manager |
|
모든 리소스 그룹 | 암호화를 위해 Secrets Manager 를 사용하려는 경우 필수입니다. |
| 자원 그룹 권한 |
|
클러스터를 작성할 리소스 그룹입니다. | 예 |
| IAM Identity Service |
|
클러스터를 작성할 리소스 그룹입니다. | 예 |
| Key Protect | 관리자 플랫폼 액세스 역할. | 사용할 모든 인스턴스 또는 특정 인스턴스입니다. | 암호화를 위해 Key Protect 를 사용하려는 경우 필수입니다. |
| Hyper Protect Crypto Services | 관리자 플랫폼 액세스 역할. | 사용할 모든 인스턴스 또는 특정 인스턴스입니다. | 암호화에 Hyper Protect Crypto Services 를 사용하려는 경우 필수입니다. |
| 클래식 인프라 | 수퍼유저 역할. 자세한 정보는 클래식 인프라 역할 을 참조하십시오. | 해당사항 없음 | 예 |
| VPC 인프라 | VPC 인프라 에 대한 관리자 플랫폼 액세스 역할. | 사용할 모든 인스턴스 또는 특정 인스턴스입니다. | 예 |
이전 표에 설명된 권한을 사용자 정의 IAM 역할로 저장하는 것을 고려하십시오. 이러한 방식으로 각 개별 서비스를 지정하는 대신 사용자를 사용자 정의 역할에 지정할 수 있습니다. 자세한 정보는 다음 예제 사용자 정의 역할 또는 사용자 정의 역할 작성 에 대한 IAM 문서를 참조하십시오.
사용자 정의 IAM 역할 예제
다음 표에는 사용 사례 예시와 이에 해당하는 IAM 역할이 나와 있습니다. 이 예제를 사용하거나 사용자 고유의 사용자 정의 역할을 작성할 수 있습니다. 자세한 정보는 사용자 정의 역할 작성을 참조하십시오.
| 사용자 정의 역할 예제 | 권한 |
|---|---|
| 앱 감사자 |
|
| 앱 개발자 | -클러스터에 대한 편집자 플랫폼 액세스 역할. -네임스페이스로 범위가 지정된 작성자 서비스 액세스 역할. |
| 비용 청구 | 클러스터, 리전 또는 리소스 그룹에 대한 뷰어 플랫폼 액세스 역할. |
| 클러스터 관리자 | -클러스터에 대한 관리자 플랫폼 액세스 역할. -전체 클러스터에 대한 관리자 서비스 액세스 역할 (네임스페이스로 범위 지정되지 않음). |
| DevOps 운영자 | -클러스터에 대한 운영자 플랫폼 액세스 역할. -전체 클러스터에 대한 작성자 서비스 액세스 역할 (네임스페이스로 범위 지정되지 않음). |
| 운영자 또는 사이트 신뢰성 엔지니어 |
|
클래식 인프라 역할
‘슈퍼 유저(Super User )’ 인프라 액세스 역할을 가진 사용자는 인프라 작업을 수행할 수 있도록 리전 및 리소스 그룹에 대한 API 키를 설정합니다.
계정 내 다른 사용자가 수행할 수 있는 인프라 관련 작업은 ‘ IBM Cloud ’ IAM 플랫폼 액세스 역할을 통해 승인됩니다.
API 키를 설정하는 사용자에게 슈퍼 유저 권한을 할당할 수 없는 경우에만 다음 표를 사용하여 기존 인프라 권한을 사용자 지정하십시오. 권한 지정에 대한 지시사항은 인프라 권한 사용자 정의를 참조하십시오.
필수 클래식 인프라 권한
| 권한 | 설명 |
|---|---|
| IPMI 원격 관리 | 작업자 노드를 관리합니다. |
| 서버 추가 | 작업자 노드를 추가합니다.
참고: 공인 IP 주소가 있는 작업자 노드의 경우, 네트워크 카테고리의 공용 네트워크 포트로 컴퓨팅 추가 권한도 필요합니다. |
| 서버 취소 | 작업자 노드를 삭제합니다. |
| OS 다시 로드 및 복구 커널 | 작업자 노드를 업데이트, 다시 부팅 및 다시 로드합니다. |
| 가상 서버 세부사항 보기 | 클러스터에 VM 작업자 노드가 있는 경우 필수입니다. VM 작업자 노드의 세부사항을 나열하고 가져옵니다. |
| 하드웨어 세부사항 보기 | 클러스터에 베어메탈 작업자 노드가 있는 경우 필수입니다. 베어메탈 작업자 노드의 세부사항을 나열하고 가져옵니다. |
| 지원 케이스 추가 | 클러스터 작성 자동화의 일부로 클러스터 인프라를 프로비저닝하기 위한 지원 케이스가 열립니다. |
| 지원 케이스 편집 | 클러스터 작성 자동화의 일부로 클러스터 인프라를 프로비저닝하기 위한 지원 케이스가 업데이트됩니다. |
| 지원 케이스 보기 | 클러스터 작성 자동화의 일부로 클러스터 인프라를 프로비저닝하기 위한 지원 케이스가 사용됩니다. |
제안된 클래식 인프라 권한
| 권한 | 설명 |
|---|---|
| 자동 가상 서버 액세스 | 모든 작업자 노드에 액세스하십시오. |
| 자동 베어메탈 서버 액세스 | 모든 베어메탈 작업자 노드에 대한 액세스를 지정합니다. 이 권한이 없으면 사용자에게 두 클러스터에 대한 IAM 액세스 권한이 있는 경우에도 하나의 클러스터를 작성하는 사용자는 다른 클러스터의 베어메탈 작업자 노드를 보지 못할 수 있습니다. |
| 공용 네트워크 포트로 컴퓨팅 추가 | 공용 네트워크에 액세스할 수 있는 포트를 작업자 노드에게 제공합니다. |
| DNS 관리 | 공용 로드 밸런서 또는 Ingress 네트워킹을 설정하여 앱 노출 |
| 호스트 이름/도메인 편집 | 공용 로드 밸런서 또는 Ingress 네트워킹을 설정하여 앱 노출 |
| IP 주소 추가 | 클러스터 로드 밸런싱에 사용되는 공용 또는 사설 서브넷에 IP 주소를 추가합니다. |
| 네트워크 서브넷 라우트 관리 | 클러스터 로드 밸런싱에 사용되는 공용 및 사설 VLAN과 서브넷을 관리합니다. |
| 포트 제어 관리 | 앱 로드 밸런싱에 사용되는 포트를 관리합니다. |
| 인증서(SSL) 관리 | 클러스터 로드 밸런싱에 사용되는 인증서를 설정합니다. |
| 인증서(SSL) 보기 | 클러스터 로드 밸런싱에 사용되는 인증서를 설정합니다. |
| 스토리지(Storage Layer) 추가/업그레이드 | 데이터의 지속적 스토리지를 위해 볼륨으로 앱에 연결할 IBM Cloud 파일 또는 블록 스토리지 인스턴스를 작성합니다. |
| 스토리지 관리 | 데이터의 지속적 스토리지를 위해 볼륨으로 앱에 연결된 IBM Cloud 파일 또는 블록 스토리지 인스턴스를 관리합니다. |