Amazon Elastic Container Service 的動作、資源與條件索引鍵 - 服務授權參考

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon Elastic Container Service 的動作、資源與條件索引鍵

Amazon Elastic Container Service (服務字首:ecs) 提供下列服務特有的資源、動作和條件內容索引鍵,可用於 IAM 許可政策。

參考資料:

Amazon Elastic Container Service 定義的動作

您可在 IAM 政策陳述式的 Action 元素中指定以下動作。使用政策來授予在 AWS中執行操作的許可。在政策中使用動作時,通常會允許或拒絕存取相同名稱的 API 操作或 CLI 命令。不過,在某些情況下,單一動作可控制對多個操作的存取。或者,某些操作需要多種不同的動作。

「動作」資料表的資源類型欄會指出每個動作是否支援資源層級的許可。如果此欄沒有值,您必須在政策陳述式的 Resource 元素中指定政策適用的所有資源 ("*")。如果資料欄包含資源類型,則您可以在具有該動作的陳述式中指定該類型的 ARN。如果動作具有一或多個必要資源,呼叫者必須具有對這些資源使用動作的許可。表格中的必要資源會以星號 (*) 表示。如果您使用 IAM 政策中的 Resource 元素限制資源存取,則每種必要的資源類型必須要有 ARN 或模式。某些動作支援多種資源類型。如果資源類型是選用 (未顯示為必要),則您可以選擇使用其中一種選用資源類型。

「動作」資料表的條件索引鍵欄包含您可以在政策陳述式的 Condition 元素中指定的索引鍵。如需有關與服務資源相關聯之條件索引鍵的詳細資訊,請參閱「資源類型」資料表的條件索引鍵欄。

注意

資源條件索引鍵會列在資源類型資料表中。您可以在「動作」資料表的資源類型 (*必填) 欄中找到適用於動作的資源類型連結。「資源類型」資料表中的資源類型包括條件索引鍵欄,其中包含套用至「動作」資料表中動作的資源條件索引鍵。

如需下表各欄的詳細資訊,請參閱動作資料表

動作 描述 存取層級 資源類型 (*必填項目) 條件索引鍵 相依動作
CreateCapacityProvider 准許建立新容量提供者。容量提供者會與 Amazon ECS 叢集建立關聯,並用於容量提供者策略,以加快叢集的自動擴展 寫入

aws:RequestTag/${TagKey}

aws:TagKeys

CreateCluster 准許建立新 Amazon ECS 叢集 寫入

cluster*

aws:RequestTag/${TagKey}

aws:TagKeys

ecs:capacity-provider

CreateService 透過建立服務,准許從指定任務定義執行和維護所需的任務數量 寫入

service*

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

ecs:cluster

ecs:capacity-provider

ecs:task-definition

ecs:enable-ebs-volumes

ecs:enable-execute-command

ecs:enable-service-connect

ecs:namespace

CreateTaskSet 准許建立新 Amazon ECS 任務集 寫入

aws:RequestTag/${TagKey}

aws:TagKeys

ecs:cluster

ecs:capacity-provider

ecs:service

ecs:task-definition

DeleteAccountSetting 針對指定的 IAM 使用者、IAM 角色或帳戶的根目錄使用者,准許修改資源的 ARN 和資源 ID 格式。您可以指定是否針對建立的新資源來停用新 ARN 和資源 ID 格式 寫入

ecs:account-setting

DeleteAttributes 准許從 Amazon ECS 資源刪除一個或多個自訂屬性 寫入

container-instance*

aws:ResourceTag/${TagKey}

ecs:cluster

DeleteCapacityProvider 准許刪除指定的容量提供者 寫入

capacity-provider*

aws:ResourceTag/${TagKey}

DeleteCluster 准許刪除指定的叢集 寫入

cluster*

aws:ResourceTag/${TagKey}

DeleteService 准許刪除叢集內的指定服務 寫入

service*

aws:ResourceTag/${TagKey}

ecs:cluster

DeleteTaskDefinitions 准許依系列和修訂版刪除指定的任務定義 寫入

task-definition*

aws:ResourceTag/${TagKey}

DeleteTaskSet 准許刪除指定的任務集 寫入

task-set*

aws:ResourceTag/${TagKey}

ecs:cluster

ecs:service

DeregisterContainerInstance 准許從指定的叢集取消註冊 Amazon ECS 容器執行個體 寫入

cluster*

aws:ResourceTag/${TagKey}

DeregisterTaskDefinition 准許依系列和修訂版取消註冊指定的任務定義 寫入
DescribeCapacityProviders 准許描述一個或多個 Amazon ECS 容量提供者 讀取

capacity-provider*

aws:ResourceTag/${TagKey}

DescribeClusters 准許描述一個或多個叢集 讀取

cluster*

aws:ResourceTag/${TagKey}

DescribeContainerInstances 准許描述 Amazon ECS 容器執行個體 讀取

container-instance*

aws:ResourceTag/${TagKey}

ecs:cluster

DescribeServices 准許描述叢集中執行之指定服務 讀取

service*

