רשימת התפקידים ב-AWS IAM

בטבלאות שבדף הזה מפורטות כל ההרשאות שמשמשות ליצירת תפקידי ברירת המחדל של AWS IAM. כדי ליצור את כללי המדיניות האלה עם הרשאות ברירת מחדל, אפשר לעיין במאמר יצירת תפקידי AWS IAM.

תפקיד סוכן שירות של GKE Multi-Cloud API
ממשק GKE Multi-Cloud API משתמש בתפקיד הזה ב-AWS IAM כדי לנהל משאבים באמצעות ממשקי AWS API. התפקיד הזה משמש חשבון שירות בניהול Google שנקרא סוכן שירות.
תפקיד IAM ב-AWS במישור הבקרה
רמת הבקרה של האשכול משתמשת בתפקיד הזה כדי לשלוט במאגרי הצמתים.
תפקיד IAM ב-AWS של מאגר הצמתים
רמת הבקרה משתמשת בתפקיד הזה כדי ליצור מכונות וירטואליות של מאגר הצמתים.

בהתאם לדרישות הארגון, אתם יכולים ליצור מדיניות מותאמת אישית של AWS IAM ל-GKE ב-AWS כדי לנהל את האשכולות. המדיניות הזו תחליף את גרסאות ברירת המחדל. לאחר מכן, אתם מחילים את המדיניות הזו על תפקידי IAM ב-AWS ומספקים אותה כשאתם יוצרים אשכול.

מידע נוסף על המטרה של כל תפקיד זמין במאמר תפקידים ב-AWS IAM ל-GKE ב-AWS.

כדי ליצור את כללי המדיניות האלה, בוחרים את הרמה שבה רוצים להגביל את המשאבים. לדוגמה, אפשר להגביל מדיניות ל-AWS VPC מסוים באמצעות שם המשאב של Amazon‏ (ARN) של ה-VPC. מידע נוסף זמין במאמר שליטה בגישה למשאבי AWS באמצעות מדיניות.

מדיניות IAM לסוכני שירות של GKE Multi-Cloud

