Solución de problemas de IAM - Amazon EKS

Ayude a mejorar esta página

¿Quiere contribuir a esta guía del usuario? Desplácese hasta el final de esta página y seleccione Editar esta página en GitHub. Sus contribuciones ayudarán a que nuestra guía del usuario sea mejor para todos.

Solución de problemas de IAM

En este tema se tratan algunos errores habituales que pueden aparecer al utilizar Amazon EKS con IAM y cómo solucionarlos.

AccessDeniedException

Si recibe una AccessDeniedException al llamar a una operación de API de AWS, las credenciales de la entidad principal de IAM que utiliza no tienen los permisos necesarios para hacer esa llamada.

An error occurred (AccessDeniedException) when calling the DescribeCluster operation: 
User: arn:aws:iam::111122223333:user/user_name is not authorized to perform: 
eks:DescribeCluster on resource: arn:aws:eks:region:111122223333:cluster/my-cluster

En el mensaje de ejemplo anterior, el usuario no tiene permisos para llamar a la operación DescribeCluster de la API de Amazon EKS. Para proporcionar permisos de administrador de Amazon EKS a una entidad principal de IAM, consulte Ejemplos de políticas de Amazon EKS basadas en identidades.

Para obtener información general sobre IAM, consulte Control del acceso con políticas en la Guía del usuario de IAM.

No puedo ver Nodos en la pestaña Compute (Informática) o cualquier cosa de la pestaña Resources (Recursos) y recibe un error en la AWS Management Console

Es posible que aparezca un mensaje de error en la consola que dice Your current user or role does not have access to Kubernetes objects on this EKS cluster. Asegúrese de que el usuario principal de IAM con el que está utilizando la AWS Management Console tenga los permisos necesarios. Para obtener más información, consulte Permisos necesarios.

El ConfigMap de aws-auth no concede acceso al clúster

El autenticador de IAM de AWS no permite una ruta de acceso en el ARN de rol utilizado en el ConfigMap. Por lo tanto, antes de especificar rolearn, elimine la ruta de acceso. Por ejemplo, cambie arn:aws:iam::111122223333:role/team/developers/eks-admin a arn:aws:iam::111122223333:role/eks-admin.

No tengo autorización para realizar la operación iam:PassRole

Si recibe un error que indica que no tiene autorización para llevar a cabo la acción iam:PassRole, sus políticas deben actualizarse para permitirle pasar un rol a Amazon MQ.

Algunos servicios de Servicios de AWS le permiten transferir un rol existente a dicho servicio en lugar de crear un nuevo rol de servicio o uno vinculado al servicio. Para ello, debe tener permisos para transferir el rol al servicio.

En el siguiente ejemplo, el error se produce cuando un usuario de IAM denominado marymajor intenta utilizar la consola para realizar una acción en Amazon EKS. Sin embargo, la acción requiere que el servicio cuente con permisos que otorguen un rol de servicio. Mary no tiene permisos para transferir el rol al servicio.

User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole

En este caso, las políticas de Mary se deben actualizar para permitirle realizar la acción iam:PassRole.

Si necesita ayuda, póngase en contacto con su administrador de AWS. El administrador es la persona que le proporcionó las credenciales de inicio de sesión.

Quiero permitir que personas ajenas a mi cuenta de AWS accedan a mis recursos de Amazon EKS.

Puede crear un rol que los usuarios de otras cuentas o las personas externas a la organización puedan utilizar para acceder a sus recursos. Puede especificar una persona de confianza para que asuma el rol. En el caso de los servicios que admitan las políticas basadas en recursos o las listas de control de acceso (ACL), puede utilizar dichas políticas para conceder a las personas acceso a sus recursos.

Para más información, consulte lo siguiente:

Los contenedores de pods muestran el siguiente error: An error occurred (SignatureDoesNotMatch) when calling the GetCallerIdentity operation: Credential should be scoped to a valid region

Los contenedores reciben este error si la aplicación realiza solicitudes explícitamente al punto de conexión AWS STS global (https://sts.amazonaws) y su cuenta de servicio de Kubernetes está configurada para utilizar un punto de conexión regional. Puede resolver el problema con una de las siguientes opciones:

  • Actualice el código de la aplicación para eliminar las llamadas explícitas al punto de conexión global de AWS STS.

  • Actualice el código de la aplicación para realizar llamadas explícitas a puntos de conexión regionales, como https://sts.us-west-2.amazonaws.com. Su aplicación debe tener redundancia integrada para seleccionar una Región de AWS diferente en caso de producirse un error del servicio en la Región de AWS. Para obtener más información, consulte Administración de AWS STS en una Región de AWS en la guía del usuario de IAM.

  • Configure sus cuentas de servicio para utilizar el punto de conexión global. Todas las versiones anteriores a 1.22 utilizaron el punto de conexión global de forma predeterminada, pero versión 1.22 y los clústeres posteriores utilizan el punto de conexión regional de forma predeterminada. Para obtener más información, consulte Configure el punto de conexión AWS Security Token Service de una cuenta de servicio.