Lista de roles de AWS IAM

Las tablas de esta página enumeran todos los permisos utilizados para crear los roles de AWS IAM predeterminados. Para crear estas políticas con permisos predeterminados, consulte Crear roles de AWS IAM .

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.

Según los requisitos de su organización, puede crear políticas de AWS IAM personalizadas para GKE en AWS para administrar sus clústeres. Estas políticas reemplazarán las versiones predeterminadas. Posteriormente, puede aplicar estas políticas a los roles de AWS IAM y proporcionarlas al crear un clúster.

Para obtener más información sobre el propósito de cada rol, consulte Roles de AWS IAM para GKE en AWS .

Para crear estas políticas, elija el nivel al que desea restringir sus recursos. Por ejemplo, puede restringir una política a una VPC de AWS específica mediante el nombre de recurso de Amazon (ARN) de la VPC. Para obtener más información, consulte Controlar el acceso a los recursos de AWS mediante políticas .

Políticas de IAM para agentes de servicio multicloud de GKE

Tipo de recurso ARN Se requiere permiso Objetivo Referencia
Grupo de seguridad arn:aws:ec2:*:*:security-group/sg-* ec2:DescribeSecurityGroups (Crear, Actualizar, Eliminar)
ec2:CreateSecurityGroup (Crear)
ec2:CreateTags (Crear)
ec2:RevokeSecurityGroupEgress (Crear)
ec2:DeleteSecurityGroup (Eliminar)
Grupo de seguridad del plano de control
Grupo de seguridad Grupo de seguridad del grupo de nodos
Regla del grupo de seguridad arn:aws:ec2:*:*:security-group-rule/sgr-* ec2:AuthorizeSecurityGroupEgress (Crear)
ec2:RevokeSecurityGroupEgress (Eliminar)
ec2:CreateTags (Crear)
Regla del grupo de seguridad de salida del plano de control
Regla del grupo de seguridad ec2:AuthorizeSecurityGroupIngress (Crear)
ec2:RevokeSecurityGroupIngress (Eliminar)
ec2:CreateTags (Crear)
Regla del grupo de seguridad de ingreso al plano de control
Regla del grupo de seguridad ec2:AuthorizeSecurityGroupEgress (Crear)
ec2:RevokeSecurityGroupEgress (Eliminar)
ec2:CreateTags (Crear)
Regla del grupo de seguridad de salida del plano de control
Regla del grupo de seguridad ec2:AuthorizeSecurityGroupIngress (Crear)
ec2:RevokeSecurityGroupIngress (Eliminar)
ec2:CreateTags (Crear)
Regla del grupo de seguridad de ingreso al plano de control
Balanceador de carga de red arn:aws:elasticloadbalancing:*:*:loadbalancer/net/gke-* elasticloadbalancing:DescribeLoadBalancers (Crear, Eliminar)
elasticloadbalancing:CreateLoadBalancer (Crear)
ec2:CreateSecurityGroup (Crear)
ec2:DescribeAccountAttributes (Crear)
ec2:DescribeInternetGateways (Crear)
ec2:DescribeSecurityGroups (Crear)
ec2:DescribeSubnets (Crear)
ec2:DescribeVpcs (Crear)
iam:CreateServiceLinkedRole (Crear)
elasticloadbalancing:DeleteLoadBalancer (Eliminar)
Balanceador de carga del servidor API de Kubernetes Permisos de la API de Elastic Load Balancing
Grupo objetivo arn:aws:elasticloadbalancing:*:*:targetgroup/gke-* elasticloadbalancing:DescribeTargetGroups (Crear, Actualizar, Eliminar)
elasticloadbalancing:DescribeTargetHealth (Crear, Actualizar)
elasticloadbalancing:CreateTargetGroup (Crear)
elasticloadbalancing:ModifyTargetGroupAttributes (Crear)
ec2:DescribeInternetGateways (Crear)
ec2:DescribeVpcs (Crear)
elasticloadbalancing:DeleteTargetGroup (Eliminar)
Grupo objetivo para https Permisos de la API de Elastic Load Balancing
Grupo objetivo Grupo objetivo para https para el agente de conectividad
Oyente arn:aws:elasticloadbalancing:*:*:listener/net/gke-* elasticloadbalancing:CreateListener (Crear)
elasticloadbalancing:DeleteListener (Eliminar) elasticloadbalancing:DescribeListeners (Eliminar)
elasticloadbalancing:DeleteListener (Eliminar)
Oyente para https
Oyente Oyente de https para el agente de conectividad
Volumen arn:aws:ec2:*:*:volume/vol-* ec2:CreateVolume (Crear)
ec2:CreateTags (Crear)
ec2:DeleteVolume (Eliminar)
volúmenes etcd
Interfaz de red arn:aws:ec2:*:*:network-interface/eni-* ec2:DescribeNetworkInterfaces Actualización
ec2:CreateNetworkInterface (Crear)
ec2:CreateTags (Crear)
ec2:ModifyNetworkInterfaceAttribute (Actualizar)
ec2:DeleteNetworkInterface (Eliminar)
NIC de etcd
Plantilla de lanzamiento arn:aws:ec2:*:*:launch-template/lt-* ec2:CreateLaunchTemplate (Crear, Actualizar)
ec2:CreateTags (Crear, Actualizar)
ec2:DeleteLaunchTemplate (Eliminar)
Plantilla de lanzamiento para instancias del plano de control
Plantilla de lanzamiento Plantilla de lanzamiento para instancias de grupo de nodos
Grupo de escalado automático arn:aws:autoscaling:*:*:autoScalingGroup:*: autoScalingGroupName/gke-* autoscaling:DescribeAutoScalingGroups (Crear, Actualizar, Eliminar)
autoscaling:CreateAutoScalingGroup (Crear)
autoscaling:CreateOrUpdateTags (Actualizar)
autoscaling:UpdateAutoScalingGroup (Actualizar, Eliminar)
autoscaling:TerminateInstanceInAutoScalingGroup (Actualizar)
autoscaling:DeleteTags Actualizar, (Eliminar)
autoscaling:DeleteAutoScalingGroup (Eliminar)
iam:CreateServiceLinkedRole (Crear)
ec2:RunInstances (Crear)
iam:PassRole (Crear)
Grupos de escalado automático para instancias del plano de control Permisos de API necesarios para Amazon EC2 Auto Scaling
Grupo de escalado automático arn:aws:autoscaling:*:*:autoScalingGroup:*: autoScalingGroupName/gke-* Grupos de escalado automático para instancias de grupos de nodos Permisos necesarios para crear un rol vinculado a un servicio
Pares de claves EC2 ec2:DescribeKeyPairs (Crear) Para garantizar que exista el par de claves EC2 utilizado para iniciar sesión en las máquinas del clúster.
Subredes ec2:DescribeSubnets (Crear) Acceso a subredes adicionales en su VPC
VPC ec2:DescribeVpcs (Crear) Información sobre su VPC de AWS
Salida de la consola EC2 ec2:GetConsoleOutput (Crear, Actualizar) Verifique los registros de la consola para detectar errores
Clave KMS For more information on KMS key policies for GKE on AWS Creating KMS keys with specific permissions

