Class PodIdentityAssociation

java.lang.Object
software.amazon.awssdk.services.eks.model.PodIdentityAssociation
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<PodIdentityAssociation.Builder,PodIdentityAssociation>

@Generated("software.amazon.awssdk:codegen") public final class PodIdentityAssociation extends Object implements SdkPojo, Serializable, ToCopyableBuilder<PodIdentityAssociation.Builder,PodIdentityAssociation>

Amazon EKS Pod Identity associations provide the ability to manage credentials for your applications, similar to the way that Amazon EC2 instance profiles provide credentials to Amazon EC2 instances.

See Also:
  • Method Details

    • clusterName

      public final String clusterName()

      The name of the cluster that the association is in.

      Returns:
      The name of the cluster that the association is in.
    • namespace

      public final String namespace()

      The name of the Kubernetes namespace inside the cluster to create the association in. The service account and the pods that use the service account must be in this namespace.

      Returns:
      The name of the Kubernetes namespace inside the cluster to create the association in. The service account and the pods that use the service account must be in this namespace.
    • serviceAccount

      public final String serviceAccount()

      The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.

      Returns:
      The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.
    • roleArn

      public final String roleArn()

      The Amazon Resource Name (ARN) of the IAM role to associate with the service account. 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:
      The Amazon Resource Name (ARN) of the IAM role to associate with the service account. The EKS Pod Identity agent manages credentials to assume this role for applications in the containers in the pods that use this service account.
    • associationArn

      public final String associationArn()

      The Amazon Resource Name (ARN) of the association.

      Returns:
      The Amazon Resource Name (ARN) of the association.
    • associationId

      public final String associationId()

      The ID of the association.

      Returns:
      The ID of the association.
    • hasTags

      public final boolean hasTags()
      For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • tags

      public final Map<String,String> 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 Amazon Web Services 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: + - = . _ : / @.

      • Tag keys and values are case-sensitive.

      • Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasTags() method.

      Returns:
      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 Amazon Web Services 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: + - = . _ : / @.

      • Tag keys and values are case-sensitive.

      • Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.

    • createdAt

      public final Instant createdAt()

      The timestamp that the association was created at.

      Returns:
      The timestamp that the association was created at.
    • modifiedAt

      public final Instant modifiedAt()

      The most recent timestamp that the association was modified at

      Returns:
      The most recent timestamp that the association was modified at
    • ownerArn

      public final String ownerArn()

      If defined, the Pod Identity Association is owned by an Amazon EKS Addon.

      Returns:
      If defined, the Pod Identity Association is owned by an Amazon EKS Addon.
    • toBuilder

      public PodIdentityAssociation.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<PodIdentityAssociation.Builder,PodIdentityAssociation>
      Returns:
      a builder for type T
    • builder

      public static PodIdentityAssociation.Builder builder()
    • serializableBuilderClass

      public static Class<? extends PodIdentityAssociation.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.