AWS Identity and Access Management
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

Amazon Elastic Container Service 的操作、资源和条件键

Amazon Elastic Container Service(服务前缀:ecs)提供以下服务特定的资源、操作和条件上下文键以在 IAM 权限策略中使用。

参考:

Amazon Elastic Container Service 定义的操作

您可以在 Action 策略语句的 IAM 元素中指定以下操作。可以使用策略授予在 AWS 中执行操作的权限。您在策略中使用一项操作时,通常使用相同的名称允许或拒绝对 API 操作或 CLI 命令的访问。但在某些情况下,单一动作可控制对多项操作的访问。还有某些操作需要多种不同的动作。

资源列指示每个操作是否支持资源级权限。如果该列没有任何值,您必须在策略语句的 Resource 元素中指定所有资源(“*”)。如果该列包含一种资源类型,则可以在含有该操作的语句中指定该类型的 ARN。必需资源在表中以星号 (*) 表示。如果在使用该操作的语句中指定资源级权限 ARN,则它必须属于该类型。某些操作支持多种资源类型。如果资源类型是可选的(未指示为必需),则可以选择使用一种类型而不使用其他类型。

有关下表中各列的详细信息,请参阅 操作表

操作 描述 访问级别 资源类型(* 为必需) 条件键 相关操作
CreateCluster 创建新的 Amazon ECS 集群。 写入

aws:RequestTag/${TagKey}

aws:TagKeys

CreateService 从指定的任务定义运行并维护所需数量的任务。 写入

service*

ecs:cluster

ecs:task-definition

aws:RequestTag/${TagKey}

aws:TagKeys

CreateTaskSet 创建新的 Amazon ECS 任务集。 写入

ecs:cluster

ecs:service

ecs:task-definition

DeleteAccountSetting 修改账户的指定 IAM 用户、IAM 角色或根用户的资源的 ARN 和资源 ID 格式。您可以指定是否为创建的新资源禁用新的 ARN 和资源 ID 格式。 写入
DeleteAttributes 从 Amazon ECS 资源中删除一个或多个自定义属性。 写入

container-instance*

ecs:cluster

DeleteCluster 删除指定的集群。 写入

cluster*

DeleteService 删除集群中的指定服务。 写入

service*

ecs:cluster

DeleteTaskSet 删除指定的任务集。 写入

task-set*

ecs:cluster

ecs:service

DeregisterContainerInstance 从指定的集群取消注册 Amazon ECS 容器实例。 写入

cluster*

DeregisterTaskDefinition 按系列和修订取消注册指定的任务定义。 写入
DescribeClusters 描述您的一个或多个集群。 Read

cluster*

DescribeContainerInstances 描述 Amazon ECS 容器实例。 Read

container-instance*

ecs:cluster

DescribeServices 描述您的集群中运行的指定服务。 Read

service*

ecs:cluster

DescribeTaskDefinition 描述任务定义。您可以指定系列和修订以查找有关特定任务定义的信息,也可以只指定系列以查找该系列中最新的有效修订。 Read
DescribeTaskSets 描述 Amazon ECS 任务集。 Read

task-set*

ecs:cluster

ecs:service

DescribeTasks 描述指定的一个或多个任务。 Read

task*

ecs:cluster

DiscoverPollEndpoint 返回 Amazon ECS 代理的终端节点以轮询更新。 写入
ListAccountSettings 列出指定委托人的 Amazon ECS 资源的账户设置。 List
ListAttributes 列出指定目标类型和集群中的 Amazon ECS 资源的属性。 List

cluster*

ListClusters 返回现有集群的列表。 List
ListContainerInstances 返回指定集群中的容器实例的列表。 List

cluster*

ListServices 列出指定集群中运行的服务。 List

ecs:cluster

ListTagsForResource 列出指定资源的标签。 List

cluster

container-instance

task

task-definition

ListTaskDefinitionFamilies 返回注册到您的账户的任务定义系列的列表(其中可能包括不再具有任何有效任务定义的任务定义系列)。 List
ListTaskDefinitions 返回注册到您的账户的任务定义列表。 List
ListTasks 返回指定集群的任务列表。 List

container-instance*

ecs:cluster

Poll [仅权限] 向代理授予连接 Amazon ECS 服务以报告状态和获取命令的权限。 写入

container-instance*

ecs:cluster

