AmazonEKSLocalOutpostServiceRolePolicy
Description: Allows Amazon EKS Local to call AWS services on your behalf.
AmazonEKSLocalOutpostServiceRolePolicy
is an AWS managed policy.
Using this policy
This policy is attached to a service-linked role that allows the service to perform actions on your behalf. You cannot attach this policy to your users, groups, or roles.
Policy
details
-
Type: Service-linked role policy
-
Creation time: August 23, 2022, 21:53 UTC
-
Edited time: October 24, 2022, 16:24 UTC
-
ARN:
arn:aws:iam::aws:policy/aws-service-role/AmazonEKSLocalOutpostServiceRolePolicy
Policy version
Policy version: v2 (default)
The policy's default version is the version that defines the permissions for the policy. When a user or role with the policy makes a request to access an AWS resource, AWS checks the default version of the policy to determine whether to allow the request.
JSON policy document
{
"Version" : "2012-10-17",
"Statement" : [
{
"Effect" : "Allow",
"Action" : [
"ec2:DescribeVpcs",
"ec2:DescribeSubnets",
"ec2:DescribeRouteTables",
"ec2:DescribeAddresses",
"ec2:DescribeImages",
"ec2:DescribeInstances",
"ec2:DescribeNetworkInterfaces",
"ec2:DescribeNetworkInterfaceAttribute",
"ec2:DescribeSecurityGroups",
"ec2:DescribeVpcAttribute",
"ec2:DescribePlacementGroups"
],
"Resource" : "*"
},
{
"Effect" : "Allow",
"Action" : [
"ec2:CreateNetworkInterface"
],
"Resource" : "arn:aws:ec2:*:*:network-interface/*",
"Condition" : {
"StringLike" : {
"aws:RequestTag/eks-local:controlplane-name" : "*"
}
}
},
{
"Effect" : "Allow",
"Action" : [
"ec2:CreateNetworkInterface"
],
"Resource" : [
"arn:aws:ec2:*:*:security-group/*",
"arn:aws:ec2:*:*:subnet/*"
]
},
{
"Effect" : "Allow",
"Action" : [
"ec2:ModifyNetworkInterfaceAttribute"
],
"Resource" : [
"arn:aws:ec2:*:*:instance/*",
"arn:aws:ec2:*:*:security-group/*",
"arn:aws:ec2:*:*:network-interface/*"
],
"Condition" : {
"StringLike" : {
"aws:ResourceTag/eks-local:controlplane-name" : "*"
}
}
},
{
"Effect" : "Allow",
"Action" : [
"ec2:CreateSecurityGroup"
],
"Resource" : "arn:aws:ec2:*:*:security-group/*",
"Condition" : {
"StringLike" : {
"aws:RequestTag/eks-local:controlplane-name" : "*"
}
}
},
{
"Effect" : "Allow",
"Action" : [
"ec2:CreateSecurityGroup"
],
"Resource" : "arn:aws:ec2:*:*:vpc/*"
},
{
"Effect" : "Allow",
"Action" : "ec2:RunInstances",
"Resource" : "arn:aws:ec2:*:*:instance/*",
"Condition" : {
"StringLike" : {
"aws:RequestTag/eks-local:controlplane-name" : "*"
}
}
},
{
"Effect" : "Allow",
"Action" : "ec2:RunInstances",
"Resource" : [
"arn:aws:ec2:*:*:volume/*",
"arn:aws:ec2:*:*:image/*",
"arn:aws:ec2:*:*:launch-template/*",
"arn:aws:ec2:*:*:network-interface/*",
"arn:aws:ec2:*:*:security-group/*",
"arn:aws:ec2:*:*:subnet/*",
"arn:aws:ec2:*:*:placement-group/*"
]
},
{
"Effect" : "Allow",
"Action" : [
"ec2:AuthorizeSecurityGroupIngress",
"ec2:RevokeSecurityGroupIngress",
"ec2:DeleteNetworkInterface",
"ec2:DeleteSecurityGroup",
"ec2:TerminateInstances",
"ec2:GetConsoleOutput"
],
"Resource" : "*",
"Condition" : {
"StringLike" : {
"aws:ResourceTag/eks-local:controlplane-name" : "*"
}
}
},
{
"Effect" : "Allow",
"Action" : "ec2:CreateTags",
"Resource" : [
"arn:aws:ec2:*:*:security-group/*",
"arn:aws:ec2:*:*:network-interface/*",
"arn:aws:ec2:*:*:instance/*"
],
"Condition" : {
"ForAnyValue:StringLike" : {
"aws:TagKeys" : [
"kubernetes.io/cluster/*",
"eks*"
]
},
"StringEquals" : {
"ec2:CreateAction" : [
"CreateNetworkInterface",
"CreateSecurityGroup",
"RunInstances"
]
}
}
},
{
"Effect" : "Allow",
"Action" : [
"secretsmanager:TagResource"
],
"Resource" : "arn:aws:secretsmanager:*:*:secret:eks-local.cluster.x-k8s.io/*",
"Condition" : {
"ForAnyValue:StringLike" : {
"aws:TagKeys" : [
"kubernetes.io/cluster/*",
"eks*"
]
}
}
},
{
"Effect" : "Allow",
"Action" : [
"secretsmanager:CreateSecret"
],
"Resource" : "arn:aws:secretsmanager:*:*:secret:eks-local.cluster.x-k8s.io/*",
"Condition" : {
"StringLike" : {
"aws:RequestTag/eks-local:controlplane-name" : "*"
}
}
},
{
"Effect" : "Allow",
"Action" : "secretsmanager:DeleteSecret",
"Resource" : "arn:aws:secretsmanager:*:*:secret:eks-local.cluster.x-k8s.io/*",
"Condition" : {
"StringLike" : {
"aws:ResourceTag/eks-local:controlplane-name" : "*"
}
}
},
{
"Effect" : "Allow",
"Action" : "secretsmanager:DescribeSecret",
"Resource" : "arn:aws:secretsmanager:*:*:secret:eks-local.cluster.x-k8s.io/*"
},
{
"Effect" : "Allow",
"Action" : [
"iam:PassRole"
],
"Resource" : "*",
"Condition" : {
"StringEquals" : {
"iam:PassedToService" : "ec2.amazonaws.com"
}
}
},
{
"Effect" : "Allow",
"Action" : [
"iam:GetInstanceProfile",
"iam:DeleteInstanceProfile",
"iam:RemoveRoleFromInstanceProfile"
],
"Resource" : "arn:aws:iam::*:instance-profile/eks-local-*"
},
{
"Effect" : "Allow",
"Action" : [
"ssm:StartSession"
],
"Resource" : "arn:aws:ec2:*:*:instance/*",
"Condition" : {
"StringLike" : {
"ssm:resourceTag/eks-local:controlplane-name" : "*"
}
}
},
{
"Effect" : "Allow",
"Action" : [
"ssm:StartSession"
],
"Resource" : "arn:aws:ssm:*::document/AmazonEKS-ControlPlaneInstanceProxy"
},
{
"Effect" : "Allow",
"Action" : [
"ssm:ResumeSession",
"ssm:TerminateSession"
],
"Resource" : "*"
},
{
"Effect" : "Allow",
"Action" : [
"outposts:GetOutpost"
],
"Resource" : "*"
}
]
}