Ayude a mejorar esta página
Para contribuir a esta guía del usuario, elija el enlace Edit this page on GitHub que se encuentra en el panel derecho de cada página.
Concesión a los usuarios y roles de IAM de acceso a las API de Kubernetes
Su clúster tiene un punto de conexión de la API de Kubernetes. Kubectl usa esta API. Puede autenticarse en esta API mediante dos tipos de identidades:
-
Una entidad principal de AWS Identity and Access Management (IAM) (rol o usuario): este tipo requiere autenticación ante IAM. Los usuarios pueden iniciar sesión en AWS como un usuario de IAM o con una identidad federada
mediante las credenciales proporcionadas a través de una fuente de identidad. Los usuarios solo pueden iniciar sesión con una identidad federada si su administrador previamente configuró la federación de identidades mediante los roles de IAM. Cuando los usuarios acceden a AWS mediante la federación, están asumiendo un rol de forma indirecta. Cuando los usuarios utilizan este tipo de identidad, puede hacer lo siguiente: -
Puede asignarles permisos de Kubernetes para que puedan trabajar con los objetos de Kubernetes en su clúster. Para obtener más información sobre cómo asignar permisos a las entidades principales de IAM para que puedan acceder a los objetos de Kubernetes en su clúster, consulte Concesión de acceso para los usuarios de IAM a las entradas de acceso de Kubernetes con EKS.
-
Puede asignarles permisos de IAM para que puedan trabajar con su clúster de Amazon EKS y sus recursos mediante la API de Amazon EKS, AWS CLI, AWS CloudFormation, AWS Management Console o
eksctl
. Para obtener más información, consulte Acciones definidas por Amazon Elastic Kubernetes Service en la Referencia de autorización de servicios. -
Los nodos se unen al clúster asumiendo un rol de IAM. El acceso al clúster mediante las entidades principales de IAM está habilitado por el Autenticador de IAM de AWS para Kubernetes
, que se ejecuta en el plano de control de Amazon EKS.
-
-
Un usuario en su propio proveedor de OpenID Connect (OIDC): este tipo requiere la autenticación de su proveedor de OIDC
. Para obtener más información acerca de cómo configurar su propio proveedor de OIDC con su clúster de Amazon EKS, consulte Concesión de acceso a Kubernetes con un proveedor de OIDC externo para los usuarios. Cuando los usuarios utilizan este tipo de identidad, puede hacer lo siguiente: -
Puede asignarles permisos de Kubernetes para que puedan trabajar con los objetos de Kubernetes en su clúster.
-
No puede asignarles permisos de IAM para que puedan trabajar con su clúster de Amazon EKS y sus recursos mediante la API de Amazon EKS, la AWS CLI, la AWS CloudFormation, la AWS Management Console o el
eksctl
.
-
Puede utilizar ambos tipos de identidades con su clúster. El método de autenticación de IAM no se puede deshabilitar. El método de autenticación de OIDC es opcional.
Asociación de las identidades de IAM con los permisos de Kubernetes
El Autenticador de AWS IAM para Kubernetes
-
Creación de entradas de acceso: si su clúster tiene la versión de la plataforma igual o posterior a la que se indica en la sección Requisitos previos de la versión de Kubernetes del clúster, le recomendamos que utilice esta opción.
Utilice las entradas de acceso para administrar los permisos de Kubernetes de las entidades principales de IAM ajenos al clúster. Puede agregar y administrar el acceso al clúster mediante la API de EKS, la Interfaz de la línea de comandos de AWS, los SDK de AWS, AWS CloudFormation y la AWS Management Console. Esto significa que puede administrar los usuarios con las mismas herramientas con las que creó el clúster.
Para comenzar, siga Cambio del modo de autenticación para usar entradas de acceso y, a continuación, Migración de las entradas existentes de aws-auth ConfigMap a entradas de acceso.
-
Agregar entradas al
aws-auth
ConfigMap
: si la versión de la plataforma del clúster es anterior a la que aparece en la sección de Requisitos previos, debe utilizar esta opción. Si la versión de la plataforma de su clúster es igual o posterior a la versión de la plataforma que aparece en la sección Requisitos previos de la versión de Kubernetes de su clúster y ha agregado entradas alConfigMap
, le recomendamos que migre esas entradas para acceder a las ellas. Sin embargo, no puede migrar las entradas que Amazon EKS haya agregado alConfigMap
, como las entradas para los roles de IAM utilizadas con los grupos de nodos administrados o los perfiles de Fargate. Para obtener más información, consulte Concesión a los usuarios y roles de IAM de acceso a las API de Kubernetes.-
Si tiene que usar la opción de
ConfigMap
deaws-auth
, puede añadir entradas alConfigMap
mediante el comandoeksctl create iamidentitymapping
. Para obtener más información, consulte Administrar usuarios y roles de IAMen la documentación de eksctl
.
-
Establecimiento de nodos de autenticación del clúster
Cada clúster tiene un modo de autenticación. El modo de autenticación determina los métodos que puede utilizar para permitir que las entidades principales de IAM accedan a los objetos de Kubernetes en su clúster. Existen tres modos de autenticación.
importante
Una vez que se habilita el método de entrada de acceso, no se puede deshabilitar.
Si el método ConfigMap
no está habilitado durante la creación del clúster, no se podrá habilitar más adelante. Todos los clústeres creados antes de la introducción de las entradas de acceso tienen el método ConfigMap
activado.
Si usa nodos híbridos con el clúster, debe usar los modos de autenticación de clúster API
o API_AND_CONFIG_MAP
.
- El
aws-auth
ConfigMap
dentro del clúster -
Este es el modo de autenticación original de los clústeres de Amazon EKS. La entidad principal de IAM que creó el clúster es el usuario inicial que puede acceder al clúster con
kubectl
. El usuario inicial debe añadir otros usuarios a la lista en elConfigMap
deaws-auth
y asignar los permisos que afecten a los demás usuarios del clúster. Estos otros usuarios no pueden administrar ni eliminar al usuario inicial, ya que no hay ninguna entrada en elConfigMap
que administrar. - Tanto el
ConfigMap
como las entradas de acceso -
Con este modo de autenticación, puede utilizar ambos métodos para añadir las entidades principales de IAM al clúster. Tenga en cuenta que cada método almacena entradas independientes; por ejemplo, si agrega una entrada de acceso desde la AWSCLI, el
aws-auth
ConfigMap
no se actualiza. - Solo entradas de acceso
-
Con este modo de autenticación, puede utilizar la API de EKS, la Interfaz de la línea de comandos de AWS, los SDK de AWS, AWS CloudFormation y la AWS Management Console para administrar el acceso al clúster de las entidades principales de IAM.
Cada entrada de acceso tiene un tipo y puede utilizar la combinación de un enlace de acceso para limitar a la entidad principal a un espacio de nombres específico y una política de acceso para establecer políticas de permisos preconfiguradas y reutilizables. Como alternativa, puede usar el tipo STANDARD y los grupos de RBAC de Kubernetes para asignar permisos personalizados.
Modo de autenticación | Métodos |
---|---|
Solo |
|
API de EKS y |
entradas de acceso en la API de EKS, la Interfaz de línea de comandos de AWS, los SDK de AWS, AWS CloudFormation, la AWS Management Console y |
Solo la API de EKS ( |
entradas de acceso en la API de EKS, la Interfaz de línea de comandos de AWS, los SDK de AWS, AWS CloudFormation y la AWS Management Console |
nota
El modo automático de Amazon EKS requiere entradas de acceso.