PutAccountSetting 修改账户的指定 IAM 用户、IAM 角色或根用户的资源的 ARN 和资源 ID 格式。您可以指定是否为创建的新资源启用新的 ARN 和资源 ID 格式。需要启用该设置才能使用新的 Amazon ECS 功能,如资源标记。 写入
PutAccountSettingDefault 修改账户中的所有 IAM 用户(未设置单独的账户设置)的资源类型的 ARN 和资源 ID 格式。需要启用该设置才能使用新的 Amazon ECS 功能,如资源标记。 写入
PutAttributes 在 Amazon ECS 资源上创建或更新属性。 写入

container-instance*

ecs:cluster

RegisterContainerInstance 将 EC2 实例注册到指定的集群。 写入

cluster*

aws:RequestTag/${TagKey}

aws:TagKeys

RegisterTaskDefinition 从提供的系列和 containerDefinitions 注册新的任务定义。 写入

aws:RequestTag/${TagKey}

aws:TagKeys

RunTask 使用随机放置和默认的 Amazon ECS 计划程序启动任务。 写入

task-definition*

ecs:cluster

aws:RequestTag/${TagKey}

aws:TagKeys

StartTask 从指定的一个或多个容器实例上的指定任务定义启动新任务。 写入

task-definition*

ecs:cluster

ecs:container-instances

aws:RequestTag/${TagKey}

aws:TagKeys

StopTask 停止正在运行的任务。 写入

task*

ecs:cluster

SubmitContainerStateChange 发送以确认容器已更改状态。 写入

cluster*

SubmitTaskStateChange 发送以确认任务已更改状态。 写入

cluster*

TagResource 标记指定的资源。 标记

cluster

container-instance

service

task

task-definition

aws:TagKeys

aws:RequestTag/${TagKey}

UntagResource 取消标记指定的资源。 标记

cluster

container-instance

service

task

task-definition

aws:TagKeys

UpdateContainerAgent 更新指定容器实例上的 Amazon ECS 容器代理。 写入

container-instance*

ecs:cluster

UpdateContainerInstancesState 允许用户修改 Amazon ECS 容器实例的状态。 写入

container-instance*

ecs:cluster

UpdateService 修改服务中使用的预期数量、部署配置或任务定义。 写入

service*

ecs:cluster

ecs:task-definition

UpdateServicePrimaryTaskSet 修改服务中使用的主任务集。 写入

service*

ecs:cluster

UpdateTaskSet 更新指定的任务集。 写入

task-set*

ecs:cluster

ecs:service

Amazon Elastic Container Service 定义的资源

以下资源类型是由该服务定义的,可以在 IAM 权限策略语句的 Resource 元素中使用这些资源类型。操作表中的每个操作指定了可以使用该操作指定的资源类型。您也可以在策略中包含条件键,从而定义资源类型。这些键显示在表的最后一列。有关下表中各列的详细信息,请参阅 资源类型表

资源类型 ARN 条件键
cluster arn:${Partition}:ecs:${Region}:${Account}:cluster/${ClusterName}

aws:ResourceTag/${TagKey}

ecs:ResourceTag/${TagKey}

container-instance arn:${Partition}:ecs:${Region}:${Account}:container-instance/${ContainerInstanceId}

aws:ResourceTag/${TagKey}

ecs:ResourceTag/${TagKey}

service arn:${Partition}:ecs:${Region}:${Account}:service/${ServiceName}

aws:ResourceTag/${TagKey}

ecs:ResourceTag/${TagKey}

task arn:${Partition}:ecs:${Region}:${Account}:task/${TaskId}

aws:ResourceTag/${TagKey}

ecs:ResourceTag/${TagKey}

task-definition arn:${Partition}:ecs:${Region}:${Account}:task-definition/${TaskDefinitionFamilyName}:${TaskDefinitionRevisionNumber}

aws:ResourceTag/${TagKey}

ecs:ResourceTag/${TagKey}

task-set arn:${Partition}:ecs:${region}:${Account}:task-set/${ClusterName}/${ServiceName}/${TaskSetId}

Amazon Elastic Container Service 的条件键

Amazon Elastic Container Service 定义以下可以在 IAM 策略的 Condition 元素中使用的条件键。您可以使用这些键进一步细化应用策略语句的条件。有关下表中各列的详细信息,请参阅 条件键表

要查看适用于所有服务的全局条件键,请参阅 IAM 策略参考 中的可用的全局条件键

条件键 描述 类型
aws:RequestTag/${TagKey} 字符串
aws:ResourceTag/${TagKey} 字符串
aws:TagKeys 字符串
ecs:ResourceTag/${TagKey} 字符串
ecs:cluster ECS 集群的 ARN。 ARN
ecs:container-instances ECS 容器实例的 ARN。 ARN
ecs:service ECS 服务的 ARN。 ARN
ecs:task-definition ECS 任务定义的 ARN。 ARN