Quiero administrar los roles de AWS Identity and Access Management (IAM) para mi clúster de Amazon Elastic Kubernetes Service (Amazon EKS) para reducir los problemas relacionados con los permisos.
Descripción corta
Si no tiene los permisos correctos para acceder a un clúster de Amazon EKS, es posible que aparezca uno de los siguientes errores:
- "Your current IAM principal doesn't have access to Kubernetes objects on this cluster"
- "You must be logged in to the server (Unauthorized)"
- "You must be logged in to the server (the server has asked for the client to provide credentials)"
Estos errores pueden producirse por uno de los siguientes motivos:
- Usted o su cliente (la interfaz de la línea de comandos de AWS [AWS CLI] o la aplicación) no se autenticaron en el clúster de EKS.
- La clave de acceso o la clave secreta de AWS no son válidas.
- Tiene una URL de punto de enlace de clúster incorrecta.
- No ha configurado correctamente su archivo kubeconfig.
Para solucionar este problema, realice las siguientes tareas.
Resolución
Nota: Si se muestran errores al poner en marcha comandos de AWS CLI, consulte Solución de errores de AWS CLI. Además, asegúrese de utilizar la versión más reciente de la AWS CLI.
Revisión de las credenciales y el archivo de configuración
Revise sus credenciales de AWS para asegurarse de que son válidas y tienen los permisos necesarios para acceder al clúster de Amazon EKS. Si ejecuta los comandos de kubectl y obtiene uno de los errores anteriores, significa que no ha configurado kubectl correctamente.
Para comprobar sus credenciales, ejecute el comando get-caller-identity de la AWS CLI:
aws sts get-caller-identity
Si usa un archivo de configuración de kubeconfig para el clúster, revise las configuraciones de sus archivos. Si las configuraciones no son correctas, use el comando update-kubeconfig para actualizar el archivo:
aws eks update-kubeconfig
Para obtener más información, consulte Conexión de kubectl a un clúster de Amazon EKS mediante la creación de un archivo kubeconfig.
Revisión del método de autenticación de clústeres de Amazon EKS
Clústeres de Amazon EKS que utilizan el mapa de configuración
En el caso de los clústeres de Amazon EKS que se autentican con el mapa de configuración, configure la CLI para que utilice la misma identidad de IAM para acceder al clúster y editar el mapa. Si no hay ninguna identidad que pueda acceder al clúster de Amazon EKS, asuma el rol de creador del clúster. A continuación, edite el mapa de configuración. Para obtener más información, consulte ¿Cómo proporciono acceso al clúster a otros usuarios y roles de IAM después de crear un clúster en Amazon EKS?
Si no ve la identidad de IAM en la lista o la has configurado mal, actualice las entidades principales de IAM del mapa de configuración. Para obtener más información, consulte Agregar las entidades principales de IAM al clúster de Amazon EKS.
Clústeres de Amazon EKS que utilizan la autenticación de API
Para los clústeres de Amazon EKS que se autentican con la API de Amazon EKS, debe crear una entrada de acceso para que la identidad de IAM proporcione los permisos correctos.
Para comprobar si hay una entrada de acceso para la identidad de IAM, ejecute el comando list-access-entries:
aws eks list-access-entries --cluster-name Your_cluster_name
Nota: Sustituya Your_cluster_name por el nombre del clúster.
Si no hay una entrada de acceso para la identidad de IAM, créela. Además, asegúrese de que el clúster de Amazon EKS tenga las políticas de acceso correctas. Para obtener más información, consulte Asociación de políticas de acceso a entradas de acceso.
Nota: El método de entrada de acceso no sustituye el control de autorización basado en roles (RBAC) en Amazon EKS. Puede usar las entradas de acceso de Amazon EKS con RBAC en el clúster para conceder configuraciones más específicas. Para obtener más información, consulte A deep dive into simplified Amazon EKS access management controls (Profundizar en los controles simplificados de administración de acceso de Amazon EKS).
Información relacionada
Getting started with Amazon EMR on Amazon EKS (Introducción a Amazon EMR en Amazon EKS)
Redirección de tráfico de aplicaciones y HTTP con los equilibradores de carga de aplicaciones
Redirección del tráfico de TCP y UDP con equilibradores de carga de red
Solución de problemas con los clústeres y nodos de Amazon EKS