AmazonECSInfrastructureRoleforExpressGatewayServices

Last Modified

Mar 12, 2026

March 12, 2026 at 09:27 PM UTC

Version

v6

Total Versions

2

Created

Feb 12, 2026

Actions

54

Policy Document

View on GitHub
{
  "PolicyVersion": {
    "Document": {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "ServiceLinkedRoleCreateOperations",
          "Effect": "Allow",
          "Action": "iam:CreateServiceLinkedRole",
          "Resource": "*",
          "Condition": {
            "StringEquals": {
              "iam:AWSServiceName": [
                "ecs.application-autoscaling.amazonaws.com",
                "elasticloadbalancing.amazonaws.com"
              ]
            }
          }
        },
        {
          "Sid": "ELBOperations",
          "Effect": "Allow",
          "Action": [
            "elasticloadbalancing:CreateListener",
            "elasticloadbalancing:CreateLoadBalancer",
            "elasticloadbalancing:CreateRule",
            "elasticloadbalancing:CreateTargetGroup",
            "elasticloadbalancing:ModifyListener",
            "elasticloadbalancing:ModifyRule",
            "elasticloadbalancing:AddListenerCertificates",
            "elasticloadbalancing:RemoveListenerCertificates",
            "elasticloadbalancing:RegisterTargets",
            "elasticloadbalancing:DeregisterTargets",
            "elasticloadbalancing:DeleteTargetGroup",
            "elasticloadbalancing:DeleteLoadBalancer",
            "elasticloadbalancing:DeleteRule",
            "elasticloadbalancing:DeleteListener"
          ],
          "Resource": [
            "arn:aws:elasticloadbalancing:*:*:loadbalancer/app/*/*",
            "arn:aws:elasticloadbalancing:*:*:listener/app/*/*/*",
            "arn:aws:elasticloadbalancing:*:*:listener-rule/app/*/*/*/*",
            "arn:aws:elasticloadbalancing:*:*:targetgroup/*/*"
          ],
          "Condition": {
            "StringEquals": {
              "aws:ResourceTag/AmazonECSManaged": "true"
            }
          }
        },
        {
          "Sid": "TagOnCreateELBResources",
          "Effect": "Allow",
          "Action": "elasticloadbalancing:AddTags",
          "Resource": [
            "arn:aws:elasticloadbalancing:*:*:loadbalancer/app/*/*",
            "arn:aws:elasticloadbalancing:*:*:listener/app/*/*/*",
            "arn:aws:elasticloadbalancing:*:*:listener-rule/app/*/*/*/*",
            "arn:aws:elasticloadbalancing:*:*:targetgroup/*/*"
          ],
          "Condition": {
            "StringEquals": {
              "elasticloadbalancing:CreateAction": [
                "CreateLoadBalancer",
                "CreateListener",
                "CreateRule",
                "CreateTargetGroup"
              ]
            }
          }
        },
        {
          "Sid": "BlanketAllowCreateSecurityGroupsInVPCs",
          "Effect": "Allow",
          "Action": "ec2:CreateSecurityGroup",
          "Resource": "arn:aws:ec2:*:*:vpc/*"
        },
        {
          "Sid": "CreateSecurityGroupResourcesWithTags",
          "Effect": "Allow",
          "Action": [
            "ec2:CreateSecurityGroup",
            "ec2:AuthorizeSecurityGroupEgress",
            "ec2:AuthorizeSecurityGroupIngress"
          ],
          "Resource": [
            "arn:aws:ec2:*:*:security-group/*",
            "arn:aws:ec2:*:*:security-group-rule/*",
            "arn:aws:ec2:*:*:vpc/*"
          ],
          "Condition": {
            "StringEquals": {
              "aws:RequestTag/AmazonECSManaged": "true"
            }
          }
        },
        {
          "Sid": "ModifySecurityGroupOperations",
          "Effect": "Allow",
          "Action": [
            "ec2:AuthorizeSecurityGroupEgress",
            "ec2:AuthorizeSecurityGroupIngress",
            "ec2:DeleteSecurityGroup",
            "ec2:RevokeSecurityGroupEgress",
            "ec2:RevokeSecurityGroupIngress"
          ],
          "Resource": [
            "arn:aws:ec2:*:*:security-group/*",
            "arn:aws:ec2:*:*:vpc/*"
          ],
          "Condition": {
            "StringEquals": {
              "aws:ResourceTag/AmazonECSManaged": "true"
            }
          }
        },
        {
          "Sid": "TagOnCreateEC2Resources",
          "Effect": "Allow",
          "Action": "ec2:CreateTags",
          "Resource": [
            "arn:aws:ec2:*:*:security-group/*",
            "arn:aws:ec2:*:*:security-group-rule/*"
          ],
          "Condition": {
            "StringEquals": {
              "ec2:CreateAction": [
                "CreateSecurityGroup",
                "AuthorizeSecurityGroupIngress",
                "AuthorizeSecurityGroupEgress"
              ]
            }
          }
        },
        {
          "Sid": "CertificateOperations",
          "Effect": "Allow",
          "Action": [
            "acm:RequestCertificate",
            "acm:AddTagsToCertificate",
            "acm:DeleteCertificate",
            "acm:DescribeCertificate"
          ],
          "Resource": [
            "arn:aws:acm:*:*:certificate/*"
          ],
          "Condition": {
            "StringEquals": {
              "aws:ResourceTag/AmazonECSManaged": "true"
            }
          }
        },
        {
          "Sid": "ApplicationAutoscalingCreateOperations",
          "Effect": "Allow",
          "Action": [
            "application-autoscaling:RegisterScalableTarget",
            "application-autoscaling:TagResource",
            "application-autoscaling:DeregisterScalableTarget"
          ],
          "Resource": [
            "arn:aws:application-autoscaling:*:*:scalable-target/*"
          ],
          "Condition": {
            "StringEquals": {
              "aws:ResourceTag/AmazonECSManaged": "true"
            }
          }
        },
        {
          "Sid": "ApplicationAutoscalingPolicyOperations",
          "Effect": "Allow",
          "Action": [
            "application-autoscaling:PutScalingPolicy",
            "application-autoscaling:DeleteScalingPolicy"
          ],
          "Resource": [
            "arn:aws:application-autoscaling:*:*:scalable-target/*"
          ],
          "Condition": {
            "StringEquals": {
              "application-autoscaling:service-namespace": "ecs"
            }
          }
        },
        {
          "Sid": "ApplicationAutoscalingReadOperations",
          "Effect": "Allow",
          "Action": [
            "application-autoscaling:DescribeScalableTargets",
            "application-autoscaling:DescribeScalingPolicies",
            "application-autoscaling:DescribeScalingActivities"
          ],
          "Resource": [
            "arn:aws:application-autoscaling:*:*:scalable-target/*"
          ]
        },
        {
          "Sid": "CloudWatchAlarmCreateOperations",
          "Effect": "Allow",
          "Action": [
            "cloudwatch:PutMetricAlarm",
            "cloudwatch:TagResource"
          ],
          "Resource": [
            "arn:aws:cloudwatch:*:*:alarm:*"
          ],
          "Condition": {
            "StringEquals": {
              "aws:RequestTag/AmazonECSManaged": "true"
            }
          }
        },
        {
          "Sid": "CloudWatchAlarmOperations",
          "Effect": "Allow",
          "Action": [
            "cloudwatch:DeleteAlarms",
            "cloudwatch:DescribeAlarms"
          ],
          "Resource": [
            "arn:aws:cloudwatch:*:*:alarm:*"
          ],
          "Condition": {
            "StringEquals": {
              "aws:ResourceTag/AmazonECSManaged": "true"
            }
          }
        },
        {
          "Sid": "ELBReadOperations",
          "Effect": "Allow",
          "Action": [
            "elasticloadbalancing:DescribeLoadBalancers",
            "elasticloadbalancing:DescribeTargetGroups",
            "elasticloadbalancing:DescribeTargetHealth",
            "elasticloadbalancing:DescribeListeners",
            "elasticloadbalancing:DescribeRules"
          ],
          "Resource": "*"
        },
        {
          "Sid": "VPCReadOperations",
          "Effect": "Allow",
          "Action": [
            "ec2:DescribeSecurityGroups",
            "ec2:DescribeSubnets",
            "ec2:DescribeRouteTables",
            "ec2:DescribeVpcs"
          ],
          "Resource": "*"
        },
        {
          "Sid": "CloudWatchLogsCreateOperations",
          "Effect": "Allow",
          "Action": [
            "logs:CreateLogGroup",
            "logs:TagResource"
          ],
          "Resource": "arn:aws:logs:*:*:log-group:*",
          "Condition": {
            "StringEquals": {
              "aws:RequestTag/AmazonECSManaged": "true"
            }
          }
        },
        {
          "Sid": "CloudWatchLogsReadOperations",
          "Effect": "Allow",
          "Action": [
            "logs:DescribeLogGroups"
          ],
          "Resource": "*"
        }
      ]
    },
    "VersionId": "v6",
    "IsDefaultVersion": true,
    "CreateDate": "2026-02-12T18:01:54+00:00"
  }
}

Version History (5 recorded)

Raw history

AmazonECSInfrastructureRoleforExpressGatewayServices - Policy Version v6

No recorded action delta - this version predates the change index. View the raw diff.

Mar 12, 2026

f0d533f

AmazonECSInfrastructureRoleforExpressGatewayServices - Policy Version v6

No recorded action delta - this version predates the change index. View the raw diff.

Feb 12, 2026

f7ad06b

AmazonECSInfrastructureRoleforExpressGatewayServices - Policy Version v4

No recorded action delta - this version predates the change index. View the raw diff.

Feb 12, 2026

0236a50

AmazonECSInfrastructureRoleforExpressGatewayServices - Policy Version v2

No recorded action delta - this version predates the change index. View the raw diff.

Nov 17, 2025

bba039d

AmazonECSInfrastructureRoleforExpressGatewayServices - Policy Version v1

No recorded action delta - this version predates the change index. View the raw diff.

Nov 13, 2025

1f0cd0c