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ónec2: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: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 |