AmazonECSInfrastructureRolePolicyForManagedInstances
Summary
Provides ECS access to create and manage EC2 managed resources
Permissions imported from the AWS Managed Policy Reference Guide; other sections pending editorial review.
Identity
- ARN
arn:aws:iam::aws:policy/AmazonECSInfrastructureRolePolicyForManagedInstances- Default version
- v13
- Created
- Last edited
- Services
- cloudformation, ec2, iam, resource-groups, tag
Control-plane actions (23)
By access level: 13 List, 1 Read, 1 Tagging, 8 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| CloudFormation | 2 of 104 | 2 List; 0 restricted, 0 conditional | cloudformation:DescribeStacks, cloudformation:ListStackResources |
| EC2 | 17 of 834 | 10 List, 1 Tagging, 6 Write; 7 restricted, 5 conditional | ec2:CreateFleet, ec2:CreateLaunchTemplate, ec2:CreateLaunchTemplateVersion, ec2:CreateTags, ec2:CreateVolume, ec2:DescribeAvailabilityZones, ec2:DescribeCapacityReservations, ec2:DescribeInstanceTypeOfferings, ec2:DescribeInstanceTypes, ec2:DescribeInstances, ec2:DescribeLaunchTemplates, ec2:DescribeNetworkInterfaces and 5 more |
| IAM | 2 of 190 | 2 Write; 2 restricted, 1 conditional | iam:CreateServiceLinkedRole, iam:PassRole |
| Resource Groups | 1 of 29 | 1 List; 0 restricted, 0 conditional | resource-groups:ListGroupResources |
| Resource Group Tagging | 1 of 9 | 1 Read; 0 restricted, 0 conditional | tag:GetResources |
CloudFormation: 2 actions
- cloudformation:DescribeStacks (List)
- cloudformation:ListStackResources (List)
EC2: 17 actions
- ec2:CreateFleet (Write)
- ec2:CreateLaunchTemplate (Write)
- ec2:CreateLaunchTemplateVersion (Write)
- ec2:CreateTags (Tagging)
- ec2:CreateVolume (Write)
- ec2:DescribeAvailabilityZones (List)
- ec2:DescribeCapacityReservations (List)
- ec2:DescribeInstanceTypeOfferings (List)
- ec2:DescribeInstanceTypes (List)
- ec2:DescribeInstances (List)
- ec2:DescribeLaunchTemplates (List)
- ec2:DescribeNetworkInterfaces (List)
- ec2:DescribeSecurityGroups (List)
- ec2:DescribeSubnets (List)
- ec2:DescribeVpcs (List)
- ec2:ModifyLaunchTemplate (Write)
- ec2:RunInstances (Write)
IAM: 2 actions
- iam:CreateServiceLinkedRole (Write)
- iam:PassRole (Write)
Resource Groups: 1 actions
- resource-groups:ListGroupResources (List)
Resource Group Tagging: 1 actions
- tag:GetResources (Read)
Data-plane actions (0)
By access level: none.
This policy grants no actions in this plane.
Excluded and conditional actions
No patterns are excluded by NotAction or Deny statements.
Resource scope and attachment
Resource scope across granted actions: mixed.
Can be attached: Yes, to users, groups and roles.
Why this tier
- Grants 9 write, tagging or permissions-management actions, short of full control of any service.
- Grants iam:PassRole, but only for scoped roles or under conditions (for example iam:PassedToService).
Guidance
Pending editorial review. The permission data on this page comes straight from AWS; this section will be filled in once a reviewed guide exists.
Related policies
Same service
- AdministratorAccess-AWSElasticBeanstalk
- AIDevOpsReleaseManagementVPCPolicy
- AmazonAppStreamServiceAccess
- AmazonBioDiscoveryServiceLinkedRolePolicy
- AmazonDataZoneEnvironmentRolePermissionsBoundary
- AmazonDataZoneProjectDeploymentPermissionsBoundary
- AmazonDataZoneProjectRolePermissionsBoundary
- AmazonDataZoneSageMakerProvisioningRolePolicy
Same domain
Frequently asked questions
Pending editorial review. The permission data on this page comes straight from AWS; this section will be filled in once a reviewed guide exists.
Policy JSON
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "CreateLaunchTemplateForManagedInstances",
"Effect": "Allow",
"Action": [
"ec2:CreateLaunchTemplate"
],
"Resource": [
"arn:aws:ec2:*:*:launch-template/*"
],
"Condition": {
"StringEquals": {
"aws:RequestTag/AmazonECSManaged": "true"
}
}
},
{
"Sid": "CreateLaunchTemplateVersionsForManagedInstances",
"Effect": "Allow",
"Action": [
"ec2:CreateLaunchTemplateVersion",
"ec2:ModifyLaunchTemplate"
],
"Resource": [
"arn:aws:ec2:*:*:launch-template/*"
],
"Condition": {
"StringEquals": {
"ec2:ManagedResourceOperator": "ecs.amazonaws.com"
}
}
},
{
"Sid": "ProvisionEC2InstancesForManagedInstances",
"Effect": "Allow",
"Action": [
"ec2:CreateFleet"
],
"Resource": [
"arn:aws:ec2:*:*:fleet/*",
"arn:aws:ec2:*:*:instance/*",
"arn:aws:ec2:*:*:network-interface/*",
"arn:aws:ec2:*:*:volume/*"
],
"Condition": {
"StringEquals": {
"aws:RequestTag/AmazonECSManaged": "true"
}
}
},
{
"Sid": "CreateFleetForSupportingResources",
"Effect": "Allow",
"Action": [
"ec2:CreateFleet"
],
"Resource": [
"arn:aws:ec2:*:*:subnet/*",
"arn:aws:ec2:*:*:security-group/*",
"arn:aws:ec2:*::image/*"
]
},
{
"Sid": "CreateFleetForECSManagedLaunchTemplates",
"Effect": "Allow",
"Action": [
"ec2:CreateFleet"
],
"Resource": [
"arn:aws:ec2:*:*:launch-template/*"
],
"Condition": {
"StringEquals": {
"ec2:ResourceTag/AmazonECSManaged": "true"
}
}
},
{
"Sid": "RunInstancesForManagedInstances",
"Effect": "Allow",
"Action": [
"ec2:RunInstances"
],
"Resource": [
"arn:aws:ec2:*:*:instance/*",
"arn:aws:ec2:*:*:volume/*",
"arn:aws:ec2:*:*:network-interface/*"
],
"Condition": {
"StringEquals": {
"aws:RequestTag/AmazonECSManaged": "true"
}
}
},
{
"Sid": "RunInstancesForECSManagedLaunchTemplates",
"Effect": "Allow",
"Action": [
"ec2:RunInstances"
],
"Resource": [
"arn:aws:ec2:*:*:launch-template/*"
],
"Condition": {
"StringEquals": {
"ec2:ResourceTag/AmazonECSManaged": "true"
}
}
},
{
"Sid": "RunInstancesForSupportingResources",
"Effect": "Allow",
"Action": [
"ec2:RunInstances"
],
"Resource": [
"arn:aws:ec2:*:*:subnet/*",
"arn:aws:ec2:*:*:security-group/*",
"arn:aws:ec2:*::image/*",
"arn:aws:resource-groups:*:*:group/*"
]
},
{
"Sid": "TagOnCreateEC2ResourcesForManagedInstances",
"Effect": "Allow",
"Action": [
"ec2:CreateTags"
],
"Resource": [
"arn:aws:ec2:*:*:fleet/*",
"arn:aws:ec2:*:*:launch-template/*",
"arn:aws:ec2:*:*:network-interface/*",
"arn:aws:ec2:*:*:instance/*",
"arn:aws:ec2:*:*:volume/*"
],
"Condition": {
"StringEquals": {
"ec2:CreateAction": [
"CreateFleet",
"CreateLaunchTemplate",
"RunInstances"
]
}
}
},
{
"Sid": "PassInstanceRoleForManagedInstances",
"Effect": "Allow",
"Action": [
"iam:PassRole"
],
"Resource": [
"arn:aws:iam::*:role/ecsInstanceRole*"
],
"Condition": {
"StringLike": {
"iam:PassedToService": "ec2.*"
}
}
},
{
"Sid": "CreateServiceLinkedRoleForEC2Spot",
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole"
],
"Resource": [
"arn:aws:iam::*:role/aws-service-role/spot.amazonaws.com/AWSServiceRoleForEC2Spot"
]
},
{
"Sid": "DescribeEC2ResourcesManagedByECS",
"Effect": "Allow",
"Action": [
"ec2:DescribeInstances",
"ec2:DescribeInstanceTypes",
"ec2:DescribeLaunchTemplates",
"ec2:DescribeNetworkInterfaces",
"ec2:DescribeInstanceTypeOfferings",
"ec2:DescribeAvailabilityZones",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSubnets",
"ec2:DescribeVpcs",
"ec2:DescribeCapacityReservations"
],
"Resource": "*"
},
{
"Sid": "ListResourceGroupResources",
"Effect": "Allow",
"Action": [
"resource-groups:ListGroupResources",
"cloudformation:DescribeStacks",
"cloudformation:ListStackResources",
"tag:GetResources"
],
"Resource": "*"
},
{
"Sid": "ValidateDataVolumeConfigurationForManagedInstances",
"Effect": "Allow",
"Action": [
"ec2:CreateVolume"
],
"Resource": [
"arn:aws:ec2:*:*:volume/*"
],
"Condition": {
"StringEquals": {
"aws:RequestTag/AmazonECSManaged": "true"
}
}
}
]
}
Version history
Current version v13, edited by AWS on 2026-10-22. Version history is recorded from 2026-11-11. Earlier versions are in the IAM console under Policy versions.
Attach snippets
AWS CLI
aws iam attach-role-policy --role-name ROLE_NAME --policy-arn arn:aws:iam::aws:policy/AmazonECSInfrastructureRolePolicyForManagedInstances
aws iam attach-user-policy --user-name USER_NAME --policy-arn arn:aws:iam::aws:policy/AmazonECSInfrastructureRolePolicyForManagedInstances
aws iam attach-group-policy --group-name GROUP_NAME --policy-arn arn:aws:iam::aws:policy/AmazonECSInfrastructureRolePolicyForManagedInstancesCloudFormation
Resources:
ExampleRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument: {} # replace with your trust policy
ManagedPolicyArns:
- arn:aws:iam::aws:policy/AmazonECSInfrastructureRolePolicyForManagedInstancesTerraform
resource "aws_iam_role_policy_attachment" "amazonecsinfrastructurerolepolicyformanagedinstances" {
role = aws_iam_role.example.name
policy_arn = "arn:aws:iam::aws:policy/AmazonECSInfrastructureRolePolicyForManagedInstances"
}CDK (TypeScript)
role.addManagedPolicy(
iam.ManagedPolicy.fromAwsManagedPolicyName("AmazonECSInfrastructureRolePolicyForManagedInstances"),
);Sources
Pending editorial review. No editorial sources are listed yet.