IAM 액세스 개념
IBM Cloud IAM은 많은 클라우드 네이티브 서비스에서 공통적으로 사용되는 결국 일관성 패턴을 따릅니다. 따라서 IAM은 세계 여러 지역에서 고가용성 및 고성능을 유지합니다. IAM 액세스 정책, 권한 부여, 서비스 ID, API키, 액세스 그룹, 신뢰 프로파일, 자원 그룹, 사용자 또는 기타 액세스 제어에 적용되는 변경 사항이 기록되고 전 세계의 IAM 컴포넌트 및 IAM 지원 서비스에 전파됩니다. 액세스 변경사항은 전파 프로세스가 완료될 때까지 적용되지 않을 수 있습니다.
액세스 그룹
하나 이상의 정책을 사용하여 그룹 내 모든 구성원에 동일한 액세스 권한을 지정할 수 있도록 사용자 및 서비스 ID의 그룹을 구성할 수 있습니다. 액세스 그룹을 사용하면 액세스 할당 프로세스를 간소화하여 더 적은 수의 정책을 관리하고 계정의 정책 수를 줄일 수 있으므로 성능이 향상됩니다. 액세스 그룹을 사용하면 액세스 그룹의 사용자 또는 서비스 ID를 단순히 추가하거나 제거하여 액세스 권한을 부여하고 취소할 수 있습니다. 그룹이 설정되고 나면 액세스 그룹을 정책의 주체로 선택하여 정책 지정을 시작할 수 있습니다. 자세한 정보는 액세스 그룹 설정을 참조하십시오.
신뢰할 수 있는 프로파일
신뢰 프로파일을 사용하여 사용자의 회사 디렉토리 내에서 사용자의 ID를 관리합니다. 그리고 각 계정의 각 엔티티에 대한 액세스 정책을 구성할 필요 없이 연합 사용자의 여러 IBM Cloud 계정 및 자산에 대한 액세스 라이프사이클을 중앙에서 관리할 수 있습니다. IBM Cloud 리소스에 액세스할 수 있도록 계정에 사용자를 초대할 필요가 없습니다.
또한 서비스 ID를 작성하거나 애플리케이션의 API 키 라이프사이클을 관리하지 않고 컴퓨팅 리소스에서 실행 중인 모든 애플리케이션에 대해 세분화된 권한을 정의할 수 있습니다. 조직의 신뢰할 수 있는 프로필 만들기를 시작하려면 신뢰할 수 있는 프로필 만들기를 참조하세요.
자원
계정 리소스는 카탈로그에서 선택한 서비스 인스턴스 또는 서비스 인스턴스 내의 세분화된 리소스(예: IBM Cloud® Object Storage 버킷)입니다. IAM 사용 리소스는 카탈로그로부터 작성될 때 리소스 그룹에 추가됩니다.
IAM 액세스 관리를 사용하면 세분화된 액세스가 가능하므로 리소스 그룹의 모든 리소스, 예를 들어 계정의 특정 서비스 인스턴스, 심지어 특정 인스턴스 내의 IBM Cloud Object Storage 버킷과 같은 리소스 유형에 대해 광범위하게 정책을 설정할 수 있습니다.
액세스 정책
액세스 정책은 계정의 사용자, 서비스 ID, 액세스 그룹 및 신뢰 프로파일에 계정 리소스에 대한 액세스 및 조치 수행 권한이 부여되는 방법입니다. 정책에는 제목, 대상 및 역할이 포함됩니다. 주체(Subject)는 액세스를 제공하는 사용자, 서비스 ID 또는 액세스 그룹입니다. 정책의 대상은 액세스가 제공될 리소스입니다. 그리고 IAM 역할은 정책의 대상에 대해 허용되는 조치 또는 액세스 레벨을 정의합니다.
정책은 액세스 레벨을 정의하는 하나 이상의 역할과 정책이 액세스를 허용할 대상을 정의하는 하나 이상의 속성을 주체에 지정합니다. 정책은 인스턴스 레벨의 단일 서비스에 대한 액세스를 리소스 그룹에서 함께 구성된 리소스 세트 또는 속성 세트(예: 위치 또는 리소스 유형)로 정의될 수 있는 리소스 세트에 제공할 수 있습니다. 정책은 계정 관리 서비스에 대한 액세스 권한을 제공할 수도 있습니다. 지정된 IAM 역할에 따라, 주체에는 API 호출을 완료하거나 콘솔을 사용하여 서비스에 액세스하거나 서비스 인스턴스에 대한 작업을 수행하거나 계정 관리 태스크를 완료하기 위한 다양한 레벨의 액세스가 허용됩니다.
사용자 및 서비스 ID의 계정 리소스에 대한 액세스를 허용하는 다양한 종류의 정책이 있습니다(리소스 그룹 정책, 리소스 인스턴스 정책, 모든 IAM 사용 서비스 또는 지정된 서비스의 모든 인스턴스에 액세스하기 위한 계정 전체 정책, 하나 또는 모든 계정 관리에 대한 정책). 선택사항에 따라, 사용자 정의 구성 옵션(예: 특정 위치에 있는 리소스에 대한 액세스 정의 또는 인스턴스 내 서비스 특정 리소스의 상세 레벨에 대한 액세스 정의)이 사용 가능할 수 있습니다.
사용자 및 서비스 ID에 대한 액세스 정책 외에도, 특정 서비스 또는 기타 서비스에 대한 서비스 액세스의 인스턴스를 허용하는 정책 유형(권한이라고 함)이 있습니다. 권한 부여를 사용한 서비스 간 액세스 부여 문서에서 서비스 간 액세스 지정에 대해 알아볼 수 있습니다.
역할
IBM Cloud 액세스 역할은 조치 그룹입니다. 액세스 역할을 사용하면 사용자 및 서비스 ID가 정책에 정의된 대상 리소스의 컨텍스트 내에서 특정 태스크를 완료할 수 있습니다. 두 가지 유형의 사전 정의된 액세스 역할(플랫폼 관리 및 서비스 액세스)이 있습니다. 세 번째 유형의 액세스 역할은 조직의 요구를 충족시키도록 사용 가능한 조치 세트를 결합하기 위해 서비스에 대해 작성할 수 있는 사용자 정의 역할입니다.
플랫폼 관리 역할은 플랫폼 레벨에서 리소스를 관리하기 위해 허용되는 조치(예: 사용자 액세스 지정 및 서비스 인스턴스 작성)를 정의합니다. 플랫폼 역할은 사용자 초대 및 제거, 액세스 그룹 관리, 서비스 ID 및 비공개 카탈로그 제품 관리 등 계정 관리 서비스 컨텍스트 내에서 수행할 수 있는 작업에도 적용됩니다.
서비스 액세스 역할은 허용되는 조치(예: 서비스 API 호출 또는 서비스의 대시보드 액세스)를 정의합니다. 이러한 역할은 정책 내에서 선택된 서비스를 기반으로 사용자 정의됩니다.
역할 옆에 있는 콘솔 내에서 액세스 권한을 지정하는 경우 각 역할에 맵핑되는 조치 수를 확인하고 각 역할이 허용하는 항목을 정확하게 보기 위해 해당 목록으로 드릴 다운할 수 있습니다.
자세한 정보는 IAM 역할을 참조하십시오.
조치
조치는 사용자가 서로 다른 역할에 지정될 때 특정 태스크만 수행할 수 있도록 IBM Cloud IAM 역할에 맵핑됩니다. 경우에 따라 조치를 권한 또는 오퍼레이션이라고도 합니다. 각각의 서비스가 해당 역할이 서비스 사용으로 맵핑하는 방법을 정의하므로, 각 역할에 대해 허용되는 조치는 액세스 중인 서비스를 기반으로 변경됩니다. 자세한 정보는 IAM 역할 및 조치를 참조하십시오.
엔터프라이즈 관리 IAM 템플리트
기업에서 관리하는 IAM 템플릿은 기업클라우드 환경에서 중앙 집중화된 계정 및 비용 청구 관리가 포함된 계정의 계층 구조입니다. 전반의 액세스 관리 및 계정 보안 설정을 표준화하는 데 유용한 도구입니다. 템플릿을 사용하면 일반적으로 사용되는 액세스 그룹, 신뢰할 수 있는 프로필 및 보안 설정을 일관된 방식으로 정의하여 보안 정책이 기업 전체에 균일하게 적용되도록 할 수 있습니다. 이는 전체 또는 일부 계정에 걸쳐 특정 액세스 관리 및 보안 설정을 일관되게 구성해야 하는 조직 표준을 준수하는 데 특히 중요할 수 있습니다. IAM 템플릿을 사용하면 보안 정책 관리를 간소화하고, 잘못된 설정이나 인적 오류의 위험을 줄이며, 전반적인 보안 태세를 개선할 수 있습니다. 자세한 내용은 엔터프라이즈 관리형 IAM의 작동 방식을 참조하세요.
하위 계정의 엔터프라이즈 관리 IAM 리소스에는 엔터프라이즈 관리 태그가 있습니다.
조치 제어
작업 컨트롤은 하위 계정 관리자가 자신의 계정에서 엔터프라이즈가 관리하는 IAM 리소스에 대해 수행할 수 있는 작업에 대한 기본 설정을 적용합니다. 하위 계정 관리자가 자신의 계정에서 할당하는 엔터프라이즈 관리 액세스 그룹에 구성원을 추가할 수 있도록 허용할 수 있습니다. 이 경우 멤버 추가를 위한 작업 컨트롤을 사용 설정할 수 있습니다. 또는 자녀 계정 관리자가 신뢰할 수 있는 프로필에 새 정책을 추가하지 못하도록 금지할 수도 있습니다. 기본적으로 작업 제어는 하위 계정 관리자가 자신의 계정에서 엔터프라이즈 관리 IAM 리소스를 변경하는 것을 제한합니다.
액세스 관리 시스템
IBM Cloud IAM 제어 시스템은 지정된 액세스 정책을 기반으로 서비스의 컨텍스트 내에서 사용자 또는 서비스 ID에 의한 조치를 허용하거나 거부합니다. 기본적으로 모든 사용자 및 서비스 ID에는 액세스 권한이 없습니다. 추가되는 각 액세스 정책을 통해 사용자 또는 서비스 ID가 액세스 정책에 선택되는 지정된 대상 및 역할을 기반으로 하여 계정 내에서 조치를 수행할 수 있습니다. 사용자가 특정 조치를 완료하려고 시도할 때 제어 시스템은 정책에 정의된 속성을 사용하여 사용자에게 해당 태스크를 수행할 수 있는 권한이 있는지 여부를 판별합니다. 자세한 정보는 IBM Cloud IAM 작동 방법의 내용을 참조하십시오.
ABAC와 RBAC는 무엇입니까?
클라우드 제공자에는 두 가지 유형의 IAM 시스템이 있으며, 각 모델을 이해하면 IBM Cloud에서 IAM이 작동하는 방법을 더욱 잘 이해할 수 있습니다.
-
속성 기반 액세스 제어(ABAC)는 ID의 속성(예: 사용자 및 서비스 ID, 환경 및 리소스)을 사용합니다. 이러한 속성은 액세스 의사결정 엔진이 액세스 요청을 허용하거나 거부해야 하는지 여부를 판별하는 데 사용됩니다. ABAC는 역할 기반 액세스 제어 시스템보다 더 많은 유연성, 제어 및 기능을 제공합니다. 일반적으로 ABAC는 세분화된 사용자 액세스 제어가 필요하거나 다양한 액세스 제어 유스 케이스가 동일한 의사결정 엔진에서 해결되어야 하는 경우 사용됩니다. ABAC는 세분화된 액세스 제어를 제공하여 보안 위험을 줄이는 데 도움을 주지만, 일반적으로 특히 초기 설정 중에 좀 더 복잡합니다.
-
역할 기반 액세스 제어(RBAC)는 사용자 또는 서비스 ID와 같은 ID에서 역할로의 맵핑을 사용합니다. RBAC 역할은 RBAC 역할이 포함된 ID가 리소스에 대해 취할 수 있는 액세스 유형을 정의합니다. 일반적으로 리소스 유형 또는 리소스 그룹에 대한 액세스 권한이 부여될 수 있습니다. RBAC 역할은 보통 조직 내의 작업 책임을 기반으로 하여 정의됩니다. RBAC 역할은 작업을 수행하기 위해 ID에 필요한 액세스 권한을 부여합니다. 이는 IAM 관리자가 ID로의 RBAC 역할 맵핑을 관리하기 때문에 단순한 모델입니다. RBAC 역할 설정은 ABAC 초기 설정보다 단순할 수 있습니다.
IBM Cloud IAM은 ID및 리소스 속성을 사용하여 ABAC 모델을 사용합니다. IBM Cloud IAM은 액세스 정책을 사용하여 IAM 액세스 의사결정 엔진에 필요한 속성 정보를 저장합니다. 그리고 액세스 정책은 정책 작성자가 자원에 대한 액세스 권한을 부여하는 데 필요한 속성을 IAM 의사결정 엔진에 알려줍니다.
ID에 대해 지원되는 속성은 iam_id 및 액세스 그룹 ID입니다. 리소스에 대해 지원되는 속성은 다음 카테고리 중 하나에 속합니다.
- 리소스 CRN에 정의된 필드(예: 서비스 이름)
- 시스템 전체에 정의된 리소스 속성(예: 리소스 그룹)
- 서비스 특정 리소스 속성(예: 네임스페이스 또는 버킷)
각 서비스는 관리하는 리소스에 지원되는 속성을 정의합니다. 자세한 정보는 사용 중인 서비스에 대한 문서를 참조하십시오.
IBM Cloud IAM의 우수 사례는 액세스 그룹을 사용하여 ID에 대한 액세스를 관리하는 것입니다. 액세스 그룹 액세스 정책이 정의된 후 액세스 권한 부여 및 취소는 액세스 그룹에 ID를 추가하거나 액세스 그룹에서 제거하기만 하면 됩니다. 사용자 또는 서비스 ID는 관리자가 원하는 만큼 많은 액세스 그룹에 속할 수 있고 그룹의 구성원은 액세스 그룹에 지정된 모든 액세스를 상속합니다. 이러한 접근 방법은 RBAC의 단순함과 함께 ABAC의 세분화된 액세스 이점을 제공합니다.
RBAC에 익숙한 IAM 관리자는 액세스 그룹을 사용하여 RBAC 모델을 모방할 수 있습니다. 개념적으로 액세스 그룹은 RBAC 역할과 유사합니다. 시스템 관리자, 네트워크 관리자 또는 스토리지 관리자와 같은 기존 RBAC 역할을 사용하는 데 더 익숙하다면 각각에 할당된 특정 액세스 정책이 있는 액세스 그룹을 사용하여 IBM Cloud IAM에서 이러한 역할을 정의할 수 있습니다.
예를 들어, Storage Administrators라고 하는 액세스 그룹을 작성할 수 있습니다. 처음 작성하는 경우 액세스 그룹의 구성원에게 액세스 권한이 부여되지 않습니다. 그런 다음 액세스 그룹에 현재 계정의 모든 스토리지 리소스는 물론 향후 생성될 모든 리소스에 관리자 역할을 부여하는 정책을 할당할 수 있습니다. 새 사용자가 팀에 가입하고 조직 내 작업이 계정의 스토리지 관리자인 경우 액세스 그룹에
추가되면 작업을 수행하는 데 필요한 모든 액세스 권한을 갖게 됩니다.
이는 단순한 예이지만 접근 방법은 조직의 작업, 역할 또는 책임에 적용될 수 있습니다. 액세스 그룹에 지정된 액세스 정책은 특정 리소스 그룹의 모든 스토리지와 특정 스토리지 유형만을 위한 스토리지 관리자와 같은 유스 케이스에 사용되도록 세분화될 수 있습니다.
빠른 액세스 지정을 위해 액세스 그룹을 설정하고, 사용자의 계정에 사용자를 초대하고, 액세스를 관리하여 IBM Cloud IAM을 사용하여 신속하게 시작하고 실행하는 방법에 대한 자세한 정보는 자원에 대한 액세스 지정을 참조하십시오.