aws:ResourceTag/${TagKey}

ecs:cluster

DescribeTaskDefinition 准許描述任務定義。您可以指定系列和修訂版,尋找關於特定任務定義的相關資訊,或者您只需指定系列,即可尋找該系列中最新的 ACTIVE 修訂版 讀取
DescribeTaskSets 准許描述 Amazon ECS 任務集 讀取

task-set*

aws:ResourceTag/${TagKey}

ecs:cluster

ecs:service

DescribeTasks 准許描述指定的任務或任務 讀取

task*

aws:ResourceTag/${TagKey}

ecs:cluster

DiscoverPollEndpoint 准許取得 Amazon ECS 代理程式的端點,以進行輪詢更新 寫入
ExecuteCommand 准許在 Amazon ECS 容器上遠端執行命令 寫入

cluster*

task*

aws:ResourceTag/${TagKey}

ecs:cluster

ecs:container-name

ecs:task

GetTaskProtection 准許擷取 Amazon ECS 服務中任務的保護狀態 讀取

task*

aws:ResourceTag/${TagKey}

ecs:cluster

ListAccountSettings 針對指定的委託人,准許列出 Amazon ECS 資源的帳戶設定 讀取
ListAttributes 准許列出指定目標類型和叢集內 Amazon ECS 資源的屬性 列出

cluster*

aws:ResourceTag/${TagKey}

ListClusters 准許取得現有叢集的清單 列出
ListContainerInstances 准許取得指定叢集中容器執行個體的清單 列出

cluster*

aws:ResourceTag/${TagKey}

ListServices 准許取得在指定叢集中執行之服務的清單 清單

ecs:cluster

ListServicesByNamespace 授予取得在指 AWS 雲端 定對應命名空間中執行的服務清單的權限 清單

ecs:namespace

ListTagsForResource 准許取得特定資源標籤的清單 讀取

capacity-provider

cluster

container-instance

service

task

task-definition

task-set

aws:ResourceTag/${TagKey}

ListTaskDefinitionFamilies 准許取得已向您帳戶註冊的任務定義系列清單 (包含不再有任何 ACTIVE 任務定義的任務定義系列) 列出
ListTaskDefinitions 准許取得已向您帳戶註冊的任務定義清單 列出
ListTasks 准許取得指定叢集的任務清單 列出

container-instance*

aws:ResourceTag/${TagKey}

ecs:cluster

Poll [僅限許可] 授予許可,讓代理程式與 Amazon ECS 服務連線以報告狀態和取得命令 寫入

container-instance*

ecs:cluster

PutAccountSetting 針對指定的 IAM 使用者、IAM 角色或帳戶的根目錄使用者,准許修改資源的 ARN 和資源 ID 格式。您可以指定是否針對建立的新資源來啟用新 ARN 和資源 ID 格式。必須啟用此設定,才能使用資源標記此類的新 Amazon ECS 功能 寫入

ecs:account-setting

PutAccountSettingDefault 針對帳戶的所有 IAM 使用者,准許修改資源類型的 ARN 和資源 ID 格式,其中尚未進行任何個別帳戶設定。必須啟用此設定,才能使用資源標記此類的新 Amazon ECS 功能 寫入

ecs:account-setting

PutAttributes 准許建立或更新 Amazon ECS 資源的屬性 寫入

container-instance*

aws:ResourceTag/${TagKey}

ecs:cluster

PutClusterCapacityProviders 准許修改叢集的可用容量提供者和預設容量提供者策略 寫入

cluster*

aws:ResourceTag/${TagKey}

ecs:capacity-provider

RegisterContainerInstance 准許將 EC2 執行個體註冊到指定的叢集 寫入

cluster*

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

RegisterTaskDefinition 准許從提供的系列和 containerDefinitions 中註冊新的任務定義 寫入

aws:RequestTag/${TagKey}

aws:TagKeys

RunTask 准許使用隨機放置及預設的 Amazon ECS 排程器,以開始進行任務 寫入

task-definition*

aws:ResourceTag/${TagKey}

aws:RequestTag/${TagKey}

aws:TagKeys

ecs:cluster

ecs:capacity-provider

ecs:enable-ebs-volumes

ecs:enable-execute-command

StartTask 准許從指定容器執行個體或執行個體上的指定任務定義,開始進行新的任務 寫入

task-definition*

aws:ResourceTag/${TagKey}

aws:RequestTag/${TagKey}

aws:TagKeys

ecs:cluster

ecs:container-instances

ecs:enable-ebs-volumes

ecs:enable-execute-command

StartTelemetrySession 准許啟動遙測工作階段 寫入

container-instance*

ecs:cluster

StopTask 准許停止執行任務 寫入

task*

aws:ResourceTag/${TagKey}

ecs:cluster

SubmitAttachmentStateChanges 准許傳送附件已變更狀態的確認通知 寫入

cluster*

aws:ResourceTag/${TagKey}

SubmitContainerStateChange 准許傳送容器已變更狀態的確認通知 寫入

cluster*

aws:ResourceTag/${TagKey}

