

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# CodeDeploy 权限参考
<a name="auth-and-access-control-permissions-reference"></a>

在设置访问权限以及编写可附加到 IAM 身份的权限策略（基于身份的策略）时，请使用下表。该表列出了每个 CodeDeploy API 操作、您可以授予执行该操作的权限的操作以及用于授予权限的资源 ARN 的格式。请在策略的 `Action` 字段中指定这些操作。您可以在策略的 `Resource` 字段中指定带或不带通配符（\$1）的 ARN 作为资源值。

您可以在 CodeDeploy 策略中使用 AWS-wide 条件键来表达条件。有关 AWS范围密钥的完整列表，请参阅 *IAM 用户指南*中的[可用密钥](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#AvailableKeys)。

要指定操作，请在 API 操作名称之前使用 `codedeploy:` 前缀（例如，`codedeploy:GetApplication` 和 `codedeploy:CreateApplication`）。要在单个语句中指定多项操作，请使用逗号将它们隔开（例如，`"Action": ["codedeploy:action1", "codedeploy:action2"]`）。

**使用通配符**

您可以在 ARN 使用通配符（\$1）以指定多个操作或资源。例如，`codedeploy:*`指定所有 CodeDeploy 动作并`codedeploy:Get*`指定以单词开头的所有 CodeDeploy 动作`Get`。以下示例授予对名称以 `West` 开头且与名称以 `Test` 开头的应用程序关联的所有部署组的访问权限。

```
arn:aws:codedeploy:us-west-2:444455556666:deploymentgroup:Test*/West*
```

您可以将通配符与表中列出的以下资源一起使用：
+ *application-name*
+ *deployment-group-name*
+ *deployment-configuration-name*
+ *instance-ID*

通配符不能与*region*或*account-id*一起使用。有关通配符的更多信息，请参阅 *IAM 用户指南*中的 [IAM 标识符](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html)。

**注意**  
 在每个操作的 ARN 中，资源后跟一个冒号（:）。您还可以让资源后跟正斜杠（/）。有关更多信息，请参阅[CodeDeploy示例 ARNs](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-codedeploy)。

使用滚动条查看表的其余部分。


**CodeDeploy API 操作和操作所需的权限**  

| CodeDeploy API 操作 | 所需权限（API 操作） | 资源 | 
| --- | --- | --- | 
|  [AddTagsToOnPremisesInstances](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_AddTagsToOnPremisesInstances.html)  |  `codedeploy:AddTagsToOnPremisesInstances` 向一个或多个本地实例添加标签所必需的。  |  arn: aws: codedeploy:: instance/ *region* *account-id* *instance-ID*  | 
|  [BatchGetApplicationRevisions](https://docs.aws.amazon.com/codedeploy/latest/APIReference/BatchGetApplicationRevisions.html)  |  `codedeploy:BatchGetApplicationRevisions` 获取有关与 用户关联的多个应用程序版本的信息所必需的。  |  arn: aws: codeploy::: 应用程序:*region**account-id**application-name*  | 
|  [BatchGetApplications](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_BatchGetApplications.html)  |  `codedeploy:BatchGetApplications` 获取有关与 用户关联的多个应用程序的信息所必需的。  |  arn: aws: codedeploy::: 应用程序:\$1 *region* *account-id*  | 
| [BatchGetDeploymentGroups](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_BatchGetDeploymentGroups.html) |  `codedeploy:BatchGetDeploymentGroups` 获取有关与 用户关联的多个部署组的信息所必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
| [BatchGetDeploymentInstances](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_BatchGetDeploymentInstances.html) | codedeploy:BatchGetDeploymentInstances获取有关部署组中的一个或多个实例的信息所必需的。 |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [BatchGetDeployments](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_BatchGetDeployments.html)  |  `codedeploy:BatchGetDeployments` 获取有关与 用户关联的多个部署的信息所必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [BatchGetOnPremisesInstances](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_BatchGetOnPremisesInstances.html)  |  `codedeploy:BatchGetOnPremisesInstances` 获取有关一个或多个本地实例的信息所必需的。  |  arn: aws: codedeploy::: \$1 *region* *account-id*  | 
|  [ContinueDeployment](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ContinueDeployment.html)  |  `codedeploy:ContinueDeployment` 在 blue/green 部署期间，需要启动使用 Elastic Load Balancing 负载均衡器在替代环境中注册实例的过程。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [CreateApplication](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateApplication.html)  |  `codedeploy:CreateApplication` 创建与 用户关联的应用程序所必需的。  |  arn: aws: codeploy::: 应用程序:*region**account-id**application-name*  | 
|  [CreateDeployment](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateDeployment.html)¹  |  `codedeploy:CreateDeployment` 为与 用户关联的应用程序创建部署所必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [CreateDeploymentConfig](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateDeploymentConfig.html)  |  `codedeploy:CreateDeploymentConfig` 创建与 用户关联的自定义部署配置所必需的。  |  arn: aws: codedeploy::: 部署配置:*region**account-id**deployment-configuration-name*   | 
|  [CreateDeploymentGroup](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_CreateDeploymentGroup.html)  |  `codedeploy:CreateDeploymentGroup` 为与 用户关联的应用程序创建部署组所必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [DeleteApplication](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_DeleteApplication.html)  |  `codedeploy:DeleteApplication` 删除与 用户关联的应用程序所必需的。  |  arn: aws: codeploy::: 应用程序:*region**account-id**application-name*  | 
|  [DeleteDeploymentConfig](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_DeleteDeploymentConfig.html)  |  `codedeploy:DeleteDeploymentConfig` 删除与 用户关联的自定义部署配置所必需的。  |  arn: aws: codedeploy::: 部署配置:*region**account-id**deployment-configuration-name*   | 
|  [DeleteDeploymentGroup](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_DeleteDeploymentGroup.html)  |  `codedeploy:DeleteDeploymentGroup` 为与 用户关联的应用程序删除部署组所必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [DeregisterOnPremisesInstance](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_DeregisterOnPremisesInstance.html)  |  `codedeploy:DeregisterOnPremisesInstance` 取消注册本地实例所必需的。  |  arn: aws: codedeploy:: instance/ *region* *account-id* *instance-ID*  | 
|  [GetApplication](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetApplication.html)  |  `codedeploy:GetApplication` 获取有关与 用户关联的单个应用程序的信息所必需的。  |  arn: aws: codeploy::: 应用程序:*region**account-id**application-name*  | 
|  [GetApplicationRevision](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetApplicationRevision.html)  |  `codedeploy:GetApplicationRevision` 获取有关与 用户关联的应用程序的单个应用程序修订的信息所必需的。  |  arn: aws: codeploy::: 应用程序:*region**account-id**application-name*  | 
|  [GetDeployment](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetDeployment.html)  |  `codedeploy:GetDeployment` 获取针对与 用户关联的应用程序的部署组的单个部署的信息所必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [GetDeploymentConfig](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetDeploymentConfig.html)  |  `codedeploy:GetDeploymentConfig` 获取有关与 用户关联的单个部署配置的信息所必需的。  |  arn: aws: codedeploy::: 部署配置:*region**account-id**deployment-configuration-name*   | 
|  [GetDeploymentGroup](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetDeploymentGroup.html)  |  `codedeploy:GetDeploymentGroup` 获取有关与 用户关联的应用程序的单个部署组的信息所必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [GetDeploymentInstance](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetDeploymentInstance.html)  |  `codedeploy:GetDeploymentInstance` 获取有关部署中与 用户关联的单个实例的信息所必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [GetDeploymentTarget](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetDeploymentTarget.html)  |  `codedeploy:GetDeploymentTarget` 获取有关部署中与 用户关联的目标的信息所必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [GetOnPremisesInstance](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_GetOnPremisesInstance.html)  |  `codedeploy:GetOnPremisesInstance` 获取有关单个本地实例的信息所必需的。  |  arn: aws: codedeploy:: instance/ *region* *account-id* *instance-ID*  | 
|  [ListApplicationRevisions](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListApplicationRevisions.html)  |  `codedeploy:ListApplicationRevisions` 获取有关与 用户关联的应用程序的所有应用程序修订的信息所必需的。  |  arn: aws: codedeploy::: 应用程序:\$1 *region* *account-id*  | 
|  [ListApplications](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListApplications.html)  |  `codedeploy:ListApplications` 获取有关与 用户关联的所有应用程序的信息所必需的。  |  arn: aws: codedeploy::: 应用程序:\$1 *region* *account-id*  | 
|  [ListDeploymentConfigs](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListDeploymentConfigs.html)  |  `codedeploy:ListDeploymentConfigs` 获取有关与 用户关联的所有部署配置的信息所必需的。  |  arn: aws: codedeploy::: 部署配置:\$1 *region* *account-id*  | 
|  [ListDeploymentGroups](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListDeploymentGroups.html)  |  `codedeploy:ListDeploymentGroups` 获取有关与 用户关联的应用程序的所有部署组的信息所必需的。  |  arn: aws: codedeploy::: 部署组:/\$1 *region* *account-id* *application-name*  | 
|  [ListDeploymentInstances](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListDeploymentInstances.html)  |  `codedeploy:ListDeploymentInstances` 需要获取有关部署中与用户或 AWS 账户关联的所有实例的信息。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [ListDeployments](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListDeployments.html)  |  `codedeploy:ListDeployments` 获取有关针对与用户关联的部署组的所有部署的信息所必需的，或获取与用户的所有部署所必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [ListDeploymentTargets](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListDeploymentTargets.html)  |  `codedeploy:ListDeploymentTargets` 获取有关部署中与用户关联的所有目标的信息所必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [ListGitHubAccountTokenNames](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListGitHubAccountTokenNames.html)  |  `codedeploy:ListGitHubAccountTokenNames` 需要获取已存储的 GitHub 账户连接的名称列表。  |  arn: aws: codedeploy::: \$1 *region* *account-id*  | 
|  [ListOnPremisesInstances](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_ListOnPremisesInstances.html)  |  `codedeploy:ListOnPremisesInstances` 获取一个或更多本地实例名称的列表所必需的。  |  arn: aws: codedeploy::: \$1 *region* *account-id*  | 
|  PutLifecycleEventHookExecutionStatus  |  `codedeploy:PutLifecycleEventHookExecutionStatus` 对于提供生命周期挂钩事件的执行状态通知是必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [RegisterApplicationRevision](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_RegisterApplicationRevision.html)  |  `codedeploy:RegisterApplicationRevision` 注册有关与 用户关联的应用程序的一个应用程序修订的信息所必需的。  |  arn: aws: codeploy::: 应用程序:*region**account-id**application-name*  | 
|  [RegisterOnPremisesInstance](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_RegisterOnPremisesInstance.html)  |  `codedeploy:RegisterOnPremisesInstance` 向 CodeDeploy 注册本地实例所必需的。  |  arn: aws: codedeploy:: instance/ *region* *account-id* *instance-ID*  | 
|  [RemoveTagsFromOnPremisesInstances](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_RemoveTagsFromOnPremisesInstances.html)  |  `codedeploy:RemoveTagsFromOnPremisesInstances` 从一个或多个本地实例中删除标签所必需的。  |  arn: aws: codedeploy:: instance/ *region* *account-id* *instance-ID*  | 
|  [SkipWaitTimeForInstanceTermination](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_SkipWaitTimeForInstanceTermination.html)  |  `codedeploy:SkipWaitTimeForInstanceTermination` 在 blue/green 部署中需要覆盖指定的等待时间并立即开始终止原始环境中的实例。  |  arn: aws: codedeploy:: instance/ *region* *account-id* *instance-ID*  | 
|  [StopDeployment](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_StopDeployment.html)  |  `codedeploy:StopDeployment` 停止正在进行的部署到与 用户关联的应用程序的部署组所必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  [UpdateApplication](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_UpdateApplication.html)³  |  `codedeploy:UpdateApplication` 更改有关与 用户关联的应用程序的信息所必需的。  |  arn: aws: codeploy::: 应用程序:*region**account-id**application-name*  | 
|  [UpdateDeploymentGroup](https://docs.aws.amazon.com/codedeploy/latest/APIReference/API_UpdateDeploymentGroup.html)³  |  `codedeploy:UpdateDeploymentGroup` 更改有关与 用户关联的应用程序的单个部署组的信息所必需的。  |  arn: aws: codedeploy::: 部署组:/*region**account-id**application-name**deployment-group-name*  | 
|  ¹ 当您指定 `GetDeploymentConfig` 权限时，还必须为部署配置指定 `GetApplicationRevision` 权限，并且为应用程序修订指定 `CreateDeployment` 或 `RegisterApplicationRevision` 权限。此外，如果您在 `CreateDeployment` API 调用中包含 `overrideAlarmConfiguration` 参数，则必须指定 `UpdateDeploymentGroup` 权限。 ² 在提供特定部署组时对 `ListDeployments` 有效，但在列出所有与用户关联的部署时无效。 ³ 对于 `UpdateApplication`，您必须同时对旧应用程序名称和新应用程序名称具有 `UpdateApplication` 权限。对于涉及更改部署组名称的 `UpdateDeploymentGroup` 操作，您必须同时具有对旧的和新的部署组名称的 `UpdateDeploymentGroup` 权限。  | 