本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon ECS EventBridge IAM角色
在您可以將 Amazon ECS排程任務與 EventBridge 規則和目標搭配使用之前, EventBridge 服務需要許可才能代表您執行 Amazon ECS任務。這些許可由 EventBridge IAM角色 () 提供ecsEventsRole
。
AmazonEC2ContainerServiceEventsRole
政策顯示如下。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["ecs:RunTask"], "Resource": ["*"] }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": ["*"], "Condition": { "StringLike": {"iam:PassedToService": "ecs-tasks.amazonaws.com"} } }, { "Effect": "Allow", "Action": "ecs:TagResource", "Resource": "*", "Condition": { "StringEquals": { "ecs:CreateAction": ["RunTask"] } } } ] }
如果您的排程任務需要使用任務執行角色、任務角色或任務角色覆寫,則必須將 EventBridge IAM每個任務執行角色、任務角色或任務角色覆寫的iam:PassRole
許可新增至角色。如需任務執行角色的詳細資訊,請參閱「Amazon ECS任務執行IAM角色」。
注意
指定任務執行角色或任務角色覆寫ARN的完整。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": ["arn:aws:iam::<aws_account_id>:role/<ecsTaskExecutionRole_or_TaskRole_name>"] } ] }
您可以在設定排程任務時,選擇讓 為您 AWS Management Console 建立 EventBridge 角色。如需詳細資訊,請參閱使用 Amazon EventBridge Scheduler 排程 Amazon ECS任務 。
建立 EventBridge 角色
取代全部 user input
使用您自己的資訊。
-
建立名為 的檔案
eventbridge-trust-policy.json
,其中包含要用於IAM角色的信任政策。檔案應包含以下內容:{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
使用下列命令,
ecsEventsRole
使用您在上一個步驟中建立的信任政策來建立名為 IAM的角色。aws iam create-role \ --role-name
ecsEventsRole
\ --assume-role-policy-document file://eventbridge-policy.json
-
使用下列命令 將 AWS 受管
AmazonEC2ContainerServiceEventsRole
連接至ecsEventsRole
角色。aws iam attach-role-policy \ --role-name
ecsEventsRole
\ --policy-arn arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceEventsRole
您也可以使用IAM主控台的自訂信任政策工作流程 (https://console.aws.amazon.com/iam/
將政策連接至 ecsEventsRole
角色
您可以使用下列程序將任務執行角色的許可新增至角色 EventBridge IAM。