Elenco dei ruoli AWS IAM

Le tabelle in questa pagina elencano tutte le autorizzazioni utilizzate per creare i ruoli AWS IAM predefiniti. Per creare questi criteri con le autorizzazioni predefinite, consulta Creazione di ruoli IAM AWS.

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

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

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

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

Criteri 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 (Crea, Aggiorna, Elimina)
ec2:CreateSecurityGroup (Crea)
ec2:CreateTags (Crea)
ec2:RevokeSecurityGroupEgress (Crea)
ec2:DeleteSecurityGroup (Elimina)
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 (Crea)
ec2:RevokeSecurityGroupEgress (Elimina)
ec2:CreateTags (Crea)
Regola del gruppo di sicurezza in uscita del control plane
Regola del gruppo di sicurezza ec2:AuthorizeSecurityGroupIngress (Crea)
ec2:RevokeSecurityGroupIngress (Elimina)
ec2:CreateTags (Crea)
Regola del gruppo di sicurezza in entrata del control plane
Regola del gruppo di sicurezza ec2:AuthorizeSecurityGroupEgress (Crea)
ec2:RevokeSecurityGroupEgress (Elimina)
ec2:CreateTags (Crea)
Regola del gruppo di sicurezza in uscita del control plane
Regola del gruppo di sicurezza ec2:AuthorizeSecurityGroupIngress (Crea)
ec2:RevokeSecurityGroupIngress (Elimina)
ec2:CreateTags (Crea)
Regola del gruppo di sicurezza in entrata del control plane
Bilanciatore del carico di rete arn:aws:elasticloadbalancing:*:*:loadbalancer/net/gke-* elasticloadbalancing:DescribeLoadBalancers (Crea, Elimina)
elasticloadbalancing:CreateLoadBalancer (Crea)
ec2:CreateSecurityGroup (Crea)
ec2:DescribeAccountAttributes (Crea)
ec2:DescribeInternetGateways (Crea)
ec2:DescribeSecurityGroups (Crea)
ec2:DescribeSubnets (Crea)
ec2:DescribeVpcs (Crea)
iam:CreateServiceLinkedRole (Crea)
elasticloadbalancing:DeleteLoadBalancer (Elimina)
Bilanciatore del carico del server API Kubernetes Autorizzazioni API Elastic Load Balancing
Gruppo target arn:aws:elasticloadbalancing:*:*:targetgroup/gke-* elasticloadbalancing:DescribeTargetGroups (Crea, Aggiorna, Elimina)
elasticloadbalancing:DescribeTargetHealth (Crea, Aggiorna)
elasticloadbalancing:CreateTargetGroup (Crea)
elasticloadbalancing:ModifyTargetGroupAttributes (Crea)
ec2:DescribeInternetGateways (Crea)
ec2:DescribeVpcs (Crea)
elasticloadbalancing:DeleteTargetGroup (Elimina)
Gruppo target per HTTPS Autorizzazioni API Elastic Load Balancing
Gruppo target Gruppo di destinazione per https per l'agente di connettività
Listener arn:aws:elasticloadbalancing:*:*:listener/net/gke-* elasticloadbalancing:CreateListener (Crea)
elasticloadbalancing:DeleteListener (Elimina) elasticloadbalancing:DescribeListeners (Elimina)
elasticloadbalancing:DeleteListener (Elimina)
Listener per https
Listener Listener per https per l'agente di connettività
Volume arn:aws:ec2:*:*:volume/vol-* ec2:CreateVolume (Crea)
ec2:CreateTags (Crea)
ec2:DeleteVolume (Elimina)
Volumi etcd
Interfaccia di rete arn:aws:ec2:*:*:network-interface/eni-* ec2:DescribeNetworkInterfaces Aggiorna
ec2:CreateNetworkInterface (Crea)
ec2:CreateTags (Crea)
ec2:ModifyNetworkInterfaceAttribute (Aggiorna)
ec2:DeleteNetworkInterface (Elimina)
NIC etcd
Modello di lancio arn:aws:ec2:*:*:launch-template/lt-* ec2:CreateLaunchTemplate (Crea, Aggiorna)
ec2:CreateTags (Crea, Aggiorna)
ec2:DeleteLaunchTemplate (Elimina)
Modello di avvio per le istanze del control plane
Modello di lancio Modello di avvio per le istanze del pool di nodi
Gruppo di scalabilità automatica arn:aws:autoscaling:*:*:autoScalingGroup:*:autoScalingGroupName/gke-* autoscaling:DescribeAutoScalingGroups (Crea, Aggiorna, Elimina)
autoscaling:CreateAutoScalingGroup (Crea)
autoscaling:CreateOrUpdateTags (Aggiorna)
autoscaling:UpdateAutoScalingGroup (Aggiorna, Elimina)
autoscaling:TerminateInstanceInAutoScalingGroup (Aggiorna)
autoscaling:DeleteTags Aggiorna, (Elimina)
autoscaling:DeleteAutoScalingGroup (Elimina)
iam:CreateServiceLinkedRole (Crea)
ec2:RunInstances (Crea)
iam:PassRole (Crea)
gruppi di scalabilità automatica per le istanze del control plane Autorizzazioni API richieste per Amazon EC2 Auto Scaling
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 (Crea) Per assicurarti che esista la coppia di chiavi EC2 utilizzata per accedere alle macchine del cluster.
Subnet ec2:DescribeSubnets (Crea) Accesso a subnet aggiuntive nel tuo VPC
VPC ec2:DescribeVpcs (Crea) Informazioni sul tuo VPC AWS
Output della console EC2 ec2:GetConsoleOutput (crea, aggiorna) Controllare i log della console per individuare eventuali 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 del cluster autoscaling:DescribeAutoScalingGroups (Crea, Aggiorna)
autoscaling:DescribeAutoScalingInstances (Crea, Aggiorna)
autoscaling:DescribeLaunchConfigurations (Crea, Aggiorna)
autoscaling:DescribeTags (Crea, Aggiorna)
ec2:DescribeInstanceTypes (Crea, Aggiorna)
ec2:DescribeLaunchTemplateVersions (Crea, Aggiorna)
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 (Crea)
ec2:DescribeInstances (Crea)
ec2:DescribeRegions
ec2:DescribeRouteTables
ec2:DescribeSecurityGroups
ec2:DescribeSubnets
ec2:DescribeVolumes
ec2:CreateSecurityGroup
ec2:CreateTags
ec2:CreateVolume
ec2:ModifyInstanceAttribute
ec2:ModifyVolume
ec2:AttachVolume (Crea)
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
CSI snapshotter Kubernetes external snapshotter
Agente del nodo GKE su AWS
Collega la NIC a etcd
ec2:AttachNetworkInterface (crea, aggiorna)
Leggi la configurazione proxy da Secrets Manager secretsmanager:GetSecretValue (crea, aggiorna)
Interagire con le chiavi KMS kms:Encrypt (crea, aggiorna)
kms:Decrypt (crea, aggiorna)
kms:CreateGrant (crea, aggiorna)

Policy IAM per il ruolo pool di nodi

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