Acerca de los roles de IAM de AWS

En esta página, se describe cómo Google Cloud administra los permisos y las funciones de Identity and Access Management (IAM) de AWS para tu GKE on AWS.

GKE on AWS usa la API de AWS a fin de crear recursos como instancias EC2, grupos de ajuste de escala automático y balanceadores de cargas para los componentes de GKE on AWS y tus cargas de trabajo. Debes proporcionar a Google Cloud permisos de IAM de AWS para crear estos recursos.

Cómo GKE on AWS accede a la API de AWS

GKE on AWS usa la federación de identidades en AWS para administrar el acceso detallado a tu cuenta de AWS. Cuando GKE on AWS necesita realizar una acción en tu clúster, solicita un token de corta duración de AWS. La función de la API de múltiples nubes de GKE usa este token para autenticarse en AWS.

Agentes de servicio

A fin de otorgar a Google Cloud acceso para crear, actualizar, borrar y administrar clústeres en tu cuenta de AWS, GKE on AWS crea un agente de servicio en el proyecto de Google Cloud. El agente de servicio es una cuenta de servicio administrada por Google que usa la función de IAM de AWS de la API de múltiples nubes de GKE. Debes crear una función de IAM de AWS para el agente de servicio en cada proyecto de Google Cloud desde el que administras los clústeres de GKE. El agente de servicio usa la dirección de correo electrónico service-PROJECT_NUMBER@gcp-sa-gkemulticloud.iam.gserviceaccount.com. Para obtener más información sobre los permisos de IAM de Google Cloud, consulta Agente de servicio de múltiples nubes de Anthos.

Permisos de IAM de AWS para GKE en AWS

Puedes crear roles que usen roles unciones de IAM de AWS predeterminados o crear tus propias políticas de IAM de AWS personalizadas que cumplan con los requisitos de tu organización.

Usa las políticas predeterminadas

Una política de IAM de AWS es una colección de permisos. Si deseas otorgar permisos a fin de crear y administrar clústeres, primero debes crear políticas de IAM de AWS para los siguientes roles:

Rol de agente de servicio de la API de múltiples nubes de GKE
La API de múltiples nubes de GKE usa este rol de IAM de AWS para administrar los recursos con las APIs de AWS. Una cuenta de servicio administrada por Google conocida como agente de servicio usa este rol.
Rol de IAM de AWS del plano de control
El plano de control del clúster usa este rol para controlar los grupos de nodos.
Rol de IAM de AWS de grupo de nodos
El plano de control usa este rol para crear VM de grupo de nodos.

Si deseas usar las funciones sugeridas de IAM de AWS para que GKE on AWS administre los clústeres, consulta Crea funciones de IAM de AWS.

Crea políticas de IAM personalizadas

Para restringir aún más los permisos, en lugar de usar las políticas sugeridas, puedes crear políticas personalizadas de IAM de AWS que permitan GKE on AWS. Por ejemplo, puedes restringir los permisos a los recursos con una etiqueta determinada o los recursos en una VPC de AWS específica

Controla el acceso con etiquetas

Puedes restringir las políticas de IAM de AWS para permitir acciones solo en un conjunto limitado de recursos, mediante etiquetas de AWS. Cualquier rol con esa etiqueta especificada en su campo de condición se restringirá a operar en recursos con la misma etiqueta. Puedes usar esto para restringir los roles administrativos a fin de que actúen sobre los recursos en un clúster o grupo de nodos específico.

Para restringir una política de IAM de AWS de forma que se aplique solo a los recursos con una etiqueta específica, incluye el valor de la etiqueta en el campo Condition de la política y, luego, pasa el valor de la etiqueta cuando crees tu clúster y los grupos de nodos. GKE on AWS aplica esta etiqueta cuando crea recursos.

Para obtener más información sobre las etiquetas, consulta Etiqueta recursos de AWS. Para obtener más información sobre el uso de etiquetas con una política de AWS, consulta Controla el acceso a los recursos de AWS.

Para obtener más información sobre cómo crear recursos de clúster con una etiqueta específica, consulta la documentación de referencia gcloud container aws clusters create y gcloud container aws node-pools create.

Si quieres obtener una lista de los permisos específicos que GKE on AWS necesita para cada política, consulta la lista de funciones de IAM de AWS.