SubmitTaskStateChange 准許傳送任務已變更狀態的確認通知 寫入

cluster*

aws:ResourceTag/${TagKey}

TagResource 准許標記指定資源 標記

capacity-provider

cluster

container-instance

service

task

task-definition

task-set

aws:TagKeys

aws:ResourceTag/${TagKey}

aws:RequestTag/${TagKey}

ecs:CreateAction

UntagResource 准許取消標記指定資源 標記

capacity-provider

cluster

container-instance

service

task

task-definition

task-set

aws:ResourceTag/${TagKey}

aws:TagKeys

UpdateCapacityProvider 准許更新指定的容量提供者 寫入

capacity-provider*

aws:ResourceTag/${TagKey}

UpdateCluster 准許修改用於叢集之組態或設定 寫入

cluster*

aws:ResourceTag/${TagKey}

UpdateClusterSettings 准許修改用於叢集的設定 寫入

cluster*

aws:ResourceTag/${TagKey}

UpdateContainerAgent 准許在指定的容器執行個體上更新 Amazon ECS 容器代理程式 寫入

container-instance*

aws:ResourceTag/${TagKey}

ecs:cluster

UpdateContainerInstancesState 准許使用者修改 Amazon ECS 容器執行個體的狀態 寫入

container-instance*

aws:ResourceTag/${TagKey}

ecs:cluster

UpdateService 准許修改服務的參數 寫入

service*

aws:ResourceTag/${TagKey}

ecs:cluster

ecs:capacity-provider

ecs:enable-ebs-volumes

ecs:enable-execute-command

ecs:enable-service-connect

ecs:namespace

ecs:task-definition

UpdateServicePrimaryTaskSet 准許修改服務中使用之主要任務集 寫入

service*

aws:ResourceTag/${TagKey}

ecs:cluster

UpdateTaskProtection 准許修改任務的保護狀態 寫入

task*

aws:ResourceTag/${TagKey}

ecs:cluster

UpdateTaskSet 准許更新指定的任務集 寫入

task-set*

aws:ResourceTag/${TagKey}

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/${ClusterName}/${ContainerInstanceId}

aws:ResourceTag/${TagKey}

ecs:ResourceTag/${TagKey}

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

aws:ResourceTag/${TagKey}

ecs:ResourceTag/${TagKey}

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

aws:ResourceTag/${TagKey}

ecs:ResourceTag/${TagKey}

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

aws:ResourceTag/${TagKey}

ecs:ResourceTag/${TagKey}

capacity-provider arn:${Partition}:ecs:${Region}:${Account}:capacity-provider/${CapacityProviderName}

aws:ResourceTag/${TagKey}

ecs:ResourceTag/${TagKey}

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

aws:ResourceTag/${TagKey}

ecs:ResourceTag/${TagKey}

Amazon Elastic Container Service 的條件索引鍵

Amazon Elastic Container Service 定義了下列條件索引鍵,可用於 IAM 政策的 Condition 元素。您可以使用這些索引鍵來縮小套用政策陳述式的條件。如需下表各欄的詳細資訊,請參閱條件索引鍵資料表

若要檢視所有服務都可使用的全域條件索引鍵,請參閱可用全域條件索引鍵

條件索引鍵 描述 類型
aws:RequestTag/${TagKey} 依要求中傳遞的標籤來篩選存取權 字串
aws:ResourceTag/${TagKey} 依連接到資源的標籤鍵值對篩選存取權 字串
aws:TagKeys 依要求中傳遞的標籤索引鍵來篩選存取權 ArrayOfString
ecs:CreateAction 依資源建立 API 動作的名稱篩選存取 字串
ecs:ResourceTag/${TagKey} 依連接到資源的標籤鍵值對篩選存取權 字串
ecs:account-setting 依 Amazon ECS 帳戶設定名稱篩選存取權 字串
ecs:capacity-provider 依 Amazon ECS 容量提供者的 ARN 篩選存取權 ARN
ecs:cluster 依 Amazon ECS 叢集的 ARN 篩選存取 ARN
ecs:container-instances 依 Amazon ECS 容器執行個體的 ARN 篩選存取權 ARN
ecs:container-name 依在 ECS 任務定義中定義的 Amazon ECS 容器名稱篩選存取權 字串
ecs:enable-ebs-volumes 透過 Amazon ECS 管理的 Amazon EBS 磁碟區功能篩選您 ECS 任務或服務的存取 字串
ecs:enable-execute-command 依 Amazon ECS 任務或 Amazon ECS 服務的執行命令功能篩選存取權 字串
ecs:enable-service-connect 依 Service Connect 組態中的啟用欄位值篩選存取權 字串
ecs:namespace 依據服務 Connect 組態中定義之 AWS 雲端 對應命名空間的 ARN 篩選存取 ARN
ecs:service 依 Amazon ECS 服務的 ARN 篩選存取權 ARN
ecs:task 依 Amazon ECS 任務的 ARN 篩選存取權 ARN
ecs:task-definition 依 Amazon ECS 任務定義的 ARN 篩選存取權 ARN