Come funziona Amazon Elastic Container Service con IAM
Prima di utilizzare IAM per gestire l'accesso ad Amazon ECS, scopri quali funzioni IAM sono disponibili per l'uso con Amazon ECS.
| Funzionalità IAM | Supporto di Amazon ECS |
|---|---|
|
Sì |
|
|
No |
|
|
Sì |
|
|
Parziale |
|
|
Sì |
|
|
No |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
Sì |
Per ottenere un quadro generale del funzionamento di Amazon ECS e altri servizi AWS con la maggior parte delle caratteristiche di IAM, consulta Servizi AWS supportati da IAM nella Guida per l'utente di IAM.
Policy basate su identità per Amazon ECS
Supporta le policy basate su identità: sì
Le policy basate su identità sono documenti di policy di autorizzazione JSON che è possibile allegare a un'identità (utente, gruppo di utenti o ruolo IAM). Tali policy definiscono le operazioni che utenti e ruoli possono eseguire, su quali risorse e in quali condizioni. Per informazioni su come creare una policy basata su identità, consulta Definizione di autorizzazioni personalizzate IAM con policy gestite dal cliente nella Guida per l'utente IAM.
Con le policy basate su identità di IAM, è possibile specificare quali operazioni e risorse sono consentite o respinte, nonché le condizioni in base alle quali le operazioni sono consentite o respinte. Non è possibile specificare l'entità principale in una policy basata sull'identità perché si applica all'utente o al ruolo a cui è associato. Per informazioni su tutti gli elementi utilizzabili in una policy JSON, consulta Guida di riferimento agli elementi delle policy JSON IAM nella Guida per l'utente di IAM.
Esempi di policy basate su identità per Amazon ECS
Per visualizzare esempi di policy basate su identità Amazon ECS, consulta Esempi di policy basate su identità per Amazon Elastic Container Service.
Policy basate su risorse all'interno di Amazon ECS
Supporta le policy basate su risorse: no
Le policy basate su risorse sono documenti di policy JSON che è possibile collegare a una risorsa. Esempi di policy basate sulle risorse sono le policy di attendibilità dei ruoli IAM e le policy dei bucket Amazon S3. Nei servizi che supportano policy basate sulle risorse, gli amministratori dei servizi possono utilizzarli per controllare l'accesso a una risorsa specifica. Quando è collegata a una risorsa, una policy definisce le operazioni che un principale può eseguire su tale risorsa e a quali condizioni. È necessario specificare un principale in una policy basata sulle risorse. I principali possono includere account, utenti, ruoli, utenti federati o Servizi AWS.
Per consentire l'accesso multi-account, puoi specificare un intero account o entità IAM in un altro account come principale in una policy basata sulle risorse. L'aggiunta di un principale multi-account a una policy basata sulle risorse rappresenta solo una parte della relazione di trust. Quando l'entità principale e la risorsa si trovano in diversi Account AWS, un amministratore IAM nell'account attendibile deve concedere all'entità principale (utente o ruolo) anche l'autorizzazione per accedere alla risorsa. L'autorizzazione viene concessa collegando all'entità una policy basata sull'identità. Tuttavia, se una policy basata su risorse concede l'accesso a un principale nello stesso account, non sono richieste ulteriori policy basate su identità. Per ulteriori informazioni, consulta Accesso a risorse multi-account in IAM nella Guida per l'utente IAM.
Operazioni di policy per Amazon ECS
Supporta le operazioni di policy: si
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 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.
Includi le operazioni in una policy per concedere le autorizzazioni a eseguire l'operazione associata.
Per visualizzare un elenco di operazioni di Amazon ECS, consulta Operazioni definite da Amazon Elastic Container Service nella documentazione di riferimento alla autorizzazione di servizio.
Le operazioni delle policy in Amazon ECS utilizzano il seguente prefisso prima dell'operazione:
ecs
Per specificare più operazioni in una sola istruzione, occorre separarle con la virgola.
"Action": [ "ecs:action1", "ecs: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": "ecs:Describe*"
Per visualizzare esempi di policy basate su identità Amazon ECS, consulta Esempi di policy basate su identità per Amazon Elastic Container Service.
Risorse di policy per Amazon ECS
Supporto risorse policy: Parziale
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": "*"
Per visualizzare un elenco di tipi di risorse di Amazon ECS, consulta Risorse definite da Amazon Elastic Container Service nella documentazione di riferimento alla autorizzazione di servizio. Per informazioni sulle operazioni con cui è possibile specificare l'ARN di ogni risorsa, consulta Operazioni definite da Amazon Elastic Container Service.
Alcune operazioni API di Amazon ECS supportano più risorse. Ad esempio, è possibile selezionare più cluster quando si chiama l'operazione API DescribeClusters. Per specificare più risorse in una singola istruzione, separa gli ARN con le virgole.
"Resource": [ "EXAMPLE-RESOURCE-1", "EXAMPLE-RESOURCE-2"
Ad esempio, la risorsa del cluster Amazon ECS dispone del seguente ARN:
arn:${Partition}:ecs:${Region}:${Account}:cluster/${clusterName}
Per specificare il cluster my-cluster-1 e my-cluster-2 nell'istruzione, utilizza i seguenti ARN:
"Resource": [ "arn:aws:ecs:us-east-1:123456789012:cluster/my-cluster-1", "arn:aws:ecs:us-east-1:123456789012:cluster/my-cluster-2"
Per specificare tutti i cluster che appartengono ad un account specifico, utilizza il carattere jolly (*):
"Resource": "arn:aws:ecs:us-east-1:123456789012:cluster/*"
Per le definizioni di attività, puoi specificare la revisione più recente o una revisione specifica.
Per specificare tutte le revisioni della definizione dell'attività, usa il carattere jolly (*):
"Resource:arn:${Partition}:ecs:${Region}:${Account}:task-definition/${TaskDefinitionFamilyName}:*"
Per specificare una revisione specifica della definizione di attività, utilizza ${TaskDefinitionRevisionNumber}:
"Resource:arn:${Partition}:ecs:${Region}:${Account}:task-definition/${TaskDefinitionFamilyName}:${TaskDefinitionRevisionNumber}"
Per visualizzare esempi di policy basate su identità Amazon ECS, consulta Esempi di policy basate su identità per Amazon Elastic Container Service.
Chiavi di condizione delle policy per Amazon ECS
Supporta le chiavi di condizione delle policy specifiche del servizio: sì
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 Condition(o blocco Condition) consente di specificare le condizioni in cui un'istruzione è in vigore. L'elemento Conditionè facoltativo. È possibile compilare espressioni condizionali che utilizzano operatori di condizione, ad esempio uguale a o minore di, per soddisfare la condizione nella policy con i valori nella richiesta.
Se specifichi più elementi Conditionin un'istruzione o più chiavi in un singolo elemento Condition, questi vengono valutati da AWSutilizzando un'operazione ANDlogica. Se specifichi più valori per una singola chiave di condizione, AWSvaluta la condizione utilizzando un'operazione ORlogica. Tutte le condizioni devono essere soddisfatte prima che le autorizzazioni dell'istruzione vengano concesse.
È possibile anche utilizzare variabili segnaposto quando specifichi le condizioni. Ad esempio, è possibile autorizzare un utente IAM ad accedere a una risorsa solo se è stata taggata con il relativo nome utente IAM. Per ulteriori informazioni, consulta Elementi delle policy IAM: variabili e tag nella Guida per l'utente di IAM.
AWS supporta chiavi di condizione globali e chiavi di condizione specifiche per il servizio. Per visualizzare tutte le chiavi di condizione globali di AWS, consulta Chiavi di contesto delle condizioni globali di AWS nella Guida per l'utente di IAM.
Amazon ECS supporta le seguenti chiavi di condizione specifiche del servizio, utilizzabili per fornire filtri granulari per le tue policy IAM:
| Chiave di condizione | Descrizione | Tipi di valutazione |
|---|---|---|
|
aws:RequestTag/${TagKey} |
La chiave di contesto è formattata Controlla che la coppia chiave-valore di tag sia presente in una richiesta AWS. Ad esempio, è possibile controllare che la richiesta includa la chiave di un tag |
Stringa |
|
aws:ResourceTag/${TagKey} |
La chiave di contesto è formattata Controlla che il tag collegato alla risorsa dell'identità (utente o ruolo) corrisponda al nome e al valore della chiave specificata. |
Stringa |
|
aws:TagKeys |
Questa chiave di contesto ha il formato Controlla le chiavi dei tag presenti in una richiesta AWS. |
Stringa |
|
ecs:ResourceTag/${TagKey} |
La chiave di contesto è formattata Controlla che il tag collegato alla risorsa dell'identità (utente o ruolo) corrisponda al nome e al valore della chiave specificata. |
Stringa |
| ecs:account-setting |
La chiave di contesto ha il formato |
Stringa |
| ecs:auto-assign-public-ip | La chiave di contesto ha il formato "ecs:auto-assign-public-ip":", dove value- è "true" o "false". |
Stringa |
|
ecs:capacity-provider |
La chiave di contesto è formattata come |
ARN, Null |
|
ecs:cluster |
La chiave di contesto ha il formato |
ARN, Null |
|
ecs:compute-compatability |
La chiave di contesto è formattata come "ecs:compute-compatability":", dove è “FARGATE”, “EC2” o “EXTERNAL”. |
Stringa |
|
ecs:container-instances |
La chiave di contesto ha il formato |
ARN, Null |
| ecs:container-name |
La chiave di contesto ha il formato |
Stringa |
| ecs:enable-execute-command | La chiave di contesto ha il formato "ecs:enable-execute-command":", dove value- è "true" o "false". |
Stringa |
|
ecs:enable-service-connect |
La chiave di contesto ha il formato |
Stringa |
|
ecs:enable-ebs-volumes |
La chiave di contesto ha il formato |
Stringa |
| ecs:enable-managed-tags |
La chiave di contesto ha il formato |
Stringa |
| ecs:enable-vpc-lattice |
La chiave di contesto ha il formato |
Stringa |
| ecs:fargate-ephemeral-storage-kms-key |
La chiave di contesto è formattata come |
Stringa |
|
ecs:namespace |
La chiave di contesto ha il formato |
ARN, Null |
| ecs:propagate-tags |
La chiave di contesto ha il formato |
Stringa |
|
ecs:service |
La chiave di contesto ha il formato |
ARN, Null |
|
ecs:task-definition |
La chiave di contesto ha il formato |
ARN, Null |
| ecs:subnet |
La chiave di contesto è formattata come |
Stringa |
|
ecs:task |
La chiave di contesto ha il formato |
ARN, Null |
| ecs:task-cpu | La chiave di contesto è formattata come "ecs:task-cpu":", dove task-cpu è la CPU dell'attività, espressa come numero intero con 1024 = 1 vCPU. |
Numero intero |
| ecs:task-memory | La chiave di contesto è formattata come "ecs:task-memory":", dove task-memory è la memoria dell'attività in MiB. |
Numero intero |
Per un elenco completo delle chiavi di condizione di Amazon ECS, consulta Chiavi di condizione per Amazon Elastic Container Service nella documentazione di riferimento alla autorizzazione di servizio. Per informazioni su operazioni e risorse con cui è possibile utilizzare una chiave di condizione, consulta Operazioni definite da Amazon Elastic Container Service.
Per visualizzare esempi di policy basate su identità Amazon ECS, consulta Esempi di policy basate su identità per Amazon Elastic Container Service.
Liste di controllo degli accessi (ACL) in Amazon ECS
Supporta le ACL: no
Le liste di controllo degli accessi (ACL) controllano quali principali (membri, utenti o ruoli dell'account) hanno le autorizzazioni per accedere a una risorsa. Le ACL sono simili alle policy basate su risorse, sebbene non utilizzino il formato del documento di policy JSON.
Controllo degli accessi basato su attributi (ABAC) con Amazon ECS
Importante
Amazon ECS supporta il controllo degli accessi basato su attributi per tutte le risorse Amazon ECS. Per determinare se puoi utilizzare gli attributi per definire l'ambito di un'azione, utilizza la tabella Operazioni definite da Amazon ECS in Service Authorization Reference. Verifica innanzitutto che vi sia una risorsa nella colonna Risorsa. Quindi, utilizza la colonna Chiavi di condizione per vedere le chiavi per la combinazione operazione/risorsa.
Supporta ABAC (tag nelle policy): sì
Il controllo dell'accesso basato su attributi (ABAC) è una strategia di autorizzazione che definisce le autorizzazioni in base agli attributi. In AWS, tali attributi sono denominati tag. È possibile collegare dei tag alle entità IAM (utenti o ruoli) e a numerose risorse AWS. L'assegnazione di tag alle entità e alle risorse è il primo passaggio di ABAC. In seguito, vengono progettate policy ABAC per consentire operazioni quando il tag dell'entità principale corrisponde al tag sulla risorsa a cui si sta provando ad accedere.
La strategia ABAC è utile in ambienti soggetti a una rapida crescita e aiuta in situazioni in cui la gestione delle policy diventa impegnativa.
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-nameaws:RequestTag/o key-nameaws:TagKeys.
Se un servizio supporta tutte e tre le chiavi di condizione per ogni tipo di risorsa, il valore per il servizio è Yes (Sì). Se un servizio supporta tutte e tre le chiavi di condizione solo per alcuni tipi di risorsa, allora il valore sarà Parziale.
Per ulteriori informazioni su ABAC, consulta Definizione delle autorizzazioni con autorizzazione ABAC nella Guida per l'utente IAM. Per visualizzare un tutorial con le fasi per l'impostazione di ABAC, consulta Utilizzo del controllo degli accessi basato su attributi (ABAC) nella Guida per l'utente di IAM.
Per ulteriori informazioni sull'aggiunta di tag alle risorse di Amazon ECS, consulta Aggiunta di tag alle risorse Amazon ECS.
Per visualizzare una policy basata sulle identità di esempio per limitare l'accesso a una risorsa basata su tag su tale risorsa, consulta Descrizione dei servizi Amazon ECS basati su tag.
Utilizzo di credenziali temporanee con Amazon ECS
Supporta le credenziali temporanee: sì
Alcuni Servizi AWS non funzionano quando si accede utilizzando credenziali temporanee. Per ulteriori informazioni, inclusi i Servizi AWSche funzionano con le credenziali temporanee, consulta Servizi AWSsupportati da IAM nella Guida per l'utente IAM.
Le credenziali temporanee sono utilizzate se si accede alla AWS Management Consoleutilizzando qualsiasi metodo che non sia la combinazione di nome utente e password. Ad esempio, quando accedi alla AWSutilizzando il collegamento Single Sign-On (SSO) della tua azienda, tale processo crea in automatico credenziali temporanee. Le credenziali temporanee vengono create in automatico anche quando accedi alla console come utente e poi cambi ruolo. Per ulteriori informazioni sullo scambio dei ruoli, consulta Passaggio da un ruolo utente a un ruolo IAM (console) nella Guida per l'utente IAM.
È possibile creare manualmente credenziali temporanee utilizzando la AWS CLI o l'API AWS. È quindi possibile utilizzare tali credenziali temporanee per accedere ad AWS. AWSconsiglia di generare le credenziali temporanee dinamicamente anziché utilizzare chiavi di accesso a lungo termine. Per ulteriori informazioni, consulta Credenziali di sicurezza provvisorie in IAM.
Sessioni di accesso in avanti per Amazon ECS
Supporta l'inoltro delle sessioni di accesso (FAS): sì
Quando si utilizza un utente o un ruolo IAM per eseguire operazioni in AWS, si viene considerati un principale. Quando si utilizzano alcuni servizi, è possibile eseguire un'operazione che attiva un'altra operazione in un servizio diverso. La tecnologia FAS utilizza le autorizzazioni del principale che effettua la chiamata a un Servizio AWS, combinate con la richiesta di un Servizio AWS per effettuare richieste a servizi downstream. Le richieste FAS vengono effettuate solo quando un servizio riceve una richiesta che comporta interazioni con altri Servizi AWS o risorse per essere completata. In questo caso è necessario disporre delle autorizzazioni per eseguire entrambe le operazioni. Per i dettagli delle policy relative alle richieste FAS, consulta Forward access sessions.
Ruoli di servizio per Amazon ECS
Supporta i ruoli di servizio: sì
Un ruolo di servizio è un ruolo IAM che un servizio assume per eseguire operazioni per tuo conto. Un amministratore IAM può creare, modificare ed eliminare un ruolo di servizio dall'interno di IAM. Per ulteriori informazioni, consulta la sezione Create a role to delegate permissions to an Servizio AWS nella Guida per l'utente IAM.
avvertimento
La modifica delle autorizzazioni per un ruolo di servizio potrebbe compromettere la funzionalità di Amazon ECS. Modifica i ruoli del servizio solo quando Amazon ECS fornisce le indicazioni per farlo.
Ruoli collegati ai servizi per Amazon ECS
Supporta i ruoli collegati al servizio: Sì
Un ruolo collegato ai servizi è un tipo di ruolo di servizio che è collegato a un Servizio AWS. Il servizio può assumere il ruolo per eseguire un'azione per tuo conto. I ruoli collegati ai servizi sono visualizzati nell'account Account AWSe sono di proprietà del servizio. Un amministratore IAM può visualizzare le autorizzazioni per i ruoli collegati ai servizi, ma non modificarle.
Per maggiori dettagli su come creare e gestire i ruoli collegati ai servizi Amazon ECS, consulta Uso di ruoli collegati ai servizi per Amazon ECS.