

# 用于防止购买 DynamoDB 预留容量的 IAM 策略
<a name="iam-prevent-purchase-reserved-capacity"></a>

对于 Amazon DynamoDB 预留容量，您可以支付一次性预付费用并承诺在一段时间内支付最低用量级别的费用，从而节省大量成本。您可以通过 AWS 管理控制台 查看和购买预留容量。不过，您可能不希望您企业中的所有用户都能购买预留容量。有关预留容量的更多信息，请参阅 [Amazon DynamoDB 定价](https://aws.amazon.com/dynamodb/pricing)。

DynamoDB 提供以下 API 操作，以便控制对预留容量管理的访问：
+ `dynamodb:DescribeReservedCapacity` - 返回当前有效的预留容量购买信息。
+ `dynamodb:DescribeReservedCapacityOfferings` - 返回有关 当前提供的预留容量计划的详细信息。AWS
+ `dynamodb:PurchaseReservedCapacityOfferings` - 实际购买预留容量。

AWS 管理控制台 使用这些 API 操作来显示预留容量的相关信息以及进行购买。您无法从应用程序调用这些操作，因为它们只能通过控制台进行访问。但是，您可以在 IAM 权限策略中允许或拒绝对这些操作的访问。

以下策略允许用户通过 AWS 管理控制台查看预留容量服务和当前购买情况，但是新购买请求将会被拒绝。

------
#### [ JSON ]

****  

```
{
    "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:*"
        }
    ]
}
```

------

请注意，此策略使用通配符 (\$1) 来允许对所有 、 和 到 拒绝 的 购买所有的 DynamoDB 预留容量。