AWS-IAM-Rollenliste

In den Tabellen auf dieser Seite werden alle Berechtigungen aufgeführt, die zum Erstellen der AWS IAM-Standardrollen verwendet werden. Informationen zum Erstellen dieser Richtlinien mit Standardberechtigungen finden Sie unter AWS-IAM-Rollen erstellen.

Rolle „GKE Multi-Cloud API-Dienst-Agent“
Die GKE Multi-Cloud API verwendet diese AWS IAM-Rolle, um Ressourcen mit AWS APIs zu verwalten. Diese Rolle wird von einem von Google verwalteten Dienstkonto verwendet, das als Dienst-Agent bezeichnet wird.
AWS-IAM-Rolle der Steuerungsebene
Ihre Clustersteuerungsebene verwendet diese Rolle zur Steuerung der Knotenpools.
AWS-IAM-Rolle für Knotenpool
Die Steuerungsebene verwendet diese Rolle zum Erstellen von Knotenpool-VMs.

Je nach den Anforderungen Ihrer Organisation können Sie benutzerdefinierte AWS IAM-Richtlinien für GKE on AWS erstellen, um Ihre Cluster zu verwalten. Diese Richtlinien ersetzen die Standardversionen. Anschließend wenden Sie diese Richtlinien auf AWS IAM-Rollen an und geben sie beim Erstellen eines Clusters an.

Weitere Informationen zum Zweck der einzelnen Rollen finden Sie unter AWS IAM-Rollen für GKE on AWS.

Wählen Sie zum Erstellen dieser Richtlinien die Ebene aus, auf die Sie Ihre Ressourcen einschränken möchten. Beispielsweise können Sie eine Richtlinie mit dem Amazon Resource Name (ARN) der VPC auf eine bestimmte AWS-VPC beschränken. Weitere Informationen finden Sie unter Zugriff auf AWS-Ressourcen mithilfe von Richtlinien steuern.

IAM-Richtlinien für GKE Multi-Cloud-Dienst-Agents

Ressourcentyp ARN Berechtigung erforderlich Zweck Referenz
Sicherheitsgruppe arn:aws:ec2:*:*:security-group/sg-* ec2:DescribeSecurityGroups (Erstellen, aktualisieren, löschen)
ec2:CreateSecurityGroup (Erstellen)
ec2:CreateTags (Erstellen)
ec2:RevokeSecurityGroupEgress (Erstellen)
ec2:DeleteSecurityGroup (Löschen)
Sicherheitsgruppe "Steuerungsebene"
Sicherheitsgruppe Sicherheitsgruppe "Knotenpool"
Sicherheitsgruppenregel arn:aws:ec2:*:*:security-group-rule/sgr-* ec2:AuthorizeSecurityGroupEgress (Erstellen)
ec2:RevokeSecurityGroupEgress (Löschen)
ec2:CreateTags (Erstellen)
Sicherheitsgruppenregel für ausgehenden Traffic auf Steuerungsebene
Sicherheitsgruppenregel ec2:AuthorizeSecurityGroupIngress (Erstellen)
ec2:RevokeSecurityGroupIngress (Löschen)
ec2:CreateTags (Erstellen)
Sicherheitsgruppenregel für eingehenden Traffic auf Steuerungsebene
Sicherheitsgruppenregel ec2:AuthorizeSecurityGroupEgress (Erstellen)
ec2:RevokeSecurityGroupEgress (Löschen)
ec2:CreateTags (Erstellen)
Sicherheitsgruppenregel für ausgehenden Traffic auf Steuerungsebene
Sicherheitsgruppenregel ec2:AuthorizeSecurityGroupIngress (Erstellen)
ec2:RevokeSecurityGroupIngress (Löschen)
ec2:CreateTags (Erstellen)
Sicherheitsgruppenregel für eingehenden Traffic auf Steuerungsebene
Netzwerk-Load-Balancer arn:aws:elasticloadbalancing:*:*:loadbalancer/net/gke-* elasticloadbalancing:DescribeLoadBalancers (Erstellen, Löschen)
elasticloadbalancing:CreateLoadBalancer (Erstellen)
ec2:CreateSecurityGroup (Erstellen)
ec2:DescribeAccountAttributes (Erstellen)
ec2:DescribeInternetGateways (Erstellen)
ec2:DescribeSecurityGroups (Erstellen)
ec2:DescribeSubnets (Erstellen)
ec2:DescribeVpcs (Erstellen)
iam:CreateServiceLinkedRole (Erstellen)
elasticloadbalancing:DeleteLoadBalancer (Löschen)
Kubernetes API-Server-Load-Balancer Elastic Load Balancing API-Berechtigungen
Zielgruppe arn:aws:elasticloadbalancing:*:*:targetgroup/gke-* elasticloadbalancing:DescribeTargetGroups (Erstellen, aktualisieren, löschen)
elasticloadbalancing:DescribeTargetHealth (Erstellen, aktualisieren)
elasticloadbalancing:CreateTargetGroup (Erstellen)
elasticloadbalancing:ModifyTargetGroupAttributes (Erstellen)
ec2:DescribeInternetGateways (Erstellen)
ec2:DescribeVpcs (Erstellen)
elasticloadbalancing:DeleteTargetGroup (Löschen)
Zielgruppe für https Elastic Load Balancing API-Berechtigungen
Zielgruppe Zielgruppe für https für Konnectivity-Agent
Listener arn:aws:elasticloadbalancing:*:*:listener/net/gke-* elasticloadbalancing:CreateListener (Erstellen)
elasticloadbalancing:DeleteListener (Löschen) elasticloadbalancing:DescribeListeners (Löschen)
elasticloadbalancing:DeleteListener (Löschen)
Listener für https
Listener Listener für https für Konnectivity-Agent
Volume arn:aws:ec2:*:*:volume/vol-* ec2:CreateVolume (Erstellen)
ec2:CreateTags (Erstellen)
ec2:DeleteVolume (Löschen)
etcd-Volumes
Netzwerkschnittstelle arn:aws:ec2:*:*:network-interface/eni-* ec2:DescribeNetworkInterfacesAktualisieren
ec2:CreateNetworkInterface (Erstellen)
ec2:CreateTags (Erstellen)
ec2:ModifyNetworkInterfaceAttribute (Aktualisieren)
ec2:DeleteNetworkInterface (Löschen)
etcd-NICs
Vorlage starten arn:aws:ec2:*:*:launch-template/lt-* ec2:CreateLaunchTemplate (Erstellen, Aktualisieren)
ec2:CreateTags (Erstellen, Aktualisieren)
ec2:DeleteLaunchTemplate (Löschen)
Vorlage für Instanzen der Steuerungsebene starten
Vorlage starten Startvorlage für Knotenpoolinstanzen
Autoscaling-Gruppe arn:aws:autoscaling:*:*:autoScalingGroup:*:autoScalingGroupName/gke-* autoscaling:DescribeAutoScalingGroups (Erstellen, aktualisieren, löschen)
autoscaling:CreateAutoScalingGroup (Erstellen)
autoscaling:CreateOrUpdateTags (Aktualisieren)
autoscaling:UpdateAutoScalingGroup (Aktualisieren, Löschen)
autoscaling:TerminateInstanceInAutoScalingGroup (Aktualisieren)
autoscaling:DeleteTags Aktualisieren, (Löschen)
autoscaling:DeleteAutoScalingGroup (Löschen)
iam:CreateServiceLinkedRole (Erstellen)
ec2:RunInstances (Erstellen)
iam:PassRole (Erstellen)
Autoscaling-Gruppen für Steuerungsebeneninstanzen Erforderliche API-Berechtigungen für Amazon EC2 Auto Scaling
Autoscaling-Gruppe arn:aws:autoscaling:*:*:autoScalingGroup:*:autoScalingGroupName/gke-* Autoscaling-Gruppen für Knotenpoolinstanzen Erforderliche Berechtigungen zum Erstellen einer mit einem Dienst verknüpften Rolle
EC2-Schlüsselpaare ec2:DescribeKeyPairs (Erstellen) Achten Sie darauf, dass das EC2-Schlüsselpaar vorhanden ist, das zur Anmeldung bei Clustermaschinen verwendet wird.
Subnetze ec2:DescribeSubnets (Erstellen) Zugriff auf zusätzliche Subnetze in Ihrer VPC
VPC ec2:DescribeVpcs (Erstellen) Informationen zu Ihrer AWS-VPC
Ausgabe der EC2-Konsole ec2:GetConsoleOutput (Erstellen/aktualisieren) Konsolenlogs auf Fehler prüfen
KMS-Schlüssel For more information on KMS key policies for GKE on AWS Creating KMS keys with specific permissions

