aws-iam.RoleForServiceAccountsEks
Explore with Pulumi AI
This resources helps you create an IAM role which can be assumed by AWS EKS ServiceAccounts with optional policies for commonly used controllers/custom resources within EKS. The optional policies you can specify are:
- Cert-Manager
- Cluster Autoscaler
- EBS CSI Driver
- EFS CSI Driver
- External DNS
- External Secrets
- FSx for Lustre CSI Driver
- Karpenter
- Load Balancer Controller
- Load Balancer Controller Target Group Binding Only
- App Mesh Controller
- App Mesh Envoy Proxy
- Managed Service for Prometheus
- Node Termination Handler
- Velero
- VPC CNI
Example Usage
using Pulumi;
using Pulumi.AwsIam;
using Pulumi.AwsIam.Inputs;
class MyStack : Stack
{
public MyStack()
{
var roleForServiceAccountEks = new RoleForServiceAccountsEks("role-for-service-account-eks", new RoleForServiceAccountsEksArgs
{
Role = new EKSServiceAccountRoleArgs
{
Name = "vpn-cni",
},
Tags = {
{"Name", "vpc-cni-irsa"},
},
OidcProviders = {
{"main", new OIDCProviderArgs
{
ProviderArn = "arn:aws:iam::012345678901:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/5C54DDF35ER19312844C7333374CC09D",
NamespaceServiceAccounts = {"default:my-app", "canary:my-app"},
}},
},
Policies = new EKSRolePoliciesArgs
{
VpnCni = new EKSVPNCNIPolicyArgs
{
Attach = true,
EnableIpv4 = true,
},
},
});
this.RoleForServiceAccountEks = Output.Create<RoleForServiceAccountsEks>(roleForServiceAccountEks);
}
[Output]
public Output<RoleForServiceAccountsEks> RoleForServiceAccountEks { get; set; }
}
package main
import (
iam "github.com/pulumi/pulumi-aws-iam/sdk/go/aws-iam"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
roleForServiceAccountsEKS, err := iam.NewRoleForServiceAccountsEks(ctx, "role-for-service-accounts-eks", &iam.RoleForServiceAccountsEksArgs{
Role: iam.EKSServiceAccountRolePtr(&iam.EKSServiceAccountRoleArgs{
Name: pulumi.String("vpc-cni"),
}),
Tags: pulumi.ToStringMap(map[string]string{
"Name": "vpc-cni-irsa",
}),
OidcProviders: iam.OIDCProviderMap{
"main": iam.OIDCProviderArgs{
ProviderArn: pulumi.String("arn:aws:iam::012345678901:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/5C54DDF35ER19312844C7333374CC09D"),
NamespaceServiceAccounts: pulumi.ToStringArray([]string{"default:my-app", "canary:my-app"}),
},
},
Policies: iam.EKSRolePoliciesPtr(&iam.EKSRolePoliciesArgs{
VpnCni: iam.EKSVPNCNIPolicyPtr(&iam.EKSVPNCNIPolicyArgs{
Attach: pulumi.Bool(true),
EnableIpv4: pulumi.BoolPtr(true),
}),
}),
})
if err != nil {
return err
}
ctx.Export("roleForServiceAccountsEKS", roleForServiceAccountsEKS)
return nil
})
}
Coming soon!
import pulumi
import pulumi_aws_iam as iam
role_for_service_account_eks = iam.RoleForServiceAccountsEks(
'role_for_service_account_eks',
role=iam.RoleArgs(
name='vpc-cni'
),
tags={
'Name': 'vpc-cni-irsa',
},
oidc_providers={
'main': iam.OIDCProviderArgs(
provider_arn='arn:aws:iam::012345678901:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/5C54DDF35ER19312844C7333374CC09D',
namespace_service_accounts=['default:my-app', 'canary:my-app'],
),
},
policies=iam.EKSRolePoliciesArgs(
vpn_cni=iam.EKSVPNCNIPolicyArgs(
attach=True,
enable_ipv4=True,
),
),
)
pulumi.export('role_for_service_account_eks', role_for_service_account_eks)
import * as iam from "@pulumi/aws-iam";
export const roleForServiceAccountsEks = new iam.RoleForServiceAccountsEks("aws-iam-example-role-for-service-accounts-eks", {
role: {
name: "vpc-cni"
},
tags: {
Name: "vpc-cni-irsa",
},
oidcProviders: {
main: {
providerArn: "arn:aws:iam::012345678901:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/5C54DDF35ER19312844C7333374CC09D",
namespaceServiceAccounts: ["default:my-app", "canary:my-app"],
}
},
policies: {
vpnCni: {
attach: true,
enableIpv4: true,
},
},
});
name: awsiam-yaml
runtime: yaml
resources:
roleForServiceAccountsEks:
type: "aws-iam:index:RoleForServiceAccountsEks"
properties:
role:
name: "vpc-cni"
tags:
Name: "vpc-cni-irsa"
oidcProviders:
main:
providerArn: "arn:aws:iam::012345678901:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/5C54DDF35ER19312844C7333374CC09D"
namespaceServiceAccounts:
- "default:my-app"
- "canary:my-app"
policies:
vpnCni:
attach: true
enableIpv4: true
outputs:
roleForServiceAccountsEks: ${roleForServiceAccountsEks}
Create RoleForServiceAccountsEks Resource
new RoleForServiceAccountsEks(name: string, args?: RoleForServiceAccountsEksArgs, opts?: CustomResourceOptions);
@overload
def RoleForServiceAccountsEks(resource_name: str,
opts: Optional[ResourceOptions] = None,
assume_role_condition_test: Optional[str] = None,
force_detach_policies: Optional[bool] = None,
max_session_duration: Optional[int] = None,
oidc_providers: Optional[Mapping[str, OIDCProviderArgs]] = None,
policies: Optional[EKSRolePoliciesArgs] = None,
policy_name_prefix: Optional[str] = None,
role: Optional[EKSServiceAccountRoleArgs] = None,
tags: Optional[Mapping[str, str]] = None)
@overload
def RoleForServiceAccountsEks(resource_name: str,
args: Optional[RoleForServiceAccountsEksArgs] = None,
opts: Optional[ResourceOptions] = None)
func NewRoleForServiceAccountsEks(ctx *Context, name string, args *RoleForServiceAccountsEksArgs, opts ...ResourceOption) (*RoleForServiceAccountsEks, error)
public RoleForServiceAccountsEks(string name, RoleForServiceAccountsEksArgs? args = null, CustomResourceOptions? opts = null)
public RoleForServiceAccountsEks(String name, RoleForServiceAccountsEksArgs args)
public RoleForServiceAccountsEks(String name, RoleForServiceAccountsEksArgs args, CustomResourceOptions options)
type: aws-iam:RoleForServiceAccountsEks
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args RoleForServiceAccountsEksArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args RoleForServiceAccountsEksArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args RoleForServiceAccountsEksArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args RoleForServiceAccountsEksArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args RoleForServiceAccountsEksArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
RoleForServiceAccountsEks Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The RoleForServiceAccountsEks resource accepts the following input properties:
- Assume
Role stringCondition Test Name of the IAM condition operator to evaluate when assuming the role.
- Force
Detach boolPolicies Whether policies should be detached from this role when destroying.
- Max
Session intDuration Maximum CLI/API session duration in seconds between 3600 and 43200.
- Oidc
Providers Dictionary<string, Pulumi.Aws Iam. Inputs. OIDCProvider Args> Map of OIDC providers.
- Policies
Pulumi.
Aws Iam. Inputs. EKSRole Policies Args - Policy
Name stringPrefix IAM policy name prefix.
- Role
Pulumi.
Aws Iam. Inputs. EKSService Account Role Args - Dictionary<string, string>
A map of tags to add.
- Assume
Role stringCondition Test Name of the IAM condition operator to evaluate when assuming the role.
- Force
Detach boolPolicies Whether policies should be detached from this role when destroying.
- Max
Session intDuration Maximum CLI/API session duration in seconds between 3600 and 43200.
- Oidc
Providers map[string]OIDCProviderArgs Map of OIDC providers.
- Policies
EKSRole
Policies Args - Policy
Name stringPrefix IAM policy name prefix.
- Role
EKSService
Account Role Args - map[string]string
A map of tags to add.
- assume
Role StringCondition Test Name of the IAM condition operator to evaluate when assuming the role.
- force
Detach BooleanPolicies Whether policies should be detached from this role when destroying.
- max
Session IntegerDuration Maximum CLI/API session duration in seconds between 3600 and 43200.
- oidc
Providers Map<String,OIDCProviderArgs> Map of OIDC providers.
- policies
EKSRole
Policies Args - policy
Name StringPrefix IAM policy name prefix.
- role
EKSService
Account Role Args - Map<String,String>
A map of tags to add.
- assume
Role stringCondition Test Name of the IAM condition operator to evaluate when assuming the role.
- force
Detach booleanPolicies Whether policies should be detached from this role when destroying.
- max
Session numberDuration Maximum CLI/API session duration in seconds between 3600 and 43200.
- oidc
Providers {[key: string]: OIDCProviderArgs} Map of OIDC providers.
- policies
EKSRole
Policies Args - policy
Name stringPrefix IAM policy name prefix.
- role
EKSService
Account Role Args - {[key: string]: string}
A map of tags to add.
- assume_
role_ strcondition_ test Name of the IAM condition operator to evaluate when assuming the role.
- force_
detach_ boolpolicies Whether policies should be detached from this role when destroying.
- max_
session_ intduration Maximum CLI/API session duration in seconds between 3600 and 43200.
- oidc_
providers Mapping[str, OIDCProviderArgs] Map of OIDC providers.
- policies
EKSRole
Policies Args - policy_
name_ strprefix IAM policy name prefix.
- role
EKSService
Account Role Args - Mapping[str, str]
A map of tags to add.
- assume
Role StringCondition Test Name of the IAM condition operator to evaluate when assuming the role.
- force
Detach BooleanPolicies Whether policies should be detached from this role when destroying.
- max
Session NumberDuration Maximum CLI/API session duration in seconds between 3600 and 43200.
- oidc
Providers Map<Property Map> Map of OIDC providers.
- policies Property Map
- policy
Name StringPrefix IAM policy name prefix.
- role Property Map
- Map<String>
A map of tags to add.
Outputs
All input properties are implicitly available as output properties. Additionally, the RoleForServiceAccountsEks resource produces the following output properties:
Supporting Types
EKSAmazonManagedServicePrometheusPolicy
- Attach bool
Determines whether to attach the Amazon Managed Service for Prometheus IAM policy to the role.
- Workspace
Arns List<string> List of AMP Workspace ARNs to read and write metrics. If not provided, a default ARN of "*" will be provided.
- Attach bool
Determines whether to attach the Amazon Managed Service for Prometheus IAM policy to the role.
- Workspace
Arns []string List of AMP Workspace ARNs to read and write metrics. If not provided, a default ARN of "*" will be provided.
- attach Boolean
Determines whether to attach the Amazon Managed Service for Prometheus IAM policy to the role.
- workspace
Arns List<String> List of AMP Workspace ARNs to read and write metrics. If not provided, a default ARN of "*" will be provided.
- attach boolean
Determines whether to attach the Amazon Managed Service for Prometheus IAM policy to the role.
- workspace
Arns string[] List of AMP Workspace ARNs to read and write metrics. If not provided, a default ARN of "*" will be provided.
- attach bool
Determines whether to attach the Amazon Managed Service for Prometheus IAM policy to the role.
- workspace_
arns Sequence[str] List of AMP Workspace ARNs to read and write metrics. If not provided, a default ARN of "*" will be provided.
- attach Boolean
Determines whether to attach the Amazon Managed Service for Prometheus IAM policy to the role.
- workspace
Arns List<String> List of AMP Workspace ARNs to read and write metrics. If not provided, a default ARN of "*" will be provided.
EKSAppmeshPolicy
- Controller bool
Determines whether to attach the Appmesh Controller policy to the role.
- Envoy
Proxy bool Determines whether to attach the Appmesh envoy proxy policy to the role.
- Controller bool
Determines whether to attach the Appmesh Controller policy to the role.
- Envoy
Proxy bool Determines whether to attach the Appmesh envoy proxy policy to the role.
- controller Boolean
Determines whether to attach the Appmesh Controller policy to the role.
- envoy
Proxy Boolean Determines whether to attach the Appmesh envoy proxy policy to the role.
- controller boolean
Determines whether to attach the Appmesh Controller policy to the role.
- envoy
Proxy boolean Determines whether to attach the Appmesh envoy proxy policy to the role.
- controller bool
Determines whether to attach the Appmesh Controller policy to the role.
- envoy_
proxy bool Determines whether to attach the Appmesh envoy proxy policy to the role.
- controller Boolean
Determines whether to attach the Appmesh Controller policy to the role.
- envoy
Proxy Boolean Determines whether to attach the Appmesh envoy proxy policy to the role.
EKSCertManagerPolicy
- Attach bool
Determines whether to attach the Cert Manager IAM policy to the role.
- Hosted
Zone List<string>Arns Route53 hosted zone ARNs to allow Cert manager to manage records. If not provided, the default ARN "arn:aws:route53:::hostedzone/*" will be applied.
- Attach bool
Determines whether to attach the Cert Manager IAM policy to the role.
- Hosted
Zone []stringArns Route53 hosted zone ARNs to allow Cert manager to manage records. If not provided, the default ARN "arn:aws:route53:::hostedzone/*" will be applied.
- attach Boolean
Determines whether to attach the Cert Manager IAM policy to the role.
- hosted
Zone List<String>Arns Route53 hosted zone ARNs to allow Cert manager to manage records. If not provided, the default ARN "arn:aws:route53:::hostedzone/*" will be applied.
- attach boolean
Determines whether to attach the Cert Manager IAM policy to the role.
- hosted
Zone string[]Arns Route53 hosted zone ARNs to allow Cert manager to manage records. If not provided, the default ARN "arn:aws:route53:::hostedzone/*" will be applied.
- attach bool
Determines whether to attach the Cert Manager IAM policy to the role.
- hosted_
zone_ Sequence[str]arns Route53 hosted zone ARNs to allow Cert manager to manage records. If not provided, the default ARN "arn:aws:route53:::hostedzone/*" will be applied.
- attach Boolean
Determines whether to attach the Cert Manager IAM policy to the role.
- hosted
Zone List<String>Arns Route53 hosted zone ARNs to allow Cert manager to manage records. If not provided, the default ARN "arn:aws:route53:::hostedzone/*" will be applied.
EKSClusterAutoscalerPolicy
- Attach bool
Determines whether to attach the Cluster Autoscaler IAM policy to the role.
- Cluster
Ids List<string> List of cluster IDs to appropriately scope permissions within the Cluster Autoscaler IAM policy.
- Attach bool
Determines whether to attach the Cluster Autoscaler IAM policy to the role.
- Cluster
Ids []string List of cluster IDs to appropriately scope permissions within the Cluster Autoscaler IAM policy.
- attach Boolean
Determines whether to attach the Cluster Autoscaler IAM policy to the role.
- cluster
Ids List<String> List of cluster IDs to appropriately scope permissions within the Cluster Autoscaler IAM policy.
- attach boolean
Determines whether to attach the Cluster Autoscaler IAM policy to the role.
- cluster
Ids string[] List of cluster IDs to appropriately scope permissions within the Cluster Autoscaler IAM policy.
- attach bool
Determines whether to attach the Cluster Autoscaler IAM policy to the role.
- cluster_
ids Sequence[str] List of cluster IDs to appropriately scope permissions within the Cluster Autoscaler IAM policy.
- attach Boolean
Determines whether to attach the Cluster Autoscaler IAM policy to the role.
- cluster
Ids List<String> List of cluster IDs to appropriately scope permissions within the Cluster Autoscaler IAM policy.
EKSEBSCSIPolicy
- attach bool
Determines whether to attach the EBS CSI IAM policy to the role.
- kms_
cmk_ Sequence[str]ids KMS CMK IDs to allow EBS CSI to manage encrypted volumes.
EKSEFSCSIPolicy
- Attach bool
Determines whether to attach the EFS CSI IAM policy to the role.
- Attach bool
Determines whether to attach the EFS CSI IAM policy to the role.
- attach Boolean
Determines whether to attach the EFS CSI IAM policy to the role.
- attach boolean
Determines whether to attach the EFS CSI IAM policy to the role.
- attach bool
Determines whether to attach the EFS CSI IAM policy to the role.
- attach Boolean
Determines whether to attach the EFS CSI IAM policy to the role.
EKSExternalDNSPolicy
- Attach bool
Determines whether to attach the External DNS IAM policy to the role.
- Hosted
Zone List<string>Arns Route53 hosted zone ARNs to allow External DNS to manage records. If not provided, the default ARN "arn:aws:route53:::hostedzone/*" will be applied.
- Attach bool
Determines whether to attach the External DNS IAM policy to the role.
- Hosted
Zone []stringArns Route53 hosted zone ARNs to allow External DNS to manage records. If not provided, the default ARN "arn:aws:route53:::hostedzone/*" will be applied.
- attach Boolean
Determines whether to attach the External DNS IAM policy to the role.
- hosted
Zone List<String>Arns Route53 hosted zone ARNs to allow External DNS to manage records. If not provided, the default ARN "arn:aws:route53:::hostedzone/*" will be applied.
- attach boolean
Determines whether to attach the External DNS IAM policy to the role.
- hosted
Zone string[]Arns Route53 hosted zone ARNs to allow External DNS to manage records. If not provided, the default ARN "arn:aws:route53:::hostedzone/*" will be applied.
- attach bool
Determines whether to attach the External DNS IAM policy to the role.
- hosted_
zone_ Sequence[str]arns Route53 hosted zone ARNs to allow External DNS to manage records. If not provided, the default ARN "arn:aws:route53:::hostedzone/*" will be applied.
- attach Boolean
Determines whether to attach the External DNS IAM policy to the role.
- hosted
Zone List<String>Arns Route53 hosted zone ARNs to allow External DNS to manage records. If not provided, the default ARN "arn:aws:route53:::hostedzone/*" will be applied.
EKSExternalSecretsPolicy
- Attach bool
Determines whether to attach the External Secrets policy to the role.
- Secrets
Manager List<string>Arns List of Secrets Manager ARNs that contain secrets to mount using External Secrets. If not provided, the default ARN "arn:aws:secretsmanager:::secret:*" will be applied.
- Ssm
Parameter List<string>Arns List of Systems Manager Parameter ARNs that contain secrets to mount using External Secrets. If not provided, the default ARN "arn:aws:ssm:::parameter/*" will be applied.
- Attach bool
Determines whether to attach the External Secrets policy to the role.
- Secrets
Manager []stringArns List of Secrets Manager ARNs that contain secrets to mount using External Secrets. If not provided, the default ARN "arn:aws:secretsmanager:::secret:*" will be applied.
- Ssm
Parameter []stringArns List of Systems Manager Parameter ARNs that contain secrets to mount using External Secrets. If not provided, the default ARN "arn:aws:ssm:::parameter/*" will be applied.
- attach Boolean
Determines whether to attach the External Secrets policy to the role.
- secrets
Manager List<String>Arns List of Secrets Manager ARNs that contain secrets to mount using External Secrets. If not provided, the default ARN "arn:aws:secretsmanager:::secret:*" will be applied.
- ssm
Parameter List<String>Arns List of Systems Manager Parameter ARNs that contain secrets to mount using External Secrets. If not provided, the default ARN "arn:aws:ssm:::parameter/*" will be applied.
- attach boolean
Determines whether to attach the External Secrets policy to the role.
- secrets
Manager string[]Arns List of Secrets Manager ARNs that contain secrets to mount using External Secrets. If not provided, the default ARN "arn:aws:secretsmanager:::secret:*" will be applied.
- ssm
Parameter string[]Arns List of Systems Manager Parameter ARNs that contain secrets to mount using External Secrets. If not provided, the default ARN "arn:aws:ssm:::parameter/*" will be applied.
- attach bool
Determines whether to attach the External Secrets policy to the role.
- secrets_
manager_ Sequence[str]arns List of Secrets Manager ARNs that contain secrets to mount using External Secrets. If not provided, the default ARN "arn:aws:secretsmanager:::secret:*" will be applied.
- ssm_
parameter_ Sequence[str]arns List of Systems Manager Parameter ARNs that contain secrets to mount using External Secrets. If not provided, the default ARN "arn:aws:ssm:::parameter/*" will be applied.
- attach Boolean
Determines whether to attach the External Secrets policy to the role.
- secrets
Manager List<String>Arns List of Secrets Manager ARNs that contain secrets to mount using External Secrets. If not provided, the default ARN "arn:aws:secretsmanager:::secret:*" will be applied.
- ssm
Parameter List<String>Arns List of Systems Manager Parameter ARNs that contain secrets to mount using External Secrets. If not provided, the default ARN "arn:aws:ssm:::parameter/*" will be applied.
EKSKarpenterControllerPolicy
- Attach bool
Determines whether to attach the Karpenter Controller policy to the role.
- Cluster
Id string Cluster ID where the Karpenter controller is provisioned/managing.
- Node
Iam List<string>Role Arns List of node IAM role ARNs Karpenter can use to launch nodes. If not provided, the default ARN "*" will be applied.
- Ssm
Parameter List<string>Arns List of SSM Parameter ARNs that contain AMI IDs launched by Karpenter. If not provided, the default ARN "arn:aws:ssm:::parameter/aws/service/*" will be applied.
- Subnet
Account stringId Account ID of where the subnets Karpenter will utilize resides. Used when subnets are shared from another account.
- Tag
Key string Tag key (
{key = value}
) applied to resources launched by Karpenter through the Karpenter provisioner.
- Attach bool
Determines whether to attach the Karpenter Controller policy to the role.
- Cluster
Id string Cluster ID where the Karpenter controller is provisioned/managing.
- Node
Iam []stringRole Arns List of node IAM role ARNs Karpenter can use to launch nodes. If not provided, the default ARN "*" will be applied.
- Ssm
Parameter []stringArns List of SSM Parameter ARNs that contain AMI IDs launched by Karpenter. If not provided, the default ARN "arn:aws:ssm:::parameter/aws/service/*" will be applied.
- Subnet
Account stringId Account ID of where the subnets Karpenter will utilize resides. Used when subnets are shared from another account.
- Tag
Key string Tag key (
{key = value}
) applied to resources launched by Karpenter through the Karpenter provisioner.
- attach Boolean
Determines whether to attach the Karpenter Controller policy to the role.
- cluster
Id String Cluster ID where the Karpenter controller is provisioned/managing.
- node
Iam List<String>Role Arns List of node IAM role ARNs Karpenter can use to launch nodes. If not provided, the default ARN "*" will be applied.
- ssm
Parameter List<String>Arns List of SSM Parameter ARNs that contain AMI IDs launched by Karpenter. If not provided, the default ARN "arn:aws:ssm:::parameter/aws/service/*" will be applied.
- subnet
Account StringId Account ID of where the subnets Karpenter will utilize resides. Used when subnets are shared from another account.
- tag
Key String Tag key (
{key = value}
) applied to resources launched by Karpenter through the Karpenter provisioner.
- attach boolean
Determines whether to attach the Karpenter Controller policy to the role.
- cluster
Id string Cluster ID where the Karpenter controller is provisioned/managing.
- node
Iam string[]Role Arns List of node IAM role ARNs Karpenter can use to launch nodes. If not provided, the default ARN "*" will be applied.
- ssm
Parameter string[]Arns List of SSM Parameter ARNs that contain AMI IDs launched by Karpenter. If not provided, the default ARN "arn:aws:ssm:::parameter/aws/service/*" will be applied.
- subnet
Account stringId Account ID of where the subnets Karpenter will utilize resides. Used when subnets are shared from another account.
- tag
Key string Tag key (
{key = value}
) applied to resources launched by Karpenter through the Karpenter provisioner.
- attach bool
Determines whether to attach the Karpenter Controller policy to the role.
- cluster_
id str Cluster ID where the Karpenter controller is provisioned/managing.
- node_
iam_ Sequence[str]role_ arns List of node IAM role ARNs Karpenter can use to launch nodes. If not provided, the default ARN "*" will be applied.
- ssm_
parameter_ Sequence[str]arns List of SSM Parameter ARNs that contain AMI IDs launched by Karpenter. If not provided, the default ARN "arn:aws:ssm:::parameter/aws/service/*" will be applied.
- subnet_
account_ strid Account ID of where the subnets Karpenter will utilize resides. Used when subnets are shared from another account.
- tag_
key str Tag key (
{key = value}
) applied to resources launched by Karpenter through the Karpenter provisioner.
- attach Boolean
Determines whether to attach the Karpenter Controller policy to the role.
- cluster
Id String Cluster ID where the Karpenter controller is provisioned/managing.
- node
Iam List<String>Role Arns List of node IAM role ARNs Karpenter can use to launch nodes. If not provided, the default ARN "*" will be applied.
- ssm
Parameter List<String>Arns List of SSM Parameter ARNs that contain AMI IDs launched by Karpenter. If not provided, the default ARN "arn:aws:ssm:::parameter/aws/service/*" will be applied.
- subnet
Account StringId Account ID of where the subnets Karpenter will utilize resides. Used when subnets are shared from another account.
- tag
Key String Tag key (
{key = value}
) applied to resources launched by Karpenter through the Karpenter provisioner.
EKSLoadBalancerPolicy
- Controller bool
Determines whether to attach the Load Balancer Controller policy to the role.
- Target
Group boolBinding Only Determines whether to attach the Load Balancer Controller policy for the TargetGroupBinding only.
- Controller bool
Determines whether to attach the Load Balancer Controller policy to the role.
- Target
Group boolBinding Only Determines whether to attach the Load Balancer Controller policy for the TargetGroupBinding only.
- controller Boolean
Determines whether to attach the Load Balancer Controller policy to the role.
- target
Group BooleanBinding Only Determines whether to attach the Load Balancer Controller policy for the TargetGroupBinding only.
- controller boolean
Determines whether to attach the Load Balancer Controller policy to the role.
- target
Group booleanBinding Only Determines whether to attach the Load Balancer Controller policy for the TargetGroupBinding only.
- controller bool
Determines whether to attach the Load Balancer Controller policy to the role.
- target_
group_ boolbinding_ only Determines whether to attach the Load Balancer Controller policy for the TargetGroupBinding only.
- controller Boolean
Determines whether to attach the Load Balancer Controller policy to the role.
- target
Group BooleanBinding Only Determines whether to attach the Load Balancer Controller policy for the TargetGroupBinding only.
EKSNodeTerminationHandlerPolicy
- Attach bool
Determines whether to attach the Node Termination Handler policy to the role.
- Sqs
Queue List<string>Arns List of SQS ARNs that contain node termination events. If not provided, then a default ARN of "*" will be provided.
- Attach bool
Determines whether to attach the Node Termination Handler policy to the role.
- Sqs
Queue []stringArns List of SQS ARNs that contain node termination events. If not provided, then a default ARN of "*" will be provided.
- attach Boolean
Determines whether to attach the Node Termination Handler policy to the role.
- sqs
Queue List<String>Arns List of SQS ARNs that contain node termination events. If not provided, then a default ARN of "*" will be provided.
- attach boolean
Determines whether to attach the Node Termination Handler policy to the role.
- sqs
Queue string[]Arns List of SQS ARNs that contain node termination events. If not provided, then a default ARN of "*" will be provided.
- attach bool
Determines whether to attach the Node Termination Handler policy to the role.
- sqs_
queue_ Sequence[str]arns List of SQS ARNs that contain node termination events. If not provided, then a default ARN of "*" will be provided.
- attach Boolean
Determines whether to attach the Node Termination Handler policy to the role.
- sqs
Queue List<String>Arns List of SQS ARNs that contain node termination events. If not provided, then a default ARN of "*" will be provided.
EKSRolePolicies
- Amazon
Managed Pulumi.Service Prometheus Aws Iam. Inputs. EKSAmazon Managed Service Prometheus Policy The Amazon Managed Service for Prometheus IAM policy.
- Appmesh
Pulumi.
Aws Iam. Inputs. EKSAppmesh Policy The Appmesh policies.
- Cert
Manager Pulumi.Aws Iam. Inputs. EKSCert Manager Policy The Cert Manager IAM policy.
- Cluster
Auto Pulumi.Scaling Aws Iam. Inputs. EKSCluster Autoscaler Policy The Cluster Autoscaler IAM policy.
- Ebs
Csi Pulumi.Aws Iam. Inputs. EKSEBSCSIPolicy The EBS CSI IAM policy.
- Efs
Csi Pulumi.Aws Iam. Inputs. EKSEFSCSIPolicy The EFS CSI IAM policy.
- External
Dns Pulumi.Aws Iam. Inputs. EKSExternal DNSPolicy The External DNS IAM policy.
- External
Secrets Pulumi.Aws Iam. Inputs. EKSExternal Secrets Policy The External Secrets policy.
- Fsx
Lustre Pulumi.Csi Aws Iam. Inputs. FSx Lustre CSIPolicy The FSx for Lustre CSI Driver IAM policy.
- Karpenter
Controller Pulumi.Aws Iam. Inputs. EKSKarpenter Controller Policy The Karpenter Controller policy.
- Load
Balancer Pulumi.Aws Iam. Inputs. EKSLoad Balancer Policy The Load Balancer policy.
- Node
Termination Pulumi.Handler Aws Iam. Inputs. EKSNode Termination Handler Policy The Node Termination Handler policy to the role.
- Velero
Pulumi.
Aws Iam. Inputs. EKSVelero Policy The Velero IAM policy.
- Vpn
Cni Pulumi.Aws Iam. Inputs. EKSVPNCNIPolicy The VPC CNI IAM policy to the role.
- Amazon
Managed EKSAmazonService Prometheus Managed Service Prometheus Policy The Amazon Managed Service for Prometheus IAM policy.
- Appmesh
EKSAppmesh
Policy The Appmesh policies.
- Cert
Manager EKSCertManager Policy The Cert Manager IAM policy.
- Cluster
Auto EKSClusterScaling Autoscaler Policy The Cluster Autoscaler IAM policy.
- Ebs
Csi EKSEBSCSIPolicy The EBS CSI IAM policy.
- Efs
Csi EKSEFSCSIPolicy The EFS CSI IAM policy.
- External
Dns EKSExternalDNSPolicy The External DNS IAM policy.
- External
Secrets EKSExternalSecrets Policy The External Secrets policy.
- Fsx
Lustre FSxCsi Lustre CSIPolicy The FSx for Lustre CSI Driver IAM policy.
- Karpenter
Controller EKSKarpenterController Policy The Karpenter Controller policy.
- Load
Balancer EKSLoadBalancer Policy The Load Balancer policy.
- Node
Termination EKSNodeHandler Termination Handler Policy The Node Termination Handler policy to the role.
- Velero
EKSVelero
Policy The Velero IAM policy.
- Vpn
Cni EKSVPNCNIPolicy The VPC CNI IAM policy to the role.
- amazon
Managed EKSAmazonService Prometheus Managed Service Prometheus Policy The Amazon Managed Service for Prometheus IAM policy.
- appmesh
EKSAppmesh
Policy The Appmesh policies.
- cert
Manager EKSCertManager Policy The Cert Manager IAM policy.
- cluster
Auto EKSClusterScaling Autoscaler Policy The Cluster Autoscaler IAM policy.
- ebs
Csi EKSEBSCSIPolicy The EBS CSI IAM policy.
- efs
Csi EKSEFSCSIPolicy The EFS CSI IAM policy.
- external
Dns EKSExternalDNSPolicy The External DNS IAM policy.
- external
Secrets EKSExternalSecrets Policy The External Secrets policy.
- fsx
Lustre FSxCsi Lustre CSIPolicy The FSx for Lustre CSI Driver IAM policy.
- karpenter
Controller EKSKarpenterController Policy The Karpenter Controller policy.
- load
Balancer EKSLoadBalancer Policy The Load Balancer policy.
- node
Termination EKSNodeHandler Termination Handler Policy The Node Termination Handler policy to the role.
- velero
EKSVelero
Policy The Velero IAM policy.
- vpn
Cni EKSVPNCNIPolicy The VPC CNI IAM policy to the role.
- amazon
Managed EKSAmazonService Prometheus Managed Service Prometheus Policy The Amazon Managed Service for Prometheus IAM policy.
- appmesh
EKSAppmesh
Policy The Appmesh policies.
- cert
Manager EKSCertManager Policy The Cert Manager IAM policy.
- cluster
Auto EKSClusterScaling Autoscaler Policy The Cluster Autoscaler IAM policy.
- ebs
Csi EKSEBSCSIPolicy The EBS CSI IAM policy.
- efs
Csi EKSEFSCSIPolicy The EFS CSI IAM policy.
- external
Dns EKSExternalDNSPolicy The External DNS IAM policy.
- external
Secrets EKSExternalSecrets Policy The External Secrets policy.
- fsx
Lustre FSxCsi Lustre CSIPolicy The FSx for Lustre CSI Driver IAM policy.
- karpenter
Controller EKSKarpenterController Policy The Karpenter Controller policy.
- load
Balancer EKSLoadBalancer Policy The Load Balancer policy.
- node
Termination EKSNodeHandler Termination Handler Policy The Node Termination Handler policy to the role.
- velero
EKSVelero
Policy The Velero IAM policy.
- vpn
Cni EKSVPNCNIPolicy The VPC CNI IAM policy to the role.
- amazon_
managed_ EKSAmazonservice_ prometheus Managed Service Prometheus Policy The Amazon Managed Service for Prometheus IAM policy.
- appmesh
EKSAppmesh
Policy The Appmesh policies.
- cert_
manager EKSCertManager Policy The Cert Manager IAM policy.
- cluster_
auto_ EKSClusterscaling Autoscaler Policy The Cluster Autoscaler IAM policy.
- ebs_
csi EKSEBSCSIPolicy The EBS CSI IAM policy.
- efs_
csi EKSEFSCSIPolicy The EFS CSI IAM policy.
- external_
dns EKSExternalDNSPolicy The External DNS IAM policy.
- external_
secrets EKSExternalSecrets Policy The External Secrets policy.
- fsx_
lustre_ FSxcsi Lustre CSIPolicy The FSx for Lustre CSI Driver IAM policy.
- karpenter_
controller EKSKarpenterController Policy The Karpenter Controller policy.
- load_
balancer EKSLoadBalancer Policy The Load Balancer policy.
- node_
termination_ EKSNodehandler Termination Handler Policy The Node Termination Handler policy to the role.
- velero
EKSVelero
Policy The Velero IAM policy.
- vpn_
cni EKSVPNCNIPolicy The VPC CNI IAM policy to the role.
- amazon
Managed Property MapService Prometheus The Amazon Managed Service for Prometheus IAM policy.
- appmesh Property Map
The Appmesh policies.
- cert
Manager Property Map The Cert Manager IAM policy.
- cluster
Auto Property MapScaling The Cluster Autoscaler IAM policy.
- ebs
Csi Property Map The EBS CSI IAM policy.
- efs
Csi Property Map The EFS CSI IAM policy.
- external
Dns Property Map The External DNS IAM policy.
- external
Secrets Property Map The External Secrets policy.
- fsx
Lustre Property MapCsi The FSx for Lustre CSI Driver IAM policy.
- karpenter
Controller Property Map The Karpenter Controller policy.
- load
Balancer Property Map The Load Balancer policy.
- node
Termination Property MapHandler The Node Termination Handler policy to the role.
- velero Property Map
The Velero IAM policy.
- vpn
Cni Property Map The VPC CNI IAM policy to the role.
EKSServiceAccountRole
- Description string
IAM Role description.
- Name string
IAM role name.
- Name
Prefix string IAM role name prefix.
- Path string
Path of admin IAM role.
- Permissions
Boundary stringArn Permissions boundary ARN to use for the role.
- Policy
Arns List<string> List of policy ARNs to use for the role.
- Description string
IAM Role description.
- Name string
IAM role name.
- Name
Prefix string IAM role name prefix.
- Path string
Path of admin IAM role.
- Permissions
Boundary stringArn Permissions boundary ARN to use for the role.
- Policy
Arns []string List of policy ARNs to use for the role.
- description String
IAM Role description.
- name String
IAM role name.
- name
Prefix String IAM role name prefix.
- path String
Path of admin IAM role.
- permissions
Boundary StringArn Permissions boundary ARN to use for the role.
- policy
Arns List<String> List of policy ARNs to use for the role.
- description string
IAM Role description.
- name string
IAM role name.
- name
Prefix string IAM role name prefix.
- path string
Path of admin IAM role.
- permissions
Boundary stringArn Permissions boundary ARN to use for the role.
- policy
Arns string[] List of policy ARNs to use for the role.
- description str
IAM Role description.
- name str
IAM role name.
- name_
prefix str IAM role name prefix.
- path str
Path of admin IAM role.
- permissions_
boundary_ strarn Permissions boundary ARN to use for the role.
- policy_
arns Sequence[str] List of policy ARNs to use for the role.
- description String
IAM Role description.
- name String
IAM role name.
- name
Prefix String IAM role name prefix.
- path String
Path of admin IAM role.
- permissions
Boundary StringArn Permissions boundary ARN to use for the role.
- policy
Arns List<String> List of policy ARNs to use for the role.
EKSVPNCNIPolicy
- Attach bool
Determines whether to attach the VPC CNI IAM policy to the role.
- Enable
Ipv4 bool Determines whether to enable IPv4 permissions for VPC CNI policy.
- Enable
Ipv6 bool Determines whether to enable IPv6 permissions for VPC CNI policy.
- Attach bool
Determines whether to attach the VPC CNI IAM policy to the role.
- Enable
Ipv4 bool Determines whether to enable IPv4 permissions for VPC CNI policy.
- Enable
Ipv6 bool Determines whether to enable IPv6 permissions for VPC CNI policy.
- attach Boolean
Determines whether to attach the VPC CNI IAM policy to the role.
- enable
Ipv4 Boolean Determines whether to enable IPv4 permissions for VPC CNI policy.
- enable
Ipv6 Boolean Determines whether to enable IPv6 permissions for VPC CNI policy.
- attach boolean
Determines whether to attach the VPC CNI IAM policy to the role.
- enable
Ipv4 boolean Determines whether to enable IPv4 permissions for VPC CNI policy.
- enable
Ipv6 boolean Determines whether to enable IPv6 permissions for VPC CNI policy.
- attach bool
Determines whether to attach the VPC CNI IAM policy to the role.
- enable_
ipv4 bool Determines whether to enable IPv4 permissions for VPC CNI policy.
- enable_
ipv6 bool Determines whether to enable IPv6 permissions for VPC CNI policy.
- attach Boolean
Determines whether to attach the VPC CNI IAM policy to the role.
- enable
Ipv4 Boolean Determines whether to enable IPv4 permissions for VPC CNI policy.
- enable
Ipv6 Boolean Determines whether to enable IPv6 permissions for VPC CNI policy.
EKSVeleroPolicy
- Attach bool
Determines whether to attach the Velero IAM policy to the role.
- S3Bucket
Arns List<string> List of S3 Bucket ARNs that Velero needs access to in order to backup and restore cluster resources. If not provided, a default ARN of "*" will be provided.
- Attach bool
Determines whether to attach the Velero IAM policy to the role.
- S3Bucket
Arns []string List of S3 Bucket ARNs that Velero needs access to in order to backup and restore cluster resources. If not provided, a default ARN of "*" will be provided.
- attach Boolean
Determines whether to attach the Velero IAM policy to the role.
- s3Bucket
Arns List<String> List of S3 Bucket ARNs that Velero needs access to in order to backup and restore cluster resources. If not provided, a default ARN of "*" will be provided.
- attach boolean
Determines whether to attach the Velero IAM policy to the role.
- s3Bucket
Arns string[] List of S3 Bucket ARNs that Velero needs access to in order to backup and restore cluster resources. If not provided, a default ARN of "*" will be provided.
- attach bool
Determines whether to attach the Velero IAM policy to the role.
- s3_
bucket_ Sequence[str]arns List of S3 Bucket ARNs that Velero needs access to in order to backup and restore cluster resources. If not provided, a default ARN of "*" will be provided.
- attach Boolean
Determines whether to attach the Velero IAM policy to the role.
- s3Bucket
Arns List<String> List of S3 Bucket ARNs that Velero needs access to in order to backup and restore cluster resources. If not provided, a default ARN of "*" will be provided.
FSxLustreCSIPolicy
- Attach bool
Determines whether to attach the FSx for Lustre CSI Driver IAM policy to the role.
- Service
Role List<string>Arns Service role ARNs to allow FSx for Lustre CSI create and manage FSX for Lustre service linked roles. If not provided, the default ARN "arn:aws:iam:::role/aws-service-role/s3.data-source.lustre.fsx.amazonaws.com/" will be applied.
- Attach bool
Determines whether to attach the FSx for Lustre CSI Driver IAM policy to the role.
- Service
Role []stringArns Service role ARNs to allow FSx for Lustre CSI create and manage FSX for Lustre service linked roles. If not provided, the default ARN "arn:aws:iam:::role/aws-service-role/s3.data-source.lustre.fsx.amazonaws.com/" will be applied.
- attach Boolean
Determines whether to attach the FSx for Lustre CSI Driver IAM policy to the role.
- service
Role List<String>Arns Service role ARNs to allow FSx for Lustre CSI create and manage FSX for Lustre service linked roles. If not provided, the default ARN "arn:aws:iam:::role/aws-service-role/s3.data-source.lustre.fsx.amazonaws.com/" will be applied.
- attach boolean
Determines whether to attach the FSx for Lustre CSI Driver IAM policy to the role.
- service
Role string[]Arns Service role ARNs to allow FSx for Lustre CSI create and manage FSX for Lustre service linked roles. If not provided, the default ARN "arn:aws:iam:::role/aws-service-role/s3.data-source.lustre.fsx.amazonaws.com/" will be applied.
- attach bool
Determines whether to attach the FSx for Lustre CSI Driver IAM policy to the role.
- service_
role_ Sequence[str]arns Service role ARNs to allow FSx for Lustre CSI create and manage FSX for Lustre service linked roles. If not provided, the default ARN "arn:aws:iam:::role/aws-service-role/s3.data-source.lustre.fsx.amazonaws.com/" will be applied.
- attach Boolean
Determines whether to attach the FSx for Lustre CSI Driver IAM policy to the role.
- service
Role List<String>Arns Service role ARNs to allow FSx for Lustre CSI create and manage FSX for Lustre service linked roles. If not provided, the default ARN "arn:aws:iam:::role/aws-service-role/s3.data-source.lustre.fsx.amazonaws.com/" will be applied.
OIDCProvider
- Namespace
Service List<string>Accounts - Provider
Arn string
- Namespace
Service []stringAccounts - Provider
Arn string
- namespace
Service List<String>Accounts - provider
Arn String
- namespace
Service string[]Accounts - provider
Arn string
- namespace_
service_ Sequence[str]accounts - provider_
arn str
- namespace
Service List<String>Accounts - provider
Arn String
Package Details
- Repository
- aws-iam
- License