Aiutaci a migliorare questa pagina
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Per contribuire a questa guida per l'utente, scegli il GitHub link Modifica questa pagina nel riquadro destro di ogni pagina.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Esempi di policy basate su identità Amazon EKS
Per impostazione predefinita, gli utenti e i ruoli IAM non dispongono dell'autorizzazione per creare o modificare risorse Amazon EKS. Inoltre, non possono eseguire attività utilizzando AWS Management Console la AWS CLI o AWS l'API. Un amministratore IAM deve creare policy IAM che concedono a utenti e ruoli l'autorizzazione per eseguire operazioni API specifiche sulle risorse specificate di cui hanno bisogno. L'amministratore deve quindi allegare queste policy a utenti o IAM che richiedono tali autorizzazioni.
Per informazioni su come creare una policy basata su identità IAM utilizzando questi documenti di policy JSON di esempio, consultare Creazione di policy nella scheda JSON nella Guida per l'utente di IAM.
Quando crei un cluster Amazon EKS, al principale IAM che crea il cluster vengono automaticamente concesse system:masters
le autorizzazioni nella configurazione del controllo degli accessi basato sui ruoli (RBAC) del cluster nel piano di controllo di Amazon EKS. Questo principale non appare in nessuna configurazione visibile, quindi assicurati di tenere traccia di quale principale ha originariamente creato il cluster. Per concedere ad altri principali IAM la possibilità di interagire con il tuo cluster, modificalo all'aws-auth ConfigMap
interno di Kubernetes e crea un Kubernetes rolebinding
o clusterrolebinding
con il nome di uno che hai specificato in. group
aws-auth ConfigMap
Per ulteriori informazioni sull'utilizzo di, consulta. ConfigMap Concedi agli utenti e ai ruoli IAM l'accesso a Kubernetes APIs
Argomenti
Best practice per le policy
Le policy basate su identità determinano se qualcuno può creare, accedere o eliminare risorse Amazon EKS nell'account. Queste azioni possono comportare costi per il tuo AWS account. Quando crei o modifichi policy basate su identità, segui queste linee guida e raccomandazioni:
-
Inizia con le policy AWS gestite e passa alle autorizzazioni con privilegi minimi: per iniziare a concedere autorizzazioni a utenti e carichi di lavoro, utilizza le politiche AWS gestite che concedono le autorizzazioni per molti casi d'uso comuni. Sono disponibili nel tuo account. AWS Ti consigliamo di ridurre ulteriormente le autorizzazioni definendo politiche gestite dai AWS clienti specifiche per i tuoi casi d'uso. Per ulteriori informazioni, consulta Policy gestite da AWSo Policy gestite da AWS per le funzioni dei processi nella Guida per l'utente IAM.
-
Applica le autorizzazioni con privilegio minimo: quando imposti le autorizzazioni con le policy IAM, concedi solo le autorizzazioni richieste per eseguire un'attività. È possibile farlo definendo le azioni che possono essere intraprese su risorse specifiche in condizioni specifiche, note anche come autorizzazioni con privilegi minimi. Per ulteriori informazioni sull'utilizzo di IAM per applicare le autorizzazioni, consulta Policy e autorizzazioni in IAM nella Guida per l'utente IAM.
-
Condizioni d'uso nelle policy IAM per limitare ulteriormente l'accesso: per limitare l'accesso a operazioni e risorse è possibile aggiungere una condizione alle tue policy. Ad esempio, è possibile scrivere una condizione di policy per specificare che tutte le richieste devono essere inviate utilizzando SSL. Puoi anche utilizzare le condizioni per concedere l'accesso alle azioni del servizio se vengono utilizzate tramite un AWS servizio specifico, ad esempio AWS CloudFormation. Per ulteriori informazioni, consulta la sezione Elementi delle policy JSON di IAM: condizione nella Guida per l'utente IAM.
-
Utilizzo di IAM Access Analyzer per convalidare le policy IAM e garantire autorizzazioni sicure e funzionali: IAM Access Analyzer convalida le policy nuove ed esistenti in modo che aderiscano alla sintassi della policy IAM (JSON) e alle best practice di IAM. IAM Access Analyzer offre oltre 100 controlli delle policy e consigli utili per creare policy sicure e funzionali. Per ulteriori informazioni, consulta Convalida delle policy per IAM Access Analyzer nella Guida per l'utente IAM.
-
Richiedi l'autenticazione a più fattori (MFA): se hai uno scenario che richiede utenti IAM o un utente root nel AWS tuo account, attiva l'MFA per una maggiore sicurezza. Per richiedere la MFA quando vengono chiamate le operazioni API, aggiungi le condizioni MFA alle policy. Per ulteriori informazioni, consulta Configurazione dell'accesso alle API protetto con MFA nella Guida per l'utente IAM.
Per maggiori informazioni sulle best practice in IAM, consulta Best practice di sicurezza in IAM nella Guida per l'utente di IAM.
Utilizzo della console Amazon EKS
Per accedere alla console Amazon EKS, un principale IAM deve disporre di un set di autorizzazioni minimo. Queste autorizzazioni consentono al responsabile di elencare e visualizzare i dettagli sulle risorse Amazon EKS nel tuo AWS account. Se crei una policy basata sull'identità che è più restrittiva delle autorizzazioni minime richieste, la console non funzionerà come previsto per i principali a cui è associata quella policy.
Per garantire che i principali IAM possano comunque utilizzare la console Amazon EKS, crea una policy con un nome univoco, ad esempio AmazonEKSAdminPolicy
. Allega la politica ai principali. Per ulteriori informazioni, consulta Aggiunta e rimozione di autorizzazioni per identità IAM nella Guida per l'utente di IAM.
Importante
La policy di esempio riportata di seguito consente a un principale di visualizzare le informazioni sulla scheda Configurazione della console. Per visualizzare le informazioni nelle schede Panoramica e Risorse di, il principale necessita anche delle autorizzazioni AWS Management Console Kubernetes. Per ulteriori informazioni, consulta Autorizzazioni richieste.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "eks:*" ], "Resource": "*" }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "eks.amazonaws.com" } } } ] }
Non è necessario consentire le autorizzazioni minime della console per i principali che effettuano chiamate solo alla AWS CLI o all'API. AWS Consenti invece l'accesso solo alle azioni che corrispondono all'operazione API che stai cercando di eseguire.
Consentire agli utenti IAM di visualizzare le loro autorizzazioni
Questo esempio mostra in che modo è possibile creare una policy che consente agli utenti IAM di visualizzare le policy inline e gestite che sono cpllegate alla relativa identità utente. Questa politica include le autorizzazioni per completare questa azione sulla console o a livello di codice utilizzando la CLI o l'API AWS . AWS
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws: iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }
Crea un cluster Kubernetes sul cloud AWS
Questa policy di esempio include le autorizzazioni minime richieste per creare un cluster Amazon EKS denominato my-cluster
nella us-west-2
AWS regione. Puoi sostituire la AWS regione con la AWS regione in cui desideri creare un cluster. Se viene visualizzato un avviso che indica che le azioni contenute nella politica non supportano le autorizzazioni a livello di risorsa e richiedono la scelta tra le opzioni AWS Management Console, è possibile All resources
ignorarlo senza problemi. Se il tuo account dispone già del ruolo AWSServiceRoleForAmazonEKS
, puoi rimuovere l'azione iam:CreateServiceLinkedRole
dalla policy. Se hai mai creato un cluster Amazon EKS nel tuo account, questo ruolo esiste già, a meno che tu non lo abbia eliminato.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "eks:CreateCluster", "Resource": "arn:aws: eks:us-west-2:111122223333:cluster/my-cluster" }, { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws: iam::111122223333:role/aws-service-role/eks.amazonaws.com/AWSServiceRoleForAmazonEKS", "Condition": { "ForAnyValue:StringEquals": { "iam:AWSServiceName": "eks" } } }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws: iam::111122223333:role/cluster-role-name" } ] }
Crea un cluster Kubernetes locale su un Outpost
Questa policy di esempio include le autorizzazioni minime richieste per creare un cluster locale Amazon EKS denominato my-cluster
su un Outpost nella us-west-2
AWS regione. Puoi sostituire la AWS regione con la AWS regione in cui desideri creare un cluster. Se viene visualizzato un avviso che indica che le azioni contenute nella politica non supportano le autorizzazioni a livello di risorsa e richiedono la scelta tra le opzioni AWS Management Console, è possibile All resources
ignorarlo senza problemi. Se il tuo account dispone già del ruolo AWSServiceRoleForAmazonEKSLocalOutpost
, puoi rimuovere l'azione iam:CreateServiceLinkedRole
dalla policy. Se hai mai creato un cluster locale Amazon EKS su un Outpost nel tuo account, questo ruolo esiste già, a meno che tu non lo abbia eliminato.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "eks:CreateCluster", "Resource": "arn:aws: eks:us-west-2:111122223333:cluster/my-cluster" }, { "Action": [ "ec2:DescribeSubnets", "ec2:DescribeVpcs", "iam:GetRole" ], "Resource": "*", "Effect": "Allow" }, { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws: iam::111122223333:role/aws-service-role/outposts.eks-local.amazonaws.com/AWSServiceRoleForAmazonEKSLocalOutpost" }, { "Effect": "Allow", "Action": [ "iam:PassRole", "iam:ListAttachedRolePolicies" ] "Resource": "arn:aws: iam::111122223333:role/cluster-role-name" }, { "Action": [ "iam:CreateInstanceProfile", "iam:TagInstanceProfile", "iam:AddRoleToInstanceProfile", "iam:GetInstanceProfile", "iam:DeleteInstanceProfile", "iam:RemoveRoleFromInstanceProfile" ], "Resource": "arn:aws: iam::*:instance-profile/eks-local-*", "Effect": "Allow" }, ] }
Aggiornare un cluster Kubernetes
Questo criterio di esempio include l'autorizzazione minima richiesta per aggiornare un cluster denominato my-cluster
nella regione us-west-2 AWS .
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "eks:UpdateClusterVersion", "Resource": "arn:aws: eks:us-west-2:111122223333:cluster/my-cluster" } ] }
Elencare o descrivere tutti i cluster
Questa policy di esempio include le autorizzazioni minime richieste per elencare e descrivere tutti i cluster dell'account. Un principale IAM deve essere in grado di elencare e descrivere i cluster per utilizzare il comando update-kubeconfig
AWS CLI.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "eks:DescribeCluster", "eks:ListClusters" ], "Resource": "*" } ] }