Contribuisci a migliorare questa pagina
Per contribuire a questa guida per l’utente, seleziona il link Edit this page on GitHub che si trova nel riquadro destro di ogni pagina.
Funzionamento di Amazon EKS con IAM
Prima di utilizzare IAM per gestire l'accesso ad Amazon EKS, è necessario comprendere quali funzioni IAM sono disponibili per l'uso con Amazon EKS. Per ottenere un quadro generale del funzionamento dei servizi Amazon EKS e AWS con IAM, consultare Servizi AWS supportati da IAM nella Guida per l'utente di IAM.
Argomenti
Policy basate su identità Amazon EKS
Con le policy basate su identità di IAM, è possibile specificare quali azioni e risorse sono consentite o rifiutate, nonché le condizioni in base alle quali le azioni sono consentite o rifiutate. Amazon EKS supporta specifiche operazioni, risorse e chiavi di condizione. Per informazioni su tutti gli elementi utilizzati in una policy JSON, consultare Documentazione di riferimento degli elementi delle policy JSON IAM nella Guida per l'utente di IAM.
Operazioni
Gli amministratori possono utilizzare le policy AWS JSON per specificare gli accessi ai diversi elementi. In altre parole, quale principale può eseguire operazioni su quali risorse, e in quali condizioni.
L'elemento Actiondi una policy JSON descrive le operazioni che è possibile utilizzare per consentire o negare l'accesso a un criterio. Le operazioni di policy hanno spesso lo stesso nome dell'operazione API AWS. Ci sono alcune eccezioni, ad esempio le operazioni di sola autorizzazione che non hanno un’operazione API corrispondente. Esistono anche alcune operazioni che richiedono più operazioni in una policy. Queste operazioni aggiuntive sono denominate operazioni dipendenti.
Includere le operazioni in una policy per concedere le autorizzazioni per eseguire l'operazione associata.
Le operazioni delle policy in Amazon EKS utilizzano il seguente prefisso prima dell'operazione: eks:. Ad esempio, per concedere a qualcuno l'autorizzazione per ottenere le informazioni descrittive su un cluster Amazon EKS, includere l'operazione DescribeCluster nella policy. Le istruzioni della policy devono includere un elemento Action o NotAction.
Per specificare più operazioni in una sola istruzione, separa ciascuna di esse con una virgola come mostrato di seguito:
"Action": ["eks:action1", "eks:action2"]
È possibile specificare più azioni tramite caratteri jolly (*). Ad esempio, per specificare tutte le azioni che iniziano con la parola Describe, includi la seguente azione:
"Action": "eks:Describe*"
Per visualizzare un elenco di operazioni di Amazon EKS, consulta Operazioni definite da Amazon Elastic Kubernetes Service in Service Authorization Reference.
Risorse
Gli amministratori possono utilizzare le policy JSON AWS per specificare gli accessi ai diversi elementi. In altre parole, quale principale può eseguire operazioni su quali risorse, e in quali condizioni.
L'elemento JSON Resourcedella policy specifica l'oggetto o gli oggetti ai quali si applica l'operazione. Le istruzioni devono includere un elemento Resourceo un elemento NotResource. Come best practice, specifica una risorsa utilizzando il suo nome della risorsa Amazon (ARN). È possibile eseguire questa operazione per operazioni che supportano un tipo di risorsa specifico, note come autorizzazioni a livello di risorsa.
Per le azioni che non supportano le autorizzazioni a livello di risorsa, ad esempio le operazioni di elenco, utilizza un carattere jolly (*) per indicare che l’istruzione si applica a tutte le risorse.
"Resource": "*"
La risorsa del cluster Amazon EKS dispone del seguente ARN.
arn:aws:eks:region-code:account-id:cluster/cluster-name
Per ulteriori informazioni sul formato degli ARN, consultare Amazon Resource Name (ARN) e spazi dei nomi del servizio AWS.
Ad esempio, per specificare il cluster con il nome my-cluster nell'istruzione, utilizza il seguente ARN:
"Resource": "arn:aws:eks:region-code:111122223333:cluster/my-cluster"
Per specificare tutti i cluster che appartengono a un account e a una regione AWS specifici, utilizza il carattere jolly (*):
"Resource": "arn:aws:eks:region-code:111122223333:cluster/*"
Alcune operazioni Amazon EKS, ad esempio quelle utili per la creazione di risorse, non possono essere eseguite su una risorsa specifica. In questi casi, è necessario utilizzare il carattere jolly (*).
"Resource": "*"
Per visualizzare un elenco di tipi di risorse di Amazon EKS, consultare Risorse definite da Amazon Elastic Kubernetes Service in Service Authorization Reference. Per informazioni sulle operazioni con cui è possibile specificare l'ARN di ogni risorsa, consultare Operazioni definite da Amazon Elastic Kubernetes Service.
Chiavi di condizione
Amazon EKS definisce il proprio set di chiavi di condizione e supporta anche l'uso di alcune chiavi di condizione globali. Per visualizzare tutte le chiavi di condizione globali di AWS, consultare Chiavi di contesto delle condizioni globali di AWS nella Guida per l'utente di IAM.
È possibile impostare le chiavi di condizione quando si associa un provider OpenID Connect al cluster. Per ulteriori informazioni, consulta Policy IAM di esempio.
Tutte le operazioni Amazon EC2 supportano le chiavi di condizione aws:RequestedRegion e ec2:Region. Per ulteriori informazioni, consulta Esempio: limitazione dell’accesso a una regione AWS specifica.
Per un elenco di chiavi di condizione di Amazon EKS, consultare Condizioni per Amazon Elastic Kubernetes Service in Service Authorization Reference. Per informazioni su operazioni e risorse con cui è possibile utilizzare una chiave di condizione, consultare Operazioni definite da Amazon Elastic Kubernetes Service.
Esempi
Per visualizzare esempi di policy basate su identità Amazon EKS, consultare Esempi di policy basate su identità Amazon EKS.
Quando si crea un cluster Amazon EKS, il principale IAM che crea il cluster riceve automaticamente le autorizzazioni system:masters nella configurazione del controllo degli accessi basato sul ruolo (RBAC) nel piano di controllo di Amazon EKS. Questo principale non è visualizzato in una configurazione visibile qualsiasi, quindi assicurati di tenere traccia di quale principale ha originariamente creato il cluster. Per concedere a ulteriori principali IAM la capacità di interagire con il cluster, modifica aws-auth ConfigMap all’interno di Kubernetes e crea rolebinding o clusterrolebinding Kubernetes con il nome di group specificato in aws-auth ConfigMap.
Per ulteriori informazioni sull'utilizzo della ConfigMap, consulta Concedere agli utenti e ai ruoli IAM l’accesso alle API Kubernetes.
Policy basate sulle risorse Amazon EKS
Amazon EKS non supporta policy basate su risorse.
Autorizzazione basata su tag Amazon EKS
È possibile allegare i tag alle risorse Amazon EKS o inoltrarli in una richiesta ad Amazon EKS. Per controllare l'accesso basato su tag, fornisci informazioni sui tag nell'elemento condizione di una policy utilizzando le chiavi di condizione aws:ResourceTag/, key-name
aws:RequestTag/ o key-name
aws:TagKeys. Per ulteriori informazioni sull'assegnazione di tag delle risorse di Amazon EKS, consultare Organizzazione delle risorse Amazon EKS con tag. Per ulteriori informazioni sulle operazioni in cui è possibile utilizzare i tag nelle chiavi di condizione, consulta Operazioni definite da Amazon EKSnel manuale Service Authorization Reference.
Ruoli IAM di Amazon EKS
Un ruolo IAM è un'entità all'interno dell'account AWS che dispone di autorizzazioni specifiche.
Utilizzo di credenziali temporanee con Amazon EKS
È possibile utilizzare credenziali temporanee per effettuare l'accesso con la federazione, assumere un ruolo IAM o un ruolo multi-account. Puoi ottenere le credenziali di sicurezza temporanee eseguendo chiamate a operazioni API di AWS come AssumeRole o GetFederationToken.
Amazon EKS supporta l'uso di credenziali temporanee.
Ruoli collegati ai servizi
Ruoli collegati al servizio consentono ai servizi AWS di accedere a risorse in altri servizi per completare un'operazione a tuo nome. I ruoli collegati ai servizi sono visualizzati nell'account IAM e sono di proprietà del servizio. Un amministratore può visualizzare, ma non può modificare le autorizzazioni dei ruoli collegati ai servizi.
Amazon EKS supporta i ruoli collegati ai servizi. Per maggiori dettagli su come creare e gestire i ruoli collegati ai servizi Amazon EKS, consultare Utilizzo di ruoli collegati ai servizi per Amazon EKS.
Ruoli dei servizi
Questa caratteristica consente a un servizio di assumere un ruolo di servizio per conto dell'utente. Questo ruolo consente al servizio di accedere alle risorse in altri servizi per completare un'azione per conto dell'utente. I ruoli dei servizi sono visualizzati nell'account IAM e sono di proprietà dell'account. Ciò significa che un amministratore IAM può modificare le autorizzazioni per questo ruolo. Tuttavia, questo potrebbe pregiudicare la funzionalità del servizio.
Amazon EKS supporta i ruoli del servizio. Per ulteriori informazioni, consultare Ruolo IAM del cluster Amazon EKS e Ruolo IAM del nodo Amazon EKS.
Scelta di un ruolo IAM in Amazon EKS
Quando si crea una risorsa cluster in Amazon EKS, è necessario scegliere un ruolo per consentire a Amazon EKS di accedere a molte altre risorse AWS per conto dell'utente. Se hai già creato un ruolo di servizio in precedenza, Amazon EKS ti fornisce un elenco di ruoli da scegliere. È importante scegliere un ruolo con policy gestite da Amazon EKS allegate ad esso. Per ulteriori informazioni, consultare Verifica della presenza di un ruolo del cluster esistente e Verifica della presenza di un ruolo di nodo esistente.