Amazon DocumentDB에 대한 ID 기반 정책(IAM 정책) 사용 - Amazon DocumentDB

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon DocumentDB에 대한 ID 기반 정책(IAM 정책) 사용

중요

일부 관리 기능의 경우 Amazon DocumentDB는 Amazon RDS와 공유되는 운영 기술을 사용합니다. Amazon DocumentDB 콘솔 AWS CLI 및 API 호출은 Amazon RDS API에 대한 호출로 기록됩니다.

Amazon DocumentDB 리소스에 대한 액세스 관리를 위해 제공되는 기본 개념과 옵션 설명에 대한 소개 주제 부분을 먼저 읽어 보는 것이 좋습니다. 자세한 내용은 Amazon DocumentDB 리소스에 대한 액세스 권한 관리 단원을 참조하십시오.

이 항목에서는 계정 관리자가 IAM ID(사용자, 그룹, 역할)에 권한 정책을 연결할 수 있는 ID 기반 정책의 예를 제공합니다.

다음은 IAM 정책 예제입니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateDBInstanceOnly", "Effect": "Allow", "Action": [ "rds:CreateDBInstance" ], "Resource": [ "arn:aws:rds:*:123456789012:db:test*", "arn:aws:rds:*:123456789012:pg:cluster-pg:default*", "arn:aws:rds:*:123456789012:subgrp:default" ] } ] }

정책은 다음 IAM 사용자 권한을 지정하는 단일 명령문을 포함합니다.

  • 이 정책은 IAM 사용자가 CreateDBinstance 작업을 사용하여 인스턴스를 생성할 수 있도록 허용합니다 (이는 작업 및 작업에도 적용됨). create-db-instance AWS CLI AWS Management Console

  • Resource 요소는 사용자가 리소스 위치에서 또는 리소스를 사용하여 작업을 수행할 수 있도록 지정합니다. Amazon 리소스 이름(ARN)을 사용하여 리소스를 지정합니다. 이 ARN에는 리소스가 속한 서비스의 이름 (rds), (이 예에서는 모든 지역을 * 나타냄), 사용자 계정 번호 (123456789012이 예에서는 사용자 ID), 리소스 유형이 포함됩니다. AWS 리전

    위의 예제에서 Resource 요소는 사용자 리소스에 대해 다음과 같은 정책 제약 조건을 지정합니다.

    • 새 인스턴스의 인스턴스 식별자는 test로 시작해야 합니다(예: testCustomerData1, test-region2-data).

    • 새로운 인스턴스의 클러스터 파라미터 그룹은 default로 시작해야 합니다.

    • 새로운 인스턴스의 서브넷 그룹은 default 서브넷 그룹이 되어야 합니다.

ID 기반 정책에서는 권한을 가질 보안 주체를 지정하지 않으므로 이 정책은 Principal 요소를 지정하지 않습니다. 정책을 사용자에게 연결할 경우, 사용자는 암시적인 보안 주체입니다. IAM 역할에 권한 정책을 연결하면 역할의 신뢰 정책에서 식별된 보안 주체가 권한을 얻습니다.

모든 Amazon DocumentDB API 작업과 해당 작업이 적용되는 리소스를 보여주는 표는 Amazon DocumentDB API 권한: 작업, 리소스 및 조건 참조 단원을 참조하십시오.

Amazon DocumentDB 콘솔 사용에 필요한 권한

Amazon DocumentDB 콘솔에서 작업하려면 최소한의 권한이 사용자에게 필요합니다. 이러한 권한을 통해 사용자는 AWS 계정 자신의 Amazon DocumentDB 리소스를 설명하고 Amazon EC2 보안 및 네트워크 정보를 비롯한 기타 관련 정보를 제공할 수 있습니다.

최소 필수 권한보다 더 제한적인 IAM 정책을 만들면 콘솔은 해당 IAM 정책에 연결된 사용자에 대해 의도대로 작동하지 않습니다. 이 사용자가 Amazon DocumentDB 콘솔을 사용할 수 있도록 하려면 AmazonDocDBConsoleFullAccess 관리형 정책을 사용자에게 연결합니다(AWS 아마존 DocumentDB에 대한 관리형 정책 참조).

AWS CLI 또는 Amazon DocumentDB API만 호출하는 사용자에게 최소 콘솔 권한을 허용할 필요는 없습니다.

고객 관리형 정책 예

이 섹션에서는 다양한 Amazon DocumentDB 작업에 대한 권한을 부여하는 사용자 정책의 예를 제공합니다. 이러한 정책은 Amazon DocumentDB API 작업 AWS , SDK 또는 를 사용할 때 작동합니다. AWS CLI 콘솔을 사용하는 경우 Amazon DocumentDB 콘솔 사용에 필요한 권한의 설명과 같이 콘솔에 특정한 추가 권한을 부여해야 합니다.

일부 관리 기능의 경우 Amazon DocumentDB는 Amazon Relational Database Service(RDS) 및 Amazon Neptune과 공유되는 운영 기술을 사용합니다.

참고

모든 예에서는 미국 동부(버지니아 북부) 리전(us-east-1)을 사용하며 가상의 계정 ID를 포함합니다.

예제 1: 사용자가 모든 Amazon DocumentDB  리소스에서 Describe 작업을 수행할 수 있도록 허용

다음 권한 정책은 사용자에게 Describe로 시작하는 모든 작업을 실행할 수 있는 권한을 부여합니다. 이 작업은 인스턴스와 같은 Amazon DocumentDB 리소스에 대한 정보를 보여 줍니다. Resource 요소에 와일드카드 문자(*)가 있으면 계정이 소유한 모든 Amazon DocumentDB 리소스에 작업이 허용됩니다.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"AllowRDSDescribe", "Effect":"Allow", "Action":"rds:Describe*", "Resource":"*" } ] }

예제 2: 사용자의 인스턴스 삭제 방지

다음 권한 정책은 사용자의 특정 인스턴스 삭제를 방지하는 권한을 부여합니다. 예를 들어, 관리자가 아닌 모든 사용자에 대해 프로덕션 인스턴스를 삭제할 수 있는 권한을 거부해야 할 수 있습니다.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"DenyDelete1", "Effect":"Deny", "Action":"rds:DeleteDBInstance", "Resource":"arn:aws:rds:us-east-1:123456789012:db:my-db-instance" } ] }

예 3: 스토리지 암호화가 활성화되지 않은 경우 사용자가 클러스터를 생성하지 못하도록 차단

다음 권한 정책은 스토리지 암호화가 활성화되지 않은 경우 Amazon DocumentDB 클러스터를 생성할 수 있는 사용자의 권한을 거부합니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "PreventUnencryptedDocumentDB", "Effect": "Deny", "Action": "RDS:CreateDBCluster", "Condition": { "Bool": { "rds:StorageEncrypted": "false" }, "StringEquals": { "rds:DatabaseEngine": "docdb" } }, "Resource": "*" } ] }