Esta página describe cómo Google Cloud administra los permisos y roles de AWS Identity and Access Management (IAM) para su GKE en AWS.
GKE en AWS utiliza la API de AWS para crear recursos como instancias EC2, grupos de escalado automático y balanceadores de carga tanto para los componentes de GKE en AWS como para sus cargas de trabajo. Debe proporcionar Google Cloud con permisos de AWS IAM para crear estos recursos.
Cómo GKE en AWS accede a la API de AWS
GKE en AWS utiliza la federación de identidades en AWS para gestionar el acceso detallado a su cuenta de AWS. Cuando GKE en AWS necesita realizar una acción en su clúster, solicita un token de corta duración a AWS. El rol de API Multi-Cloud de GKE utiliza este token para autenticarse en AWS.
Agentes de servicio
Para conceder Google Cloud acceso para crear, actualizar, eliminar y administrar clústeres en su cuenta de AWS, GKE en AWS crea un agente de servicio en su Google Cloud Proyecto. El agente de servicio es una cuenta de servicio administrada por Google que utiliza el rol de IAM de AWS de la API de GKE Multi-Cloud . Debe crear un rol de IAM de AWS para el agente de servicio en cada Google Cloud Proyecto desde el que se administran 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 el Google Cloud Permisos de IAM, consulte Anthos Multi-Cloud Service Agent .
Permisos de AWS IAM para GKE en AWS
Puede crear roles que utilicen roles de AWS IAM predeterminados o crear sus propias políticas de AWS IAM personalizadas que cumplan con los requisitos de su organización.
Utilice políticas predeterminadas
Una política de AWS IAM es un conjunto de permisos. Para otorgar permisos para crear y administrar clústeres, primero debe crear políticas de AWS IAM para los siguientes roles:
- Rol de agente de servicio de API de GKE Multi-Cloud
- La API Multi-Cloud de GKE utiliza este rol de IAM de AWS para administrar recursos mediante las API de AWS. Este rol lo utiliza una cuenta de servicio administrada por Google, conocida como agente de servicio .
- Rol de AWS IAM del plano de control
- Su plano de control de clúster utiliza esta función para controlar los grupos de nodos.
- Rol de IAM de AWS del grupo de nodos
- El plano de control utiliza esta función para crear máquinas virtuales de grupo de nodos.
Para utilizar los roles de AWS IAM sugeridos para GKE en AWS para administrar clústeres, consulte Crear roles de AWS IAM .
Crear políticas de IAM personalizadas
Para restringir aún más los permisos, en lugar de usar políticas sugeridas, puede crear políticas de IAM de AWS personalizadas que permitan GKE en AWS. Por ejemplo, puede restringir los permisos a recursos con una etiqueta específica o a recursos en una VPC de AWS específica.
Controlar el acceso con etiquetas
Puede restringir las políticas de AWS IAM 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 solo podrá operar en recursos con la misma etiqueta. Puede usar esto para restringir que los roles administrativos actúen en recursos de un clúster o grupo de nodos específico.
Para restringir una política de AWS IAM y que se aplique solo a recursos con una etiqueta específica, incluya el valor de la etiqueta en el campo Condition
de la política y, a continuación, transfiéralo al crear el clúster y los grupos de nodos. GKE en AWS aplica esta etiqueta al crear recursos.
Para obtener más información sobre las etiquetas, consulte Etiquetado de recursos de AWS . Para obtener más información sobre el uso de etiquetas con una política de AWS, consulte Control del acceso a los recursos de AWS .
Para obtener más información sobre la creación de recursos de clúster con una etiqueta particular, consulte la documentación de referencia gcloud container aws clusters create
y gcloud container aws node-pools create
.
Para obtener una lista de los permisos específicos que GKE en AWS necesita para cada política, consulte la lista de roles de AWS IAM .