AmazonEKSComputePolicy

Last Modified

May 18, 2026

May 18, 2026 at 10:02 PM UTC

Version

v7

Total Versions

5

Created

May 18, 2026

Actions

12

Risk

Medium

The same capabilities in a scoped form, resource policy writes, reads across all data, or full access to a whole service. Read from this policy document alone: trust policies, boundaries and SCPs in your account still decide what actually succeeds. How this is assessed

  • Medium

    Can launch resources that run as a more privileged role

    Grants the actions of 1 documented escalation path, but only on named resources or under a condition. Review that scope before trusting it.

    • ec2-001iam:PassRole + ec2:RunInstancesscoped
      • iam:PassRole: condition iam:PassedToService

    Use with caution: Check which roles, users or policies fall inside the scope shown above. Within it the escalation works as documented, so keep privileged principals out of it.

IAM Access Analyzer (2)

  • Suggestion / EQUIVALENT_TO_NULL_FALSE

    We recommend replacing the key aws:RequestTag/eks:kubernetes-node-class-name in the condition block of StringLike with {aws:RequestTag/eks:kubernetes-node-class-name: false} to ensure better enforcement of the condition. AWS docs

  • Suggestion / EQUIVALENT_TO_NULL_FALSE

    We recommend replacing the key aws:RequestTag/eks:kubernetes-node-pool-name in the condition block of StringLike with {aws:RequestTag/eks:kubernetes-node-pool-name: false} to ensure better enforcement of the condition. AWS docs

Policy Document

View on GitHub
{
  "PolicyVersion": {
    "Document": {
      "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": "*"
        }
      ]
    },
    "VersionId": "v7",
    "IsDefaultVersion": true,
    "CreateDate": "2026-05-18T21:12:10+00:00"
  }
}

Version History (8 recorded)

Raw history
v7updated

1 action added

44dbe94
v6updated

scope changed, no action added or removed

805bd3a

AmazonEKSComputePolicy - Policy Version v5

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

Mar 12, 2026

92988a2

AmazonEKSComputePolicy - Policy Version v5

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

Feb 12, 2026

15560a9

AmazonEKSComputePolicy - Policy Version v4

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

Feb 12, 2026

62e4386

Update detected

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

Jun 20, 2025

1efc329

Update detected

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

Nov 7, 2024

d0ac46f

Update detected

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

Nov 1, 2024

97a0294