Elenco dei ruoli AWS IAM

Le tabelle in questa pagina elencano tutte le autorizzazioni utilizzate per creare i ruoli IAM AWS predefiniti. Per creare queste policy con le autorizzazioni predefinite, consulta Creare ruoli IAM AWS.

Ruolo dell'agente di servizio dell'API GKE Multi-Cloud
L'API GKE Multi-Cloud utilizza questo ruolo IAM AWS per gestire le risorse utilizzando le API AWS. Questo ruolo viene utilizzato da un account di servizio gestito da Google noto come a agente di servizio.
Ruolo IAM AWS del control plane
Il control plane del cluster utilizza questo ruolo per controllare i node pool.
Ruolo IAM AWS del node pool
Il control plane utilizza questo ruolo per creare VM pool di nodi.

A seconda dei requisiti della tua organizzazione, puoi scegliere di creare policy IAM AWS personalizzate per GKE su AWS per gestire i cluster. Queste policy sostituiranno le versioni predefinite. Applica queste policy ai ruoli IAM AWS e forniscile quando crei un cluster.

Per saperne di più sullo scopo di ogni ruolo, consulta Ruoli IAM AWS per GKE su AWS.

Per creare queste policy, scegli il livello a cui vuoi limitare le risorse. Ad esempio, puoi limitare una policy a un VPC AWS specifico utilizzando l'Amazon Resource Name (ARN) del VPC. Per saperne di più, consulta Controllare l'accesso alle risorse AWS utilizzando le policy.

Policy IAM per gli agenti di servizio GKE Multi-Cloud

Tipo di risorsa ARN Autorizzazione richiesta Finalità Riferimento
Gruppo di sicurezza arn:aws:ec2:*:*:security-group/sg-* ec2:DescribeSecurityGroups (Create, Update, Delete)
ec2:CreateSecurityGroup (Create)
ec2:CreateTags (Create)
ec2:RevokeSecurityGroupEgress (Create)
ec2:DeleteSecurityGroup (Delete)
Gruppo di sicurezza del control plane
Gruppo di sicurezza Gruppo di sicurezza del node pool
Regola del gruppo di sicurezza arn:aws:ec2:*:*:security-group-rule/sgr-* ec2:AuthorizeSecurityGroupEgress (Create)
ec2:RevokeSecurityGroupEgress (Delete)
ec2:CreateTags (Create)
Regola del gruppo di sicurezza in uscita del control plane
Regola del gruppo di sicurezza ec2:AuthorizeSecurityGroupIngress (Create)
ec2:RevokeSecurityGroupIngress (Delete)
ec2:CreateTags (Create)
Regola del gruppo di sicurezza in entrata del control plane
Regola del gruppo di sicurezza ec2:AuthorizeSecurityGroupEgress (Create)
ec2:RevokeSecurityGroupEgress (Delete)
ec2:CreateTags (Create)
Regola del gruppo di sicurezza in uscita del control plane
Regola del gruppo di sicurezza ec2:AuthorizeSecurityGroupIngress (Create)
ec2:RevokeSecurityGroupIngress (Delete)
ec2:CreateTags (Create)
Regola del gruppo di sicurezza in entrata del control plane
Bilanciatore del carico di rete arn:aws:elasticloadbalancing:*:*:loadbalancer/net/gke-* elasticloadbalancing:DescribeLoadBalancers (Create, Delete)
elasticloadbalancing:CreateLoadBalancer (Create)
ec2:CreateSecurityGroup (Create)
ec2:DescribeAccountAttributes (Create)
ec2:DescribeInternetGateways (Create)
ec2:DescribeSecurityGroups (Create)
ec2:DescribeSubnets (Create)
ec2:DescribeVpcs (Create)
iam:CreateServiceLinkedRole (Create)
elasticloadbalancing:DeleteLoadBalancer (Delete)
Bilanciatore del carico dell'api-server di Kubernetes Autorizzazioni API Elastic Load Balancing
Gruppo target arn:aws:elasticloadbalancing:*:*:targetgroup/gke-* elasticloadbalancing:DescribeTargetGroups (Create, Update, Delete)
elasticloadbalancing:DescribeTargetHealth (Create, Update)
elasticloadbalancing:CreateTargetGroup (Create)
elasticloadbalancing:ModifyTargetGroupAttributes (Create)
ec2:DescribeInternetGateways (Create)
ec2:DescribeVpcs (Create)
elasticloadbalancing:DeleteTargetGroup (Delete)
Gruppo target per https Autorizzazioni API Elastic Load Balancing
Gruppo target Gruppo target per https per l'agente Konnectivity
Listener arn:aws:elasticloadbalancing:*:*:listener/net/gke-* elasticloadbalancing:CreateListener (Create)
elasticloadbalancing:DeleteListener (Delete) elasticloadbalancing:DescribeListeners (Delete)
elasticloadbalancing:DeleteListener (Delete)
Listener per https
Listener Listener per https per l'agente Konnectivity
Volume arn:aws:ec2:*:*:volume/vol-* ec2:CreateVolume (Create)
ec2:CreateTags (Create)
ec2:DeleteVolume (Delete)
Volumi etcd
Interfaccia di rete arn:aws:ec2:*:*:network-interface/eni-* ec2:DescribeNetworkInterfaces Update
ec2:CreateNetworkInterface (Create)
ec2:CreateTags (Create)
ec2:ModifyNetworkInterfaceAttribute (Update)
ec2:DeleteNetworkInterface (Delete)
NIC etcd
Modello di avvio arn:aws:ec2:*:*:launch-template/lt-* ec2:CreateLaunchTemplate (Create, Update)
ec2:CreateTags (Create, Update)
ec2:DeleteLaunchTemplate (Delete)
Modello di avvio per le istanze del control plane
Modello di avvio Modello di avvio per le istanze del pool di nodi
Gruppo di scalabilità automatica arn:aws:autoscaling:*:*:autoScalingGroup:*:autoScalingGroupName/gke-* autoscaling:DescribeAutoScalingGroups (Create, Update, Delete)
autoscaling:CreateAutoScalingGroup (Create)
autoscaling:CreateOrUpdateTags (Update)
autoscaling:UpdateAutoScalingGroup (Update, Delete)
autoscaling:TerminateInstanceInAutoScalingGroup (Update)
autoscaling:DeleteTags Update, (Delete)
autoscaling:DeleteAutoScalingGroup (Delete)
iam:CreateServiceLinkedRole (Create)
ec2:RunInstances (Create)
iam:PassRole (Create)
Gruppi di scalabilità automatica per le istanze del control plane Autorizzazioni API richieste per la scalabilità automatica di Amazon EC2
Gruppo di scalabilità automatica arn:aws:autoscaling:*:*:autoScalingGroup:*:autoScalingGroupName/gke-* Gruppi di scalabilità automatica per le istanze del pool di nodi Autorizzazioni richieste per creare un ruolo collegato al servizio
Coppie di chiavi EC2 ec2:DescribeKeyPairs (Create) Per assicurarsi che la coppia di chiavi EC2 utilizzata per accedere alle macchine del cluster esista.
Subnet ec2:DescribeSubnets (Create) Accesso a subnet aggiuntive nel VPC
VPC ec2:DescribeVpcs (Create) Informazioni sul VPC AWS
Output della console EC2 ec2:GetConsoleOutput (Create, Update) Controlla i log della console per verificare la presenza di errori
Chiave KMS For more information on KMS key policies for GKE on AWS Creating KMS keys with specific permissions

