# coding=utf-8
# *** WARNING: this file was generated by pulumi-gen-eks. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

from enum import Enum

__all__ = [
    'AccessEntryType',
    'AuthenticationMode',
]


class AccessEntryType(str, Enum):
    """
    The type of the new access entry. Valid values are STANDARD, FARGATE_LINUX, EC2_LINUX, and EC2_WINDOWS.
    Defaults to STANDARD which provides the standard workflow. EC2_LINUX and EC2_WINDOWS types disallow users to input a kubernetesGroup, and prevent associating access policies.
    """
    STANDARD = "STANDARD"
    """
    Standard Access Entry Workflow. Allows users to input a username and kubernetesGroup, and to associate access policies.
    """
    FARGATE_LINUX = "FARGATE_LINUX"
    """
    For IAM roles used with AWS Fargate profiles.
    """
    EC2_LINUX = "EC2_LINUX"
    """
    For IAM roles associated with self-managed Linux node groups. Allows the nodes to join the cluster.
    """
    EC2_WINDOWS = "EC2_WINDOWS"
    """
    For IAM roles associated with self-managed Windows node groups. Allows the nodes to join the cluster.
    """


class AuthenticationMode(str, Enum):
    """
    The authentication mode of the cluster. Valid values are `CONFIG_MAP`, `API` or `API_AND_CONFIG_MAP`.

    See for more details:
    https://docs.aws.amazon.com/eks/latest/userguide/grant-k8s-access.html#set-cam
    """
    CONFIG_MAP = "CONFIG_MAP"
    """
    Only aws-auth ConfigMap will be used for authenticating to the Kubernetes API.
    """
    API = "API"
    """
    Only Access Entries will be used for authenticating to the Kubernetes API.
    """
    API_AND_CONFIG_MAP = "API_AND_CONFIG_MAP"
    """
    Both aws-auth ConfigMap and Access Entries can be used for authenticating to the Kubernetes API.
    """
