DynamoDB 예약 용량 구매를 방지하는 IAM 정책
Amazon DynamoDB 예약 용량을 구입할 경우 선납금을 1회 지불하고 일정 기간에 대해 최소 사용량 수준에 맞춰 약정 요금을 지불하므로 상당한 비용 절감을 얻을 수 있습니다. AWS Management Console을 사용하여 예약 용량을 확인하고 구매할 수 있습니다. 하지만 조직의 모든 사용자가 예약 용량을 구매할 수 있도록 하고 싶지 않을 수 있습니다. 예약 용량에 대한 자세한 내용은 Amazon DynamoDB 요금
DynamoDB는 예약 용량 관리에 대한 액세스 권한을 제어하기 위한 다음과 같은 API 작업을 제공합니다.
-
dynamodb:DescribeReservedCapacity
- 현재 유효한 예약 용량 구매를 반환합니다. -
dynamodb:DescribeReservedCapacityOfferings
- 현재 AWS에서 제공하는 예약 용량 계획에 대한 세부 정보를 반환합니다. -
dynamodb:PurchaseReservedCapacityOfferings
- 실제 예약 용량 구매를 수행합니다.
AWS Management Console은 이러한 API 작업을 사용하여 예약 용량 정보를 표시하고 예약 용량을 구매합니다. 이러한 작업은 콘솔을 통해서만 액세스할 수 있으므로 애플리케이션 프로그램에서는 호출할 수 없습니다. 하지만 IAM 권한 정책에서 이들 작업에 대한 액세스를 허용 또는 거부할 수 있습니다.
다음 정책을 사용하면 사용자가 AWS Management Console을 사용하여 예약 용량 구매 및 제품을 조회할 수는 있지만, 새로운 구매는 거부됩니다.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowReservedCapacityDescriptions", "Effect": "Allow", "Action": [ "dynamodb:DescribeReservedCapacity", "dynamodb:DescribeReservedCapacityOfferings" ], "Resource": "arn:aws:dynamodb:us-west-2:123456789012:*" }, { "Sid": "DenyReservedCapacityPurchases", "Effect": "Deny", "Action": "dynamodb:PurchaseReservedCapacityOfferings", "Resource": "arn:aws:dynamodb:us-west-2:123456789012:*" } ] }
이 정책에서는 와일드카드 문자(*)를 사용하여 모두에 대해 설명 권한을 허용하고, 모두에 대해 DynamoDB 예약 용량 구매를 거부합니다.