Resource Type ARN נדרשת הרשאה מטרה חומרי עזר
בקבוצת אבטחה arn:aws:ec2:*:*:security-group/sg-* ec2:DescribeSecurityGroups (יצירה, עדכון, מחיקה)
ec2:CreateSecurityGroup (יצירה)
ec2:CreateTags (יצירה)
ec2:RevokeSecurityGroupEgress (יצירה)
ec2:DeleteSecurityGroup (מחיקה)
קבוצת אבטחה של מישור הבקרה
בקבוצת אבטחה קבוצת אבטחה של מאגר צמתים
כלל בקבוצת אבטחה arn:aws:ec2:*:*:security-group-rule/sgr-* ec2:AuthorizeSecurityGroupEgress (יצירה)
ec2:RevokeSecurityGroupEgress (מחיקה)
ec2:CreateTags (יצירה)
כלל בקבוצת אבטחה ליציאה ממישור הבקרה
כלל בקבוצת אבטחה ec2:AuthorizeSecurityGroupIngress (יצירה)
ec2:RevokeSecurityGroupIngress (מחיקה)
ec2:CreateTags (יצירה)
כלל בקבוצת אבטחה של תעבורת נכנס במישור הבקרה
כלל בקבוצת אבטחה ec2:AuthorizeSecurityGroupEgress (יצירה)
ec2:RevokeSecurityGroupEgress (מחיקה)
ec2:CreateTags (יצירה)
כלל בקבוצת אבטחה ליציאה ממישור הבקרה
כלל בקבוצת אבטחה ec2:AuthorizeSecurityGroupIngress (יצירה)
ec2:RevokeSecurityGroupIngress (מחיקה)
ec2:CreateTags (יצירה)
כלל בקבוצת אבטחה של תעבורת נכנס במישור הבקרה
מאזן עומסי רשת arn:aws:elasticloadbalancing:*:*:loadbalancer/net/gke-* elasticloadbalancing:DescribeLoadBalancers (יצירה, מחיקה)
elasticloadbalancing:CreateLoadBalancer (יצירה)
ec2:CreateSecurityGroup (יצירה)
ec2:DescribeAccountAttributes (יצירה)
ec2:DescribeInternetGateways (יצירה)
ec2:DescribeSecurityGroups (יצירה)
ec2:DescribeSubnets (יצירה)
ec2:DescribeVpcs (יצירה)
iam:CreateServiceLinkedRole (יצירה)
elasticloadbalancing:DeleteLoadBalancer (מחיקה)
מאזן עומסים של שרת ה-API של Kubernetes הרשאות Elastic Load Balancing API
קבוצת יעד arn:aws:elasticloadbalancing:*:*:targetgroup/gke-* elasticloadbalancing:DescribeTargetGroups (יצירה, עדכון, מחיקה)
elasticloadbalancing:DescribeTargetHealth (יצירה, עדכון)
elasticloadbalancing:CreateTargetGroup (יצירה)
elasticloadbalancing:ModifyTargetGroupAttributes (יצירה)
ec2:DescribeInternetGateways (יצירה)
ec2:DescribeVpcs (יצירה)
elasticloadbalancing:DeleteTargetGroup (מחיקה)
קבוצת היעד ל-HTTPS הרשאות Elastic Load Balancing API
קבוצת יעד קבוצת היעד של https עבור סוכן הקישוריות
Listener arn:aws:elasticloadbalancing:*:*:listener/net/gke-* elasticloadbalancing:CreateListener (יצירה)
elasticloadbalancing:DeleteListener (מחיקה) elasticloadbalancing:DescribeListeners (מחיקה)
elasticloadbalancing:DeleteListener (מחיקה)
‫Listener ל-https
Listener Listener for https for konnectivity agent
עוצמת הקול arn:aws:ec2:*:*:volume/vol-* ec2:CreateVolume (יצירה)
ec2:CreateTags (יצירה)
ec2:DeleteVolume (מחיקה)
כרכי etcd
ממשק רשת arn:aws:ec2:*:*:network-interface/eni-* ec2:DescribeNetworkInterfaces עדכון
ec2:CreateNetworkInterface (יצירה)
ec2:CreateTags (יצירה)
ec2:ModifyNetworkInterfaceAttribute (עדכון)
ec2:DeleteNetworkInterface (מחיקה)
etcd NICs
תבנית השקה arn:aws:ec2:*:*:launch-template/lt-* ec2:CreateLaunchTemplate (יצירה, עדכון)
ec2:CreateTags (יצירה, עדכון)
ec2:DeleteLaunchTemplate (מחיקה)
תבנית להפעלת מופעים של מישור הבקרה
תבנית השקה תבנית השקה למופעים של מאגר צמתים
קבוצה להתאמה אוטומטית לעומס arn:aws:autoscaling:*:*:autoScalingGroup:*:autoScalingGroupName/gke-* autoscaling:DescribeAutoScalingGroups (יצירה, עדכון, מחיקה)
autoscaling:CreateAutoScalingGroup (יצירה)
autoscaling:CreateOrUpdateTags (עדכון)
autoscaling:UpdateAutoScalingGroup (עדכון, מחיקה)
autoscaling:TerminateInstanceInAutoScalingGroup (עדכון)
autoscaling:DeleteTags עדכון, (מחיקה)
autoscaling:DeleteAutoScalingGroup (מחיקה)
iam:CreateServiceLinkedRole (יצירה)
ec2:RunInstances (יצירה)
iam:PassRole (יצירה)
קבוצות של התאמה אוטומטית של קנה מידה למופעים של מישור הבקרה הרשאות ה-API הנדרשות ל-Amazon EC2 Auto Scaling
קבוצה להתאמה אוטומטית לעומס arn:aws:autoscaling:*:*:autoScalingGroup:*:autoScalingGroupName/gke-* קבוצות של התאמה אוטומטית של גודל (autoscaling) עבור מופעים של מאגר צמתים אילו הרשאות צריך כדי ליצור תפקיד שמקושר לשירות
זוגות מפתחות של EC2 ec2:DescribeKeyPairs (יצירה) כדי לוודא שזוג מפתחות EC2 שמשמש לכניסה למכונות באשכול קיים.
תת-רשתות ec2:DescribeSubnets (יצירה) גישה לרשתות משנה נוספות ב-VPC
VPC ec2:DescribeVpcs (יצירה) מידע על AWS VPC
פלט של מסוף EC2 ec2:GetConsoleOutput (יצירה, עדכון) בדיקת יומני המסוף לאיתור שגיאות
מפתח KMS For more information on KMS key policies for GKE on AWS Creating KMS keys with specific permissions

מדיניות IAM לתפקיד במישור הבקרה

מטרה נדרשת הרשאה חומרי עזר
התאמה אוטומטית לעומס (autoscaling) באשכול 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 (יצירה)
ec2:DescribeInstances (יצירה)
ec2:DescribeRegions
ec2:DescribeRouteTables
ec2:DescribeSecurityGroups
ec2:DescribeSubnets
ec2:DescribeVolumes
ec2:CreateSecurityGroup
ec2:CreateTags
ec2:CreateVolume
ec2:ModifyInstanceAttribute
ec2:ModifyVolume
ec2:AttachVolume (יצירה)
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
יצירת מאזני עומסים 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 Kubernetes external snapshotter
סוכן הצומת של GKE ב-AWS
צירוף כרטיס רשת ל-etcd
ec2:AttachNetworkInterface (יצירה, עדכון)
קריאת הגדרת ה-Proxy מ-Secrets Manager secretsmanager:GetSecretValue (יצירה, עדכון)
אינטראקציה עם מפתחות KMS kms:Encrypt (יצירה, עדכון)
kms:Decrypt (יצירה, עדכון)
kms:CreateGrant (יצירה, עדכון)

מדיניות IAM לתפקיד של מאגר צמתים

מטרה נדרשת הרשאה חומרי עזר
קריאת הגדרות ה-Proxy מ-Secrets Manager secretsmanager:GetSecretValue (יצירה, עדכון)
מפתח KMS לפענוח הצפנת ההגדרה של מאגר הצמתים kms:Decrypt (יצירה, עדכון) יצירת מפתח AWS KMS