En las tablas de esta página, se enumeran todos los permisos usados en la creación de los roles predeterminados de IAM de AWS. Para crear estas políticas con permisos predeterminados, consulta Crea roles de IAM de AWS.
- Rol del agente de servicio de la API de GKE Multi-Cloud
- La API de GKE Multi-Cloud usa este rol de IAM de AWS para administrar recursos con las API 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.
Según los requisitos de tu organización, puedes optar por crear políticas personalizadas de IAM de AWS para GKE en AWS con el objetivo de administrar tus clústeres. Estas políticas reemplazarán las versiones predeterminadas. Luego, aplica estas políticas a los roles de IAM de AWS y proporciónalas cuando crees un clúster.
Si deseas obtener más información sobre el propósito de cada rol, consulta Roles de IAM de AWS para GKE en AWS.
Para crear estas políticas, elige el nivel en el que deseas restringir tus recursos. Por ejemplo, puedes restringir una política a una VPC de AWS en particular mediante el nombre del recurso de Amazon (ARN) de la VPC. Para obtener más información, consulta Controla el acceso a los recursos de AWS con políticas.
Políticas de IAM para los agentes de servicio de GKE Multi-Cloud
Tipo de recurso | ARN | Se requiere permiso | Objetivo | Reference |
---|---|---|---|---|
Security Group | arn:aws:ec2:*:*:security-group/sg-* |
ec2:DescribeSecurityGroups (Crear, actualizar, borrar)ec2:CreateSecurityGroup (Crear)ec2:CreateTags (Crear)ec2:RevokeSecurityGroupEgress (Crear)ec2:DeleteSecurityGroup (Borrar) |
Grupo de seguridad del plano de control | |
Security Group | Grupo de seguridad del grupo de nodos | |||
Regla de grupo de seguridad | arn:aws:ec2:*:*:security-group-rule/sgr-* |
ec2:AuthorizeSecurityGroupEgress (Crear)ec2:RevokeSecurityGroupEgress (Borrar)ec2:CreateTags (Crear) |
Regla del grupo de seguridad de salida del plano de control | |
Regla de grupo de seguridad | ec2:AuthorizeSecurityGroupIngress (Crear)ec2:RevokeSecurityGroupIngress (Borrar)ec2:CreateTags (Crear) |
Regla del grupo de seguridad de entrada del plano de control | ||
Regla de grupo de seguridad | ec2:AuthorizeSecurityGroupEgress (Crear)ec2:RevokeSecurityGroupEgress (Borrar)ec2:CreateTags (Crear) |
Regla del grupo de seguridad de salida del plano de control | ||
Regla de grupo de seguridad | ec2:AuthorizeSecurityGroupIngress (Crear)ec2:RevokeSecurityGroupIngress (Borrar)ec2:CreateTags (Crear) |
Regla del grupo de seguridad de entrada del plano de control | ||
Balanceador de cargas de red | arn:aws:elasticloadbalancing:*:*:loadbalancer/net/gke-* |
elasticloadbalancing:DescribeLoadBalancers (Crear, Borrar) 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 (Borrar) |
Balanceador de cargas api-server de Kubernetes | Permisos de la API de Elastic Load Balancing |
Grupo de destino | arn:aws:elasticloadbalancing:*:*:targetgroup/gke-* |
elasticloadbalancing:DescribeTargetGroups (Crear, actualizar, borrar)elasticloadbalancing:DescribeTargetHealth (Crear, actualizar)elasticloadbalancing:CreateTargetGroup (Crear)elasticloadbalancing:ModifyTargetGroupAttributes (Crear)ec2:DescribeInternetGateways (Crear)ec2:DescribeVpcs (Crear)elasticloadbalancing:DeleteTargetGroup (Borrar) |
Grupo de destino para https | Permisos de la API de Elastic Load Balancing |
Grupo de destino | Grupo de destino para https para el agente de konnectivity | |||
Objeto de escucha | arn:aws:elasticloadbalancing:*:*:listener/net/gke-* |
elasticloadbalancing:CreateListener (Crear)elasticloadbalancing:DeleteListener (Borrar)
elasticloadbalancing:DescribeListeners (Borrar)elasticloadbalancing:DeleteListener (Borrar) |
Objeto de escucha para https | |
Objeto de escucha | Objeto de escucha para https para el agente de konnectivity | |||
Volume | arn:aws:ec2:*:*:volume/vol-* |
ec2:CreateVolume (Crear)ec2:CreateTags (Crear)ec2:DeleteVolume (Borrar) |
Volúmenes de etcd | |
Interfaz de red | arn:aws:ec2:*:*:network-interface/eni-* |
ec2:DescribeNetworkInterfaces Actualizarec2:CreateNetworkInterface (Crear)ec2:CreateTags (Crear)ec2:ModifyNetworkInterfaceAttribute (Actualizar)ec2:DeleteNetworkInterface (Borrar) |
NIC de etcd | |
Lanzar plantilla | arn:aws:ec2:*:*:launch-template/lt-* |
ec2:CreateLaunchTemplate (Crear, actualizar)ec2:CreateTags (Crear, actualizar)ec2:DeleteLaunchTemplate (Borrar) |
Lanzar plantilla para instancias del plano de control | |
Lanzar plantilla | Lanzar plantilla para instancias de grupos de nodos | |||
Grupo de ajuste de escala automático | arn:aws:autoscaling:*:*:autoScalingGroup:*: |
autoscaling:DescribeAutoScalingGroups (Crear, actualizar, borrar)autoscaling:CreateAutoScalingGroup (Crear)autoscaling:CreateOrUpdateTags (Actualizar)autoscaling:UpdateAutoScalingGroup (Actualizar, Borrar)autoscaling:TerminateInstanceInAutoScalingGroup (Actualizar)autoscaling:DeleteTags Actualizar, (Borrar)autoscaling:DeleteAutoScalingGroup (Borrar)iam:CreateServiceLinkedRole (Crear)ec2:RunInstances (Crear)iam:PassRole (Create) |
grupos de ajuste de escala automático para instancias del plano de control | Permisos de API necesarios para el ajuste de escala automático de Amazon EC2 |
Grupo de ajuste de escala automático | arn:aws:autoscaling:*:*:autoScalingGroup:*: |
grupos de ajuste de escala automático para instancias de grupos de nodos | Permisos necesarios para crear un rol vinculado a servicios | |
Pares de claves EC2 | ec2:DescribeKeyPairs (Crear) |
A fin de garantizar que exista el par de claves EC2 que se usa para acceder a las máquinas del clúster. | ||
Subredes | ec2:DescribeSubnets (Crear) |
Acceso a subredes adicionales en tu VPC | ||
VPC | ec2:DescribeVpcs (Crear) |
Información sobre tu VPC de AWS | ||
Salida de EC2 Console | ec2:GetConsoleOutput (Crear, Actualizar) |
Revisa los registros de la consola en busca de 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 | Reference |
---|---|---|
escalador automático de clústeres | 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 |
cloud-provider-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 |
Crea balanceadores de cargas | elasticloadbalancing:CreateLoadBalancer ec2:DescribeAccountAttributes ec2:DescribeInternetGateways ec2:DescribeSecurityGroups ec2:DescribeSubnets ec2:DescribeVpcs |
https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/elb-api-permissions.html |
aws-ebs-csi-driver | ec2:DescribeVolumesModifications
ec2:DescribeAvailabilityZones |
https://github.com/kubernetes-sigs/aws-ebs-csi-driver/tree/master/docs#set-up-driver-permission |
gke-aws-controller-manager | ec2:DescribeDhcpOptions ec2:DescribeInstances ec2:DescribeVpcs |
|
elasticloadbalancing:ModifyTargetGroupAttributes |
||
ec2:DescribeSnapshots ec2:CreateSnapshot ec2:DeleteSnapshot |
Snapshotter de CSI | Snapshotter externo de Kubernetes |
Agente de nodos de GKE en AWS Adjunta NIC a etcd |
ec2:AttachNetworkInterface (Crear, Actualizar) |
|
Leer la configuración del proxy desde Secret Manager | secretsmanager:GetSecretValue (Crear, Actualizar) |
|
Interactuar con claves de KMS | kms:Encrypt (Crear, actualizar)kms:Decrypt (Crear, actualizar)kms:CreateGrant (Crear, actualizar) |
Política de IAM para el rol del grupo de nodos
Objetivo | Se requiere permiso | Reference |
---|---|---|
Leer la configuración del proxy desde Secret Manager | secretsmanager:GetSecretValue (Crear, Actualizar) |
|
Clave KMS para desencriptar la configuración del grupo de nodos | kms:Decrypt (Crear, Actualizar) |
Crear una clave de KMS de AWS |