DynamoDB용 CloudWatch Contributor Insights와 함께 IAM 사용 - Amazon DynamoDB

DynamoDB용 CloudWatch Contributor Insights와 함께 IAM 사용

Amazon DynamoDB에 대한 Amazon CloudWatch Contributor Insights를 처음 활성화하면, DynamoDB는 자동적으로 고객님을 위한 AWS Identity and Access Management(IAM) 서비스 링크 역할을 생성합니다. 이 역할, AWSServiceRoleForDynamoDBCloudWatchContributorInsights는 DynamoDB가 고객님을 대신해 CloudWatch Contributor Insights 규칙을 관리할 수 있도록 합니다. 이 서비스 연결 역할을 삭제하지 마세요. 이를 삭제하면 모든 관리 규칙은 테이블 또는 글로벌 보조 인덱스를 삭제할 때 더 이상 정리되지 않습니다.

서비스 연결 역할에 대한 자세한 내용은 IAM 사용 설명서서비스 연결 역할 사용을 참조하세요

다음 권한이 필요합니다.

  • DynamoDB에 대한 CloudWatch Contributor Insights를 활성화하거나 비활성화하려면, 테이블 또는 인덱스에 대한 dynamodb:UpdateContributorInsights 권한이 반드시 필요합니다.

  • DynamoDB 그래프에 대한 CloudWatch Contributor Insights를 보려면, cloudwatch:GetInsightRuleReport 권한이 반드시 필요합니다.

  • 주어진 DynamoDB 테이블 또는 인덱스에 대한 DynamoDB용 CloudWatch Contributor Insights를 설명하려면 dynamodb:DescribeContributorInsights 권한이 있어야 합니다.

  • 각 테이블 및 글로벌 보조 인덱스에 대한 DynamoDB CloudWatch Contributor Insights 상태를 작성하려면, dynamodb:ListContributorInsights 권한이 반드시 필요합니다.

예: DynamoDB용 CloudWatch Contributor Insights 활성화 또는 비활성화

