AWSTransformApplicationECSDeploymentPolicy - AWS 受管政策

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

AWSTransformApplicationECSDeploymentPolicy

描述:啟用 AWS 轉換以使用 Fargate 將應用程式部署至 Amazon Elastic Container Service (ECS)。它授予許可,以佈建、設定和管理在 ECS 上執行應用程式所需的基礎基礎設施。

AWSTransformApplicationECSDeploymentPolicyAWS 受管政策

使用此政策

您可以將 AWSTransformApplicationECSDeploymentPolicy 連接至使用者、群組與角色。

政策詳細資訊

  • 類型:服務角色政策

  • 建立時間:2025 年 9 月 29 日,UTC 22:49

  • 編輯時間:2025 年 11 月 21 日 23:34 UTC

  • ARN: arn:aws:iam::aws:policy/service-role/AWSTransformApplicationECSDeploymentPolicy

政策版本

政策版本: v2 (預設)

政策的預設版本是定義政策許可的版本。當具有 政策的使用者或角色提出存取 AWS 資源的請求時, 會 AWS 檢查政策的預設版本,以決定是否允許請求。

JSON 政策文件

{ "Version" : "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : "cloudformation:CreateStack", "Resource" : "arn:aws:cloudformation:*:*:stack/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}", "aws:RequestTag/CreatedBy" : "AWSTransform" } } }, { "Effect" : "Allow", "Action" : [ "cloudformation:UpdateStack", "cloudformation:DeleteStack" ], "Resource" : "arn:aws:cloudformation:*:*:stack/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}", "aws:ResourceTag/CreatedBy" : "AWSTransform" } } }, { "Effect" : "Allow", "Action" : [ "cloudformation:DescribeStacks", "cloudformation:DescribeStackEvents" ], "Resource" : "arn:aws:cloudformation:*:*:stack/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}" } } }, { "Effect" : "Allow", "Action" : "ecs:CreateCluster", "Resource" : "arn:aws:ecs:*:*:cluster/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}", "aws:RequestTag/CreatedBy" : "AWSTransform" } } }, { "Effect" : "Allow", "Action" : [ "ecs:UpdateCluster", "ecs:DeleteCluster" ], "Resource" : "arn:aws:ecs:*:*:cluster/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}", "ecs:ResourceTag/CreatedBy" : "AWSTransform" } } }, { "Effect" : "Allow", "Action" : "ecs:RegisterTaskDefinition", "Resource" : "arn:aws:ecs:*:*:task-definition/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}", "aws:RequestTag/CreatedBy" : "AWSTransform" } } }, { "Effect" : "Allow", "Action" : "ecs:RunTask", "Resource" : "arn:aws:ecs:*:*:task-definition/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}", "aws:ResourceTag/CreatedBy" : "AWSTransform" }, "ArnLike" : { "ecs:cluster" : "arn:aws:ecs:*:*:cluster/AWSTransform*" } } }, { "Effect" : "Allow", "Action" : "ecs:ListTasks", "Resource" : "arn:aws:ecs:*:*:container-instance/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}" }, "ArnLike" : { "ecs:cluster" : "arn:aws:ecs:*:*:cluster/AWSTransform*" } } }, { "Effect" : "Allow", "Action" : "ecs:DescribeTasks", "Resource" : "arn:aws:ecs:*:*:task/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}" }, "ArnLike" : { "ecs:cluster" : "arn:aws:ecs:*:*:cluster/AWSTransform*" } } }, { "Effect" : "Allow", "Action" : "iam:PassRole", "Resource" : [ "arn:aws:iam::*:role/AWSTransform-Deploy-ECS-Task-Role", "arn:aws:iam::*:role/AWSTransform-Deploy-ECS-Execution-Role" ], "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}", "iam:PassedToService" : [ "ecs-tasks.amazonaws.com", "ecs.amazonaws.com" ] } } }, { "Effect" : "Allow", "Action" : [ "iam:GetRole", "iam:GetRolePolicy", "iam:ListRolePolicies", "iam:ListAttachedRolePolicies" ], "Resource" : [ "arn:aws:iam::*:role/AWSTransform-Deploy-ECS-Task-Role", "arn:aws:iam::*:role/AWSTransform-Deploy-ECS-Execution-Role" ], "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}" } } }, { "Effect" : "Allow", "Action" : "ecs:CreateService", "Resource" : "arn:aws:ecs:*:*:service/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}", "aws:RequestTag/CreatedBy" : "AWSTransform" } } }, { "Effect" : "Allow", "Action" : [ "ecs:UpdateService", "ecs:DeleteService" ], "Resource" : "arn:aws:ecs:*:*:service/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}", "ecs:ResourceTag/CreatedBy" : "AWSTransform" } } }, { "Effect" : "Allow", "Action" : [ "ecs:TagResource", "ecs:UntagResource" ], "Resource" : [ "arn:aws:ecs:*:*:cluster/AWSTransform*", "arn:aws:ecs:*:*:task-definition/AWSTransform*", "arn:aws:ecs:*:*:service/AWSTransform*", "arn:aws:ecs:*:*:task/AWSTransform*" ], "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}" }, "ForAllValues:StringEquals" : { "aws:TagKeys" : [ "ResourceName", "CreatedBy", "TransformationType" ] } } }, { "Effect" : "Allow", "Action" : [ "logs:CreateLogGroup", "logs:TagResource" ], "Resource" : "arn:aws:logs:*:*:log-group:/aws/ecs/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}", "aws:RequestTag/CreatedBy" : "AWSTransform" }, "ForAllValues:StringEquals" : { "aws:TagKeys" : [ "ResourceName", "CreatedBy", "TransformationType" ] } } }, { "Effect" : "Allow", "Action" : [ "logs:DeleteLogGroup", "logs:PutRetentionPolicy" ], "Resource" : "arn:aws:logs:*:*:log-group:/aws/ecs/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}" } } }, { "Effect" : "Allow", "Action" : "logs:UntagResource", "Resource" : "arn:aws:logs:*:*:log-group:/aws/ecs/AWSTransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}" }, "ForAllValues:StringEquals" : { "aws:TagKeys" : [ "ResourceName", "CreatedBy", "TransformationType" ] } } }, { "Effect" : "Allow", "Action" : "logs:GetLogEvents", "Resource" : "arn:aws:logs:*:*:log-group:/aws/ecs/AWSTransform*:log-stream:*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}" } } }, { "Effect" : "Allow", "Action" : [ "ecr:CreateRepository", "ecr:TagResource" ], "Resource" : "arn:aws:ecr:*:*:repository/awstransform*", "Condition" : { "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}", "aws:RequestTag/CreatedBy" : "AWSTransform" }, "ForAllValues:StringEquals" : { "aws:TagKeys" : [ "ResourceName", "CreatedBy", "TransformationType" ] } } }, { "Effect" : "Allow", "Action" : [ "ecs:DescribeClusters", "ecs:DescribeServices", "ec2:DescribeSecurityGroups", "ec2:DescribeNetworkInterfaces", "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:ListTagsForResource" ], "Resource" : "*" }, { "Effect" : "Allow", "Action" : [ "iam:CreateServiceLinkedRole" ], "Resource" : "arn:aws:iam::*:role/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS", "Condition" : { "StringEquals" : { "iam:AWSServiceName" : "ecs.amazonaws.com" } } }, { "Effect" : "Allow", "Action" : [ "kms:CreateGrant" ], "Resource" : "arn:aws:kms:*:*:key/*", "Condition" : { "Bool" : { "kms:GrantIsForAWSResource" : "true" }, "StringLike" : { "kms:ViaService" : [ "ecr.*.amazonaws.com" ], "kms:EncryptionContext:aws:ecr:arn" : "*" }, "StringEquals" : { "aws:ResourceAccount" : "${aws:PrincipalAccount}", "kms:GrantConstraintType" : "EncryptionContextSubset" }, "ForAllValues:StringEquals" : { "kms:GrantOperations" : [ "Decrypt", "GenerateDataKey" ] } } } ] }

進一步了解