Política de IAM para el rol del plano de control

Objetivo Se requiere permiso Referencia
escalador automático de clúster autoscaling:DescribeAutoScalingGroups (Crear, Actualizar)
autoscaling:DescribeAutoScalingInstances (Crear, Actualizar)
autoscaling:DescribeLaunchConfigurations (Crear, Actualizar)
autoscaling:DescribeTags (Crear, Actualizar)
ec2:DescribeInstanceTypes (Crear, Actualizar)
ec2:DescribeLaunchTemplateVersions (Crear, Actualizar)
autoscaling:SetDesiredCapacity
autoscaling:TerminateInstanceInAutoScalingGroup
https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/cloudprovider/aws/README.md
proveedor de nube-aws autoscaling:DescribeAutoScalingGroups
autoscaling:DescribeLaunchConfigurations
autoscaling:DescribeTags (Crear)
ec2:DescribeInstances (Crear)
ec2:DescribeRegions
ec2:DescribeRouteTables
ec2:DescribeSecurityGroups
ec2:DescribeSubnets
ec2:DescribeVolumes
ec2:CreateSecurityGroup
ec2:CreateTags
ec2:CreateVolume
ec2:ModifyInstanceAttribute
ec2:ModifyVolume
ec2:AttachVolume (Crear)
ec2:AuthorizeSecurityGroupIngress
ec2:CreateRoute
ec2:DeleteRoute
ec2:DeleteSecurityGroup
ec2:DeleteVolume
ec2:DetachVolume
ec2:RevokeSecurityGroupIngress
ec2:DescribeVpcs
elasticloadbalancing:AddTags
elasticloadbalancing:AttachLoadBalancerToSubnets
elasticloadbalancing:ApplySecurityGroupsToLoadBalancer
elasticloadbalancing:CreateLoadBalancer
elasticloadbalancing:CreateLoadBalancerPolicy
elasticloadbalancing:CreateLoadBalancerListeners
elasticloadbalancing:ConfigureHealthCheck
elasticloadbalancing:DeleteLoadBalancer
elasticloadbalancing:DeleteLoadBalancerListeners
elasticloadbalancing:DescribeLoadBalancers
elasticloadbalancing:DescribeLoadBalancerAttributes
elasticloadbalancing:DetachLoadBalancerFromSubnets
elasticloadbalancing:DeregisterInstancesFromLoadBalancer
elasticloadbalancing:ModifyLoadBalancerAttributes
elasticloadbalancing:RegisterInstancesWithLoadBalancer
elasticloadbalancing:SetLoadBalancerPoliciesForBackendServer
elasticloadbalancing:AddTags
elasticloadbalancing:CreateListener
elasticloadbalancing:CreateTargetGroup
elasticloadbalancing:DeleteListener
elasticloadbalancing:DeleteTargetGroup
elasticloadbalancing:DescribeListeners
elasticloadbalancing:DescribeLoadBalancerPolicies
elasticloadbalancing:DescribeTargetGroups
elasticloadbalancing:DescribeTargetHealth
elasticloadbalancing:ModifyListener
elasticloadbalancing:ModifyTargetGroup
elasticloadbalancing:RegisterTargets
elasticloadbalancing:DeregisterTargets
elasticloadbalancing:SetLoadBalancerPoliciesOfListener
iam:CreateServiceLinkedRole
kms:DescribeKey

