Class CfnPodIdentityAssociationProps.Builder

java.lang.Object
software.amazon.awscdk.services.eks.CfnPodIdentityAssociationProps.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnPodIdentityAssociationProps>
Enclosing interface:
CfnPodIdentityAssociationProps

@Stability(Stable) public static final class CfnPodIdentityAssociationProps.Builder extends Object implements software.amazon.jsii.Builder<CfnPodIdentityAssociationProps>
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • clusterName

      @Stability(Stable) public CfnPodIdentityAssociationProps.Builder clusterName(String clusterName)
      Parameters:
      clusterName - The name of the cluster that the association is in. This parameter is required.
      Returns:
      this
    • namespace

      @Stability(Stable) public CfnPodIdentityAssociationProps.Builder namespace(String namespace)
      Parameters:
      namespace - The name of the Kubernetes namespace inside the cluster to create the association in. This parameter is required. The service account and the Pods that use the service account must be in this namespace.
      Returns:
      this
    • roleArn

      @Stability(Stable) public CfnPodIdentityAssociationProps.Builder roleArn(String roleArn)
      Parameters:
      roleArn - The Amazon Resource Name (ARN) of the IAM role to associate with the service account. This parameter is required. The EKS Pod Identity agent manages credentials to assume this role for applications in the containers in the Pods that use this service account.
      Returns:
      this
    • serviceAccount

      @Stability(Stable) public CfnPodIdentityAssociationProps.Builder serviceAccount(String serviceAccount)
      Parameters:
      serviceAccount - The name of the Kubernetes service account inside the cluster to associate the IAM credentials with. This parameter is required.
      Returns:
      this
    • disableSessionTags

      @Stability(Stable) public CfnPodIdentityAssociationProps.Builder disableSessionTags(Boolean disableSessionTags)
      Parameters:
      disableSessionTags - The state of the automatic sessions tags. The value of true disables these tags. EKS Pod Identity adds a pre-defined set of session tags when it assumes the role. You can use these tags to author a single role that can work across resources by allowing access to AWS resources based on matching tags. By default, EKS Pod Identity attaches six tags, including tags for cluster name, namespace, and service account name. For the list of tags added by EKS Pod Identity, see List of session tags added by EKS Pod Identity in the Amazon EKS User Guide .
      Returns:
      this
    • disableSessionTags

      @Stability(Stable) public CfnPodIdentityAssociationProps.Builder disableSessionTags(IResolvable disableSessionTags)
      Parameters:
      disableSessionTags - The state of the automatic sessions tags. The value of true disables these tags. EKS Pod Identity adds a pre-defined set of session tags when it assumes the role. You can use these tags to author a single role that can work across resources by allowing access to AWS resources based on matching tags. By default, EKS Pod Identity attaches six tags, including tags for cluster name, namespace, and service account name. For the list of tags added by EKS Pod Identity, see List of session tags added by EKS Pod Identity in the Amazon EKS User Guide .
      Returns:
      this
    • tags

      @Stability(Stable) public CfnPodIdentityAssociationProps.Builder tags(List<? extends CfnTag> tags)
      Parameters:
      tags - Metadata that assists with categorization and organization. Each tag consists of a key and an optional value. You define both. Tags don't propagate to any other cluster or AWS resources.

      The following basic restrictions apply to tags:

      • Maximum number of tags per resource – 50
      • For each resource, each tag key must be unique, and each tag key can have only one value.
      • Maximum key length – 128 Unicode characters in UTF-8
      • Maximum value length – 256 Unicode characters in UTF-8
      • If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : /
      Returns:
      this
    • targetRoleArn

      @Stability(Stable) public CfnPodIdentityAssociationProps.Builder targetRoleArn(String targetRoleArn)
      Parameters:
      targetRoleArn - The Amazon Resource Name (ARN) of the target IAM role to associate with the service account. This role is assumed by using the EKS Pod Identity association role, then the credentials for this role are injected into the Pod.
      Returns:
      this
    • build

      @Stability(Stable) public CfnPodIdentityAssociationProps build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnPodIdentityAssociationProps>
      Returns:
      a new instance of CfnPodIdentityAssociationProps
      Throws:
      NullPointerException - if any required attribute was not provided