다음 IAM 정책은 DynamoDB용 CloudWatch Contributor Insights를 활성화 또는 비활성화할 권한을 부여합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws:iam::*:role/aws-service-role/contributorinsights.dynamodb.amazonaws.com/AWSServiceRoleForDynamoDBCloudWatchContributorInsights", "Condition": {"StringLike": {"iam:AWSServiceName": "contributorinsights.dynamodb.amazonaws.com"}} }, { "Effect": "Allow", "Action": [ "dynamodb:UpdateContributorInsights" ], "Resource": "arn:aws:dynamodb:*:*:table/*" } ] }

KMS 키로 암호화된 테이블의 경우 사용자에게 Contributor Insights를 업데이트하려면 kms:Decrypt 권한이 있어야 합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws:iam::*:role/aws-service-role/contributorinsights.dynamodb.amazonaws.com/AWSServiceRoleForDynamoDBCloudWatchContributorInsights", "Condition": {"StringLike": {"iam:AWSServiceName": "contributorinsights.dynamodb.amazonaws.com"}} }, { "Effect": "Allow", "Action": [ "dynamodb:UpdateContributorInsights" ], "Resource": "arn:aws:dynamodb:*:*:table/*" }, { "Effect": "Allow", "Resource": "arn:aws:kms:*:*:key/*", "Action": [ "kms:Decrypt" ], } ] }

예: CloudWatch Contributor Insights 규칙 보고서 검색

다음 IAM 정책은 CloudWatch Contributor Insights 규칙 보고서를 검색할 수 있는 권한을 부여합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudwatch:GetInsightRuleReport" ], "Resource": "arn:aws:cloudwatch:*:*:insight-rule/DynamoDBContributorInsights*" } ] }

예: 리소스를 기반으로 DynamoDB용 CloudWatch Contributor Insights 권한을 선택적으로 적용

다음 IAM 정책은 특정 글로벌 보조 인덱스에 대해 ListContributorInsightsDescribeContributorInsights 작업에 대한 권한을 부여하고, UpdateContributorInsights 작업을 거부합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:ListContributorInsights", "dynamodb:DescribeContributorInsights" ], "Resource": "*" }, { "Effect": "Deny", "Action": [ "dynamodb:UpdateContributorInsights" ], "Resource": "arn:aws:dynamodb:us-west-2:123456789012:table/Books/index/Author-index" } ] }

DynamoDB용 CloudWatch Contributor Insights의 서비스 연결 역할 사용

DynamoDB용 CloudWatch Contributor Insights는 AWS Identity and Access Management(IAM) 서비스 연결 역할을 사용합니다. 서비스 연결 역할은 DynamoDB용 CloudWatch Contributor Insights에 직접 연결된 고유한 유형의 IAM 역할입니다. 서비스 연결 역할은 DynamoDB용 CloudWatch Contributor Insights에서 사전 정의하며 서비스에서 다른 AWS 서비스를 자동으로 호출하기 위해 필요한 모든 권한을 포함합니다.

필요한 권한을 수동으로 추가할 필요가 없으므로 서비스 연결 역할은 DynamoDB용 CloudWatch Contributor Insights를 더 쉽게 설정할 수 있습니다. DynamoDB용 CloudWatch Contributor Insights는 서비스 연결 역할의 권한을 정의하며, 달리 정의하지 않은 한 DynamoDB용 CloudWatch Contributor Insights만 해당 역할을 가질 수 있습니다. 정의된 권한에는 신뢰 정책과 권한 정책이 포함되며 이 권한 정책은 다른 IAM 엔터티에 연결할 수 없습니다.

서비스 연결 역할을 지원하는 기타 서비스에 대한 자세한 내용은 IAM으로 작업하는 AWS 서비스를 참조해 서비스 연결 역할(Service-Linked Role) 열이 예(Yes)인 서비스를 찾으세요. 해당 서비스에 대한 서비스 연결 역할 설명서를 보려면 링크를 선택합니다.

DynamoDB용 CloudWatch Contributor Insights의 서비스 연결 역할 권한

DynamoDB용 CloudWatch Contributor Insights는 AWSServiceRoleForDynamoDBCloudWatchContributorInsights라는 서비스 연결 역할을 사용합니다. 서비스 연결 역할의 목적은 Amazon DynamoDB가 사용자 대신 DynamoDB 테이블 및 글로벌 보조 인덱스에 대해 생성된 Amazon CloudWatch Contributor Insights 규칙을 관리할 수 있도록 하는 것입니다.

AWSServiceRoleForDynamoDBCloudWatchContributorInsights 서비스 연결 역할은 역할을 수임하기 위해 다음 서비스를 신뢰합니다.

  • contributorinsights.dynamodb.amazonaws.com

역할 권한 정책은 DynamoDB용 CloudWatch Contributor Insights가 지정된 리소스에서 다음 작업을 완료하도록 허용합니다.

  • 작업: DynamoDBContributorInsights에 대한 Create and manage Insight Rules

IAM 엔터티(사용자, 그룹, 역할 등)가 서비스 링크 역할을 생성하고 편집하거나 삭제할 수 있도록 권한을 구성할 수 있습니다. 자세한 내용은 IAM 사용 설명서서비스 링크 역할 권한을 참조하세요.

DynamoDB용 CloudWatch Contributor Insights의 서비스 연결 역할 생성

서비스 링크 역할은 수동으로 생성할 필요가 없습니다. AWS Management Console, AWS CLI 또는AWS API에서 Contributor Insights를 활성화하면 DynamoDB용 CloudWatch Contributor Insights는 서비스 연결 역할을 생성합니다.

이 서비스 연결 역할을 삭제했다가 다시 생성해야 하는 경우 동일한 프로세스를 사용하여 계정에서 역할을 다시 생성할 수 있습니다. Contributor Insights를 활성화하면 DynamoDB용 CloudWatch Contributor Insights는 서비스 연결 역할을 다시 생성합니다.

DynamoDB용 CloudWatch Contributor Insights의 서비스 연결 역할 편집

DynamoDB용 CloudWatch Contributor Insights는 AWSServiceRoleForDynamoDBCloudWatchContributorInsights 서비스 연결 역할 편집을 허용하지 않습니다. 서비스 링크 역할을 생성한 후에는 다양한 개체가 역할을 참조할 수 있기 때문에 역할 이름을 변경할 수 없습니다. 하지만 IAM을 사용하여 역할의 설명을 편집할 수 있습니다. 자세한 내용은 IAM 사용 설명서서비스 연결 역할 편집을 참조하세요.

DynamoDB용 CloudWatch Contributor Insights의 서비스 연결 역할 삭제

AWSServiceRoleForDynamoDBCloudWatchContributorInsights 역할은 수동으로 삭제할 필요가 없습니다. AWS Management Console, AWS CLI 또는 AWS API에서 Contributor Insights를 비활성화하면 DynamoDB용 CloudWatch Contributor Insights는 리소스를 정리합니다.

또한 IAM 콘솔, AWS CLI 또는 AWS API를 사용하여 서비스 연결 역할을 수동으로 삭제할 수 있습니다. 단, 서비스 연결 역할에 대한 리소스를 먼저 정리해야 수동으로 삭제할 수 있습니다.

참고

리소스를 삭제하려 할 때 DynamoDB용 CloudWatch Contributor Insights 서비스가 역할을 사용 중이면 삭제에 실패할 수 있습니다. 이 문제가 발생하면 몇 분 기다렸다가 작업을 다시 시도하세요.

IAM을 사용하여 수동으로 서비스 연결 역할을 삭제하려면

IAM 콘솔, AWS CLI 또는 AWS API를 사용하여 AWSServiceRoleForDynamoDBCloudWatchContributorInsights 서비스 연결 역할을 삭제합니다. 자세한 내용은 IAM 사용 설명서의 서비스 연결 역할 삭제를 참조하십시오.