

# 容量预留策略示例
<a name="example-policies-capacity-reservations"></a>

本节包含可用于启用对容量预留执行的各种操作的策略示例。每当您使用 IAM 策略时，请确保遵循 IAM 最佳实践。有关更多信息，请参阅《[IAM 用户指南](https://docs.amazonaws.cn/IAM/latest/UserGuide/best-practices.html)》中的 *IAM 安全最佳实践*。

容量预留是由 Athena 托管的 IAM 资源。因此，如果容量预留策略使用将 `capacity-reservation` 用作输入的操作，则必须指定容量预留 ARN，如下所示：

```
"Resource": [arn:aws:athena:{{<region>}}:{{<user-account>}}:capacity-reservation/{{<capacity-reservation-name>}}]
```

其中，`{{<capacity-reservation-name>}}` 为容量预留的名称。例如，对于名为 `test_capacity_reservation` 的容量预留，将其指定为资源，如下所示：

```
"Resource": ["arn:aws:athena:{{us-east-1}}:{{123456789012}}:capacity-reservation/test_capacity_reservation"]
```

有关 Amazon Athena 操作的完整列表，请参阅 [Amazon Athena API 参考](https://docs.amazonaws.cn/athena/latest/APIReference/)中的 API 操作名称。有关 IAM 策略的更多信息，请参阅《IAM 用户指南》**中的[使用可视化编辑器创建策略](https://docs.amazonaws.cn/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-visual-editor)。

**Example 用于列出容量预留的策略示例**  
以下策略允许所有用户列出所有容量预留。    
****  

```
{ 
    "Version":"2012-10-17",		 	 	  
    "Statement": [ 
        { 
            "Effect": "Allow", 
            "Action": [ 
                "athena:ListCapacityReservations" 
            ], 
            "Resource": "*" 
        } 
    ] 
}
```

**Example 适用于管理操作的策略示例**  
以下策略允许用户创建、取消和更新容量预留 `test_capacity_reservation` 以及获取其详细信息。该策略还允许用户将 `workgroupA` 和 `workgroupB` 分配给 `test_capacity_reservation`。    
****  

```
{ 
   "Version":"2012-10-17",		 	 	  
   "Statement":[ 
      { 
         "Effect": "Allow", 
         "Action": [ 
             "athena:CreateCapacityReservation", 
             "athena:GetCapacityReservation", 
             "athena:CancelCapacityReservation", 
             "athena:UpdateCapacityReservation", 
             "athena:GetCapacityAssignmentConfiguration", 
             "athena:PutCapacityAssignmentConfiguration" 
         ], 
         "Resource": [ 
             "arn:aws:athena:{{us-east-1}}:{{123456789012}}:capacity-reservation/{{test_capacity_reservation}}", 
             "arn:aws:athena:{{us-east-1}}:{{123456789012}}:workgroup/{{workgroupA}}", 
             "arn:aws:athena:{{us-east-1}}:{{123456789012}}:workgroup/{{workgroupB}}" 
         ] 
      } 
   ] 
}
```