Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
AWSTransformApplicationECSDeploymentPolicy
Deskripsi: Mengaktifkan AWS Transform untuk menyebarkan aplikasi ke Amazon Elastic Container Service (ECS) dengan Fargate. Ini memberikan izin untuk menyediakan, mengkonfigurasi, dan mengelola infrastruktur dasar yang diperlukan untuk menjalankan aplikasi di ECS.
AWSTransformApplicationECSDeploymentPolicyadalah kebijakan yang AWS dikelola.
Menggunakan kebijakan ini
Anda dapat melampirkan AWSTransformApplicationECSDeploymentPolicy ke pengguna, grup, dan peran Anda.
Rincian kebijakan
-
Jenis: Kebijakan peran layanan
-
Waktu pembuatan: 29 September 2025, 22:49 UTC
-
Waktu telah diedit: 21 November 2025, 23:34 UTC
-
ARN:
arn:aws:iam::aws:policy/service-role/AWSTransformApplicationECSDeploymentPolicy
Versi kebijakan
Versi kebijakan: v2 (default)
Versi default kebijakan adalah versi yang menentukan izin untuk kebijakan tersebut. Saat pengguna atau peran dengan kebijakan membuat permintaan untuk mengakses AWS sumber daya, AWS periksa versi default kebijakan untuk menentukan apakah akan mengizinkan permintaan tersebut.
Dokumen kebijakan 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" ] } } } ] }