https://github.com/kubernetes/cloud-provider-aws/blob/master/docs/prerequisites.md
Crear balanceadores de carga elasticloadbalancing:CreateLoadBalancer
ec2:DescribeAccountAttributes
ec2:DescribeInternetGateways
ec2:DescribeSecurityGroups
ec2:DescribeSubnets
ec2:DescribeVpcs
https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/elb-api-permissions.html
controlador aws-ebs-csi ec2:DescribeVolumesModifications
ec2:DeleteTags

ec2:DescribeZonasDeDisponibilidad

https://github.com/kubernetes-sigs/aws-ebs-csi-driver/tree/master/docs#set-up-driver-permission
administrador del controlador gke-aws ec2:DescribeDhcpOptions
ec2:DescribeInstances
ec2:DescribeVpcs
elasticloadbalancing:ModifyTargetGroupAttributes
ec2:DescribeSnapshots
ec2:CreateSnapshot
ec2:DeleteSnapshot
Instantánea de CSI Instantánea externa de Kubernetes
Agente de nodo de GKE en AWS
Adjuntar NIC a etcd
ec2:AttachNetworkInterface (Crear, Actualizar)
Leer la configuración del proxy desde Secrets Manager secretsmanager:GetSecretValue (Crear, Actualizar)
Interactuar con claves KMS kms:Encrypt (Crear, Actualizar)
kms:Decrypt (Crear, Actualizar)
kms:CreateGrant (Crear, Actualizar)

Política de IAM para el rol de grupo de nodos

Objetivo Se requiere permiso Referencia
Leer la configuración del proxy desde el administrador de secretos secretsmanager:GetSecretValue (Crear, Actualizar)
Clave KMS para descifrar el cifrado de configuración del grupo de nodos kms:Decrypt (Crear, Actualizar) Crear una clave AWS KMS