AmazonEKSComputePolicy
Summary
Policy attached to the EKS Cluster Role that grants permissions to manage the cluster's compute resources.
Permissions imported from the AWS Managed Policy Reference Guide; other sections pending editorial review.
Identity
- ARN
arn:aws:iam::aws:policy/AmazonEKSComputePolicy- Default version
- v7
- Created
- Last edited
- Services
- ec2, iam
Control-plane actions (8)
By access level: 1 List, 1 Tagging, 6 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| EC2 | 5 of 834 | 1 List, 1 Tagging, 3 Write; 4 restricted, 2 conditional | ec2:CreateFleet, ec2:CreateLaunchTemplate, ec2:CreateTags, ec2:DescribeCapacityReservations, ec2:RunInstances |
| IAM | 3 of 190 | 3 Write; 3 restricted, 2 conditional | iam:AddRoleToInstanceProfile, iam:CreateServiceLinkedRole, iam:PassRole |
EC2: 5 actions
- ec2:CreateFleet (Write)
- ec2:CreateLaunchTemplate (Write)
- ec2:CreateTags (Tagging)
- ec2:DescribeCapacityReservations (List)
- ec2:RunInstances (Write)
IAM: 3 actions
- iam:AddRoleToInstanceProfile (Write)
- iam:CreateServiceLinkedRole (Write)
- iam:PassRole (Write)
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 7 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
- AccessAnalyzerServiceRolePolicy
- AccountManagementFromVercel
- AdministratorAccess-AWSElasticBeanstalk
- AIDevOpsReleaseManagementVPCPolicy
- AmazonApplicationRecoveryControllerRegionSwitchPlanExecutionPolicy
- AmazonAppStreamServiceAccess
- AmazonBioDiscoveryServiceLinkedRolePolicy
- AmazonChimeServiceRolePolicy
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": [
{
"Effect": "Allow",
"Action": [
"ec2:CreateFleet",
"ec2:RunInstances"
],
"Resource": [
"arn:aws:ec2:*:*:placement-group/*",
"arn:aws:ec2:*:*:capacity-reservation/*",
"arn:aws:ec2:*::image/*",
"arn:aws:ec2:*:*:security-group/*",
"arn:aws:ec2:*:*:subnet/*"
]
},
{
"Effect": "Allow",
"Action": [
"ec2:CreateFleet",
"ec2:RunInstances"
],
"Resource": "arn:aws:ec2:*:*:launch-template/*",
"Condition": {
"StringEquals": {
"aws:ResourceTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}"
}
}
},
{
"Effect": "Allow",
"Action": [
"ec2:CreateFleet",
"ec2:RunInstances",
"ec2:CreateLaunchTemplate"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:RequestTag/eks:eks-cluster-name": "${aws:PrincipalTag/eks:eks-cluster-name}"
},
"StringLike": {
"aws:RequestTag/eks:kubernetes-node-class-name": "*",
"aws:RequestTag/eks:kubernetes-node-pool-name": "*"
},
"ForAllValues:StringLike": {
"aws:TagKeys": [
"eks:eks-cluster-name",
"eks:kubernetes-node-class-name",
"eks:kubernetes-node-pool-name",
"kubernetes.io/cluster/*"
]
}
}
},
{
"Effect": "Allow",
"Action": "ec2:CreateTags",
"Resource": "*",
"Condition": {
"StringEquals": {
"ec2:CreateAction": [
"CreateFleet",
"RunInstances",
"CreateLaunchTemplate"
]
}
}
},
{
"Effect": "Allow",
"Action": "iam:AddRoleToInstanceProfile",
"Resource": "arn:aws:iam::*:instance-profile/eks*"
},
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "*",
"Condition": {
"StringEquals": {
"iam:PassedToService": [
"ec2.amazonaws.com",
"ec2.amazonaws.com.cn"
]
}
}
},
{
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole"
],
"Resource": [
"arn:aws:iam::*:role/aws-service-role/spot.amazonaws.com/AWSServiceRoleForEC2Spot"
],
"Condition": {
"StringEquals": {
"iam:AWSServiceName": "spot.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": "ec2:DescribeCapacityReservations",
"Resource": "*"
}
]
}
Version history
Current version v7, edited by AWS on 2026-05-18. 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/AmazonEKSComputePolicy
aws iam attach-user-policy --user-name USER_NAME --policy-arn arn:aws:iam::aws:policy/AmazonEKSComputePolicy
aws iam attach-group-policy --group-name GROUP_NAME --policy-arn arn:aws:iam::aws:policy/AmazonEKSComputePolicyCloudFormation
Resources:
ExampleRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument: {} # replace with your trust policy
ManagedPolicyArns:
- arn:aws:iam::aws:policy/AmazonEKSComputePolicyTerraform
resource "aws_iam_role_policy_attachment" "amazonekscomputepolicy" {
role = aws_iam_role.example.name
policy_arn = "arn:aws:iam::aws:policy/AmazonEKSComputePolicy"
}CDK (TypeScript)
role.addManagedPolicy(
iam.ManagedPolicy.fromAwsManagedPolicyName("AmazonEKSComputePolicy"),
);Sources
Pending editorial review. No editorial sources are listed yet.