Policy IAM per il ruolo del control plane

Finalità Autorizzazione richiesta Riferimento
Gestore della scalabilità automatica dei cluster autoscaling:DescribeAutoScalingGroups (Create, Update)
autoscaling:DescribeAutoScalingInstances (Create, Update)
autoscaling:DescribeLaunchConfigurations (Create, Update)
autoscaling:DescribeTags (Create, Update)
ec2:DescribeInstanceTypes (Create, Update)
ec2:DescribeLaunchTemplateVersions (Create, Update)
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 (Create)
ec2:DescribeInstances (Create)
ec2:DescribeRegions
ec2:DescribeRouteTables
ec2:DescribeSecurityGroups
ec2:DescribeSubnets
ec2:DescribeVolumes
ec2:CreateSecurityGroup
ec2:CreateTags
ec2:CreateVolume
ec2:ModifyInstanceAttribute
ec2:ModifyVolume
ec2:AttachVolume (Create)
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 bilanciatori del carico 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:DeleteTags

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 CSI Snapshotter esterno di Kubernetes
Agente dei nodi GKE su AWS
Collega la NIC a etcd
ec2:AttachNetworkInterface (Create, Update)
Leggi la configurazione del proxy da Secrets Manager secretsmanager:GetSecretValue (Create, Update)
Interagisci con le chiavi KMS kms:Encrypt (Create, Update)
kms:Decrypt (Create, Update)
kms:CreateGrant (Create, Update)

Policy IAM per il ruolo pool di nodi

Finalità Autorizzazione richiesta Riferimento
Leggi la configurazione del proxy da Secrets Manager secretsmanager:GetSecretValue (Create, Update)
Chiave KMS per decriptare la crittografia della configurazione pool di nodi kms:Decrypt (Create, Update) Crea una chiave KMS AWS