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.
Creación de entradas de acceso
Consideraciones
Antes de crear entradas de acceso, tenga en cuenta lo siguiente:
-
Un modo de autenticación configurado correctamente. Consulte Cambio del modo de autenticación para utilizar las entradas de acceso.
-
Una entrada de acceso incluye el Nombre de recurso de Amazon (ARN) de una sola entidad principal de IAM existente. No se puede incluir una entidad principal de IAM en más de una entrada de acceso. Consideraciones adicionales para el ARN que especifique:
-
Las prácticas recomendadas de IAM sugieren acceder al clúster mediante roles de IAM que tengan credenciales a corto plazo, en lugar de usuarios de IAM que tengan credenciales a largo plazo. Para obtener más información, consulte Solicitar que los usuarios humanos utilicen la federación con un proveedor de identidades para acceder a AWS mediante credenciales temporales en la Guía del usuario de IAM.
-
Si el ARN es para un rol de IAM, puede incluir una ruta. Los ARN de las entradas del
ConfigMap
deaws-auth
no pueden incluir una ruta. Por ejemplo, su ARN puede serarn:aws:iam::
o111122223333
:role/development/apps/
my-role
arn:aws:iam::
.111122223333
:role/my-role
-
Si el tipo de entrada de acceso es distinto a
STANDARD
(consulte la siguiente consideración sobre los tipos), el ARN debe estar en la misma Cuenta de AWS que el clúster. Si el tipo esSTANDARD
, el ARN puede estar en la misma Cuenta de AWS o en una cuenta diferente a la cuenta en la que se encuentra el clúster. -
Después de crear la entrada de acceso, no se puede cambiar la entidad principal de IAM.
-
Si alguna vez elimina la entidad principal de IAM con este ARN, la entrada de acceso no se elimina automáticamente. Le recomendamos que elimine la entrada de acceso con un ARN para la entidad principal de IAM que desea eliminar. Si no elimina la entrada de acceso y vuelve a crear la entidad principal de IAM, la entrada de acceso no funcionará aunque tenga el mismo ARN. Esto se debe a que, aunque el ARN es el mismo para la entidad principal de IAM recreada, el
roleID
ouserID
(puede verlo con el comandoaws sts get-caller-identity
de la AWS CLI) es diferente para la entidad principal de IAM recreada que para la entidad principal de IAM original. Aunque no vea elroleID
o eluserID
de la entidad principal de IAM para una entrada de acceso, Amazon EKS lo almacena junto con la entrada de acceso.
-
-
Cada entrada de acceso tiene un tipo. Puede especificar
EC2 Linux
(para un rol de IAM utilizado con nodos autoadministrados de Linux o Bottlerocket),EC2 Windows
(para un rol de IAM utilizado con nodos autoadministrados de Windows),FARGATE_LINUX
(para un rol de IAM utilizado con AWS Fargate (Fargate)) oSTANDARD
como un tipo. Si no especifica ningún tipo, Amazon EKS establece automáticamente el tipo enSTANDARD
. No es necesario crear una entrada de acceso para un rol de IAM que se utiliza para un grupo de nodos administrados o un perfil de Fargate, ya que Amazon EKS agrega entradas para estos roles alConfigMap
deaws-auth
, independientemente de la versión de la plataforma en la que se encuentre su clúster.Después de crear la entrada de acceso, no se puede cambiar el tipo.
-
Si el tipo de entrada de acceso es
STANDARD
, puede especificar un nombre de usuario para la entrada de acceso. Si no especifica un valor para el nombre de usuario, Amazon EKS establece uno de los siguientes valores en función del tipo de entrada de acceso y de si la entidad principal de IAM que especificó es un rol de IAM o un usuario de IAM. A menos que tenga un motivo específico para especificar su propio nombre de usuario, le recomendamos que no especifique ninguno y deje que Amazon EKS lo genere automáticamente. Si especifica su propio nombre de usuario:-
No puede empezar con
system:
,eks:
,aws:
,amazon:
oiam:
. -
Si el nombre de usuario corresponde a un rol de IAM, le recomendamos que añada
{{SessionName}}
al final de este. Si añade{{SessionName}}
a su nombre de usuario, este debe incluir dos puntos antes de {{SessionName}}. Cuando se asume este rol, el nombre de la sesión especificada al asumir el rol se transfiere automáticamente al clúster y aparece en los registros de CloudTrail. Por ejemplo, no puede tener un nombre de usuario comojohn{{SessionName}}
. El nombre de usuario tendría que ser:john{{SessionName}}
ojo:hn{{SessionName}}
. Los dos puntos deben estar antes de{{SessionName}}
. El nombre de usuario generado por Amazon EKS en la siguiente tabla incluye un ARN. Como un ARN incluye dos puntos, cumple con este requisito. Los dos puntos no son obligatorios si no incluye{{SessionName}}
en su nombre de usuario.
Tipo de entidad principal de IAM Tipo Valor de nombre de usuario que Amazon EKS establece automáticamente Usuario STANDARD
El ARN del usuario. Ejemplo:
arn:aws:iam::
111122223333
:user/my-user
Rol STANDARD
El ARN de STS del rol cuando se asume. Amazon EKS agrega
{{SessionName}}
al rol.Ejemplo:
arn:aws:sts::
111122223333
:assumed-role/my-role
/{{SessionName}}Si el ARN del rol que especificó contenía una ruta, Amazon EKS la elimina del nombre de usuario generado.
Rol EC2 Linux
oEC2 Windows
system:node:{{EC2PrivateDNSName}}
Rol FARGATE_LINUX
system:node:{{SessionName}}
Puede cambiar el nombre de usuario después de crear la entrada de acceso.
-
-
Si el tipo de entrada de acceso es
STANDARD
y desea utilizar la autorización RBAC de Kubernetes, puede añadir uno o más nombres de grupo a la entrada de acceso. Después de crear una entrada de acceso, puede añadir y eliminar nombres de grupos. Para que la entidad principal de IAM tenga acceso a los objetos de Kubernetes del clúster, debe crear y administrar los objetos de autorización basados en roles (RBAC) de Kubernetes. Cree objetosRoleBinding
oClusterRoleBinding
de Kubernetes en el clúster que especifiquen el nombre del grupo como unsubject
parakind: Group
. Kubernetes autoriza el acceso a la entidad principal de IAM a cualquier objeto del clúster que haya especificado en un objetoRole
oClusterRole
de Kubernetes que también haya especificado en elroleRef
del enlace. Si especifica nombres de grupo, le recomendamos que esté familiarizado con los objetos de autorizaciones basados en roles (RBAC) de Kubernetes. Para obtener más información, consulte Uso de la autorización de RBACen la documentación de Kubernetes. importante
Amazon EKS no confirma que ningún objeto RBAC de Kubernetes que exista en el clúster incluya alguno de los nombres de grupo que especifique.
En lugar de autorizar a Kubernetes para que la entidad principal de IAM acceda a los objetos de Kubernetes de su clúster, o además de ello, puede asociar las políticas de acceso de Amazon EKS a una entrada de acceso. Amazon EKS autoriza a las entidades principales de IAM a acceder a los objetos de Kubernetes del clúster con los permisos de la política de acceso. Puede limitar los permisos de una política de acceso a los espacios de nombres de Kubernetes que especifique. El uso de políticas de acceso no requiere que administre los objetos RBAC de Kubernetes. Para obtener más información, consulte Asociación de políticas de acceso a entradas de acceso.
-
Si crea una entrada de acceso con el tipo
EC2 Linux
oEC2 Windows
, la entidad principal de IAM que crea la entrada de acceso debe tener el permisoiam:PassRole
. Para obtener más información, consulte Conceder permisos a un usuario para transferir un rol a un Servicio de AWS en la Guía del usuario de IAM. -
Al igual que el comportamiento de IAM estándar, la creación y las actualizaciones de las entradas de acceso son eventualmente uniformes y pueden tardar varios segundos en hacerse efectivas una vez que la llamada inicial a la API se haya completado con éxito. Debe diseñar sus aplicaciones teniendo en cuenta estos posibles retrasos. Le recomendamos que no incluya las creaciones o las actualizaciones de las entradas de acceso en las rutas de código de gran importancia y alta disponibilidad de su aplicación. En su lugar, realice los cambios de en otra rutina de inicialización o configuración que ejecute con menos frecuencia. Además, asegúrese de verificar que los cambios se han propagado antes de que los flujos de trabajo de producción dependan de ellos.
-
Las entradas de acceso no admiten roles vinculados a servicios. No puede crear entradas de acceso en las que el ARN principal sea un rol vinculado al servicio. Puede identificar los roles vinculados al servicio por su ARN, que está en el formato
arn:aws:iam::*:role/aws-service-role/*
.
Puede crear una entrada de acceso mediante la AWS Management Console o la AWS CLI.