리소스 수준 권한에 대한 IAM 액세스 정책
세분화된 속성 기반 액세스 정책을 할당하여 특정 IBM Cloud 리소스에 액세스할 수 있는 사람과 해당 리소스에 대해 수행할 수 있는 작업을 제어하여 최소 권한 액세스를 달성하세요.
다음 그래픽을 사용하면 IAM 정책 작성 방법을 설명할 수 있습니다. 정책은 항상 주체를 먼저 지정하여 작성합니다. 주제는 특정 사용자, 서비스 ID, 액세스 그룹 또는 신뢰 프로파일입니다. 다음으로 사용자가 액세스할 수 있는 사항인 정책의 대상을 선택합니다(예: 리소스 그룹의 모든 서비스, 계정에 있는 모든 IAM 사용 서비스, 계정 관리 서비스 또는 특정 서비스 인스턴스). 마지막으로 사용 가능한 역할에서 선택하여 액세스 정책을 완료합니다. 이러한 역할은 사용자가 완료할 수 있는 작업을 정확하게 정의합니다. 선택하는 서비스에 따라 추가 구성 옵션을 사용할 수 있습니다.
적절한 역할이 있으면 정책을 지정하고 관리할 수 있습니다. 다음 표에서는 정책 관리 태스크 및 각각에 필요한 역할을 보여줍니다.
| 조치 | 필수 역할 |
|---|---|
| 모든 서비스 및 인스턴스에 대해 계정에서 정책 작성 | 모든 계정 관리 서비스 및 모든 ID 및 액세스 사용 서비스의 계정 소유자 또는 관리자 |
| 계정에서 서비스에 대한 정책 작성 | 계정 소유자, 모든 ID 및 액세스 사용 서비스의 관리자 또는 계정에서 서비스의 관리자 |
| 서비스 인스턴스에 대한 정책 작성 | 계정 소유자, 모든 ID 및 액세스 사용 서비스의 관리자, 계정의 서비스에 대한 관리자, 관련 리소스 그룹의 모든 서비스에 대한 관리자 또는 서비스 인스턴스에 대한 관리자 |
공통 액세스 정책 유형
다음 유형의 액세스 정책을 지정하여 사용자, 서비스 ID 또는 액세스 그룹에 대한 세분화된 액세스를 제공할 수 있습니다.
- 모든 계정 관리 서비스
- 특정 계정 관리 서비스
- 모든 IAM 계정 관리 서비스(계정 관리 서비스의 하위 집합으로, IAM ID, IAM 액세스 관리, IAM 사용자 관리 및 IAM 그룹이 포함됨)
- 특정 IAM 서비스
- 계정 내의 모든 리소스
- 리소스 그룹 관리 기능과 함께 개별 리소스 그룹에 속하는 모든 서비스 내의 모든 리소스
- 리소스 그룹 관리 기능과 함께 리소스 그룹의 단일 서비스 내의 모든 리소스
- 리소스가 지정된 리소스 그룹과 관계없는, 계정 전체의 단일 서비스 내 모든 리소스
- 개별 인스턴스의 리소스
- 인스턴스 내의 단일 리소스 유형(예: Object Storage 인스턴스의 버킷)
사용자에게 전체 관리자 액세스 권한을 부여하여 사용자 초대 및 제거, 청구 및 사용량 보기, 서비스 ID 관리, 액세스 그룹 관리, 사용자 액세스 관리, 모든 계정 리소스 액세스 등의 계정 관리 작업을 완료하려면 사용자에게 다음과 같은 액세스 권한을 할당해야 합니다:
- 관리자 및 관리자 역할이 할당된 계정 내의 모든 ID 및 액세스 사용 서비스에 대한 정책입니다.
- 모든 계정 관리 서비스에 관리자 역할이 할당된 정책입니다.
서비스 그룹
서비스 그룹에 액세스 권한을 할당할 수 있으므로 하나의 정책만 있으면 여러 서비스에 대한 액세스 권한을 할당할 수 있습니다. 이렇게 하면 계정의 정책 수를 줄이고 액세스 관리에 드는 시간과 노력을 줄일 수 있습니다.
- 모든 ID 및 액세스 지원 서비스: 액세스 관리를 위해 IAM을 사용하는 모든 카탈로그 서비스.
- 모든 계정 관리 서비스: 청구 및 사용량, 라이선스 및 자격, 기업 등의 플랫폼 서비스. 자세한 정보는 계정 관리 서비스에 대한 액세스 권한 지정을 참조하십시오.
- 모든 IAM 계정 관리 서비스: 계정 관리 서비스의 하위 집합으로, IAM 플랫폼 서비스인 IAM 신원, IAM 액세스 관리, IAM 사용자, IAM 그룹 및 향후 IAM 서비스를 포함합니다.
IBM Cloud 액세스 정책 지정
익숙한 다른 클라우드 제공자와 관련된 IBM Cloud의 액세스 정책을 사용하여 액세스 권한이 지정되는 방법을 이해하는 데 도움을 주려면 다음과 같은 액세스 정책의 세부사항 및 예를 확인하십시오.
IBM Cloud IAM 정책은 사용자 또는 서비스 ID와 같은 액세스 권한이 지정된 사용자(주체), 액세스 권한이 지정된 특정 리소스 또는 서비스(대상) 및 선택된 리소스 또는 서비스의 컨텍스트 내에서 허용되는 조치를 정의하는 역할로 구성됩니다.
IBM Cloud에서 기본적으로 사용자, 서비스 ID 또는 액세스 그룹의 구성원은 액세스 권한이 없습니다. IBM Cloud 액세스 모델은 특정 작업의 완료가 어떻게 허용되거나 거부되는지 이해하는 데 있어 간단합니다. 관리자가 특정 액세스 역할이 있는 액세스 정책을 지정해야 액세스 권한이 부여됩니다. IAM 시스템은 권한을 평가하고 정책을 거부하여 허용되는 조치를 판별할 필요가 없습니다. 대신, 시스템은 정책을 보유하는 리소스와 사용자가 지정한 역할로 허용되는 액세스 레벨만 평가하면 됩니다.
계정의 정책 수를 줄이고 각 사용자에게 필요한 최소한의 액세스 권한만 유지하려면 자주 사용하지 않는 액세스 정책을 식별하여 제거할 수 있습니다. 자세한 내용은 비활성 정책 관리하기를 참조하세요.
IBM Cloud가 속성 기반이므로 정책의 리소스를 지정하는 경우 사용자가 액세스할 수 있는 광범위한 리소스(예: 리소스 그룹의 모든 리소스)를 지정할 수 있습니다. 또는 단일 서비스의 특정 인스턴스 또는 하위 리소스 유형(예: Object Storage 버킷)에 대한 사용자 액세스를 좁힐 수 있습니다. IBM Cloud IAM은 높은 수준의 유연성과 세분성을 제공하여 필요한 액세스 유형만 지정할 수 있습니다. 액세스 정책의 속성을 사용하여 지정할 수 있는 여러 가지 액세스 레벨의 몇 가지 예는 다음과 같습니다.
- 모든 계정 관리 서비스
- 특정 계정 관리 서비스
- 계정 내의 모든 ID 및 액세스 사용 서비스(액세스 관리를 위해 IAM을 사용하는 모든 카탈로그 서비스 포함)를 포함합니다
- 리소스 그룹에 속하는 모든 리소스
- 리소스 그룹 지정과 관계없는, 계정 전체의 단일 서비스 내 모든 리소스 유형
- 계정에 있는 서비스의 특정 인스턴스
- 인스턴스 내의 단일 하위 리소스 유형(예: Object Storage 인스턴스의 버킷)
특정 사전 정의된 플랫폼 또는 서비스 역할이 액세스 레벨을 지정할 때 찾는 역할에 적합하지 않은 경우 특정 서비스에 대한 사용자 정의 역할을 작성한 후 조직의 요구에 맞는 역할을 작성하도록 사용 가능한 조치 중에서 선택할 수 있습니다.
정책 예
이 정책 예는 ID가 default이고 abcd2e6fg1h74i44j5kl467m701n5289 플랫폼 역할이 지정된 Viewer라고 하는 리소스 그룹에 속하는 모든 서비스 리소스에 액세스 권한을 제공합니다. 이 정책은 사용자, 서비스 ID 또는 액세스 그룹에 지정될 수 있습니다. 이 경우 iam_id가 IBMid-3IAMISBEST1인
사용자에게 지정됩니다.
액세스 그룹은 사용자 또는 서비스 ID와 같은 ID가 아니지만 ID의 그룹화 메커니즘입니다. 액세스 그룹은 액세스 정책의 주체로 정의될 수 있으며 그룹의 지정된 액세스는 그룹에 추가된 모든 멤버에게 적용됩니다.
{
"type": "access",
"subjects": [
{
"attributes": [
{
"name": "iam_id",
"value": "IBMid-3IAMISBEST1"
}
]
}
],
"roles": [
{
"role_id": "crn:v1:bluemix:public:iam::::role:Viewer"
}
],
"resources": [
{
"attributes": [
{
"name": "accountId",
"value": "7e522a19eb77477e88e96a600c44fb22"
},
{
"name": "resourceGroupId",
"value": "abcd2e6fg1h74i44j5kl467m701n5289"
}
]
}
]
}
계정의 서비스, 특정 자원 또는 자원 그룹에 대한 액세스를 제공할 수 있는 사용자, 서비스 ID 또는 액세스 그룹에 대한 액세스 정책 외에, IBM Cloud 또한 서비스 간의 액세스를 제공하는 서비스로 호출되는 액세스 정책을 지정하는 기능을 제공합니다. 이 정책 유형의 예는 API를 사용하여 권한 작성을 참조하십시오.