IAM-Richtlinie für die Rolle der Steuerungsebene

Zweck Berechtigung erforderlich Referenz
Cluster Autoscaler autoscaling:DescribeAutoScalingGroups (Erstellen, aktualisieren)
autoscaling:DescribeAutoScalingInstances (Erstellen, aktualisieren)
autoscaling:DescribeLaunchConfigurations (Erstellen, aktualisieren)
autoscaling:DescribeTags (Erstellen, Aktualisieren)
ec2:DescribeInstanceTypes (Erstellen, Aktualisieren)
ec2:DescribeLaunchTemplateVersions (Erstellen, Aktualisieren)
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 (Erstellen)
ec2:DescribeInstances (Erstellen)
ec2:DescribeRegions
ec2:DescribeRouteTables
ec2:DescribeSecurityGroups
ec2:DescribeSubnets
ec2:DescribeVolumes
ec2:CreateSecurityGroup
ec2:CreateTags
ec2:CreateVolume
ec2:ModifyInstanceAttribute
ec2:ModifyVolume
ec2:AttachVolume (Erstellen)
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
Load-Balancer erstellen 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-cser-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 Externer Snapshotter in Kubernetes
GKE on AWS-Knoten-Agent
NIC an etcd anhängen
ec2:AttachNetworkInterface (Erstellen/aktualisieren)
Proxy-Konfiguration aus Secrets Manager lesen secretsmanager:GetSecretValue (Erstellen/aktualisieren)
Mit KMS-Schlüsseln interagieren kms:Encrypt (Erstellen, aktualisieren)
kms:Decrypt (Erstellen, aktualisieren)
kms:CreateGrant (Erstellen, aktualisieren)

IAM-Richtlinie für die Rolle des Knotenpools

Zweck Berechtigung erforderlich Referenz
Proxy-Konfiguration aus Secrets Manager lesen secretsmanager:GetSecretValue (Erstellen/aktualisieren)
KMS-Schlüssel zum Entschlüsseln der Konfiguration von Knotenpools kms:Decrypt (Erstellen/aktualisieren) AWS KMS-Schlüssel erstellen