Policy di esempio da utilizzare nella console Amazon EC2 - Amazon Elastic Compute Cloud

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à.

Policy di esempio da utilizzare nella console Amazon EC2

Devi concedere agli utenti le autorizzazioni necessarie per Amazon EC2 utilizzando le policy IAM. È possibile utilizzare le policy IAM per concedere agli utenti le autorizzazioni per visualizzare e utilizzare risorse specifiche nella console Amazon EC2. Puoi utilizzare le politiche di esempio nella sezione precedente; tuttavia, sono progettate per le richieste effettuate con o con un SDK. AWS CLI AWS Per ulteriori informazioni, consulta Politiche di esempio per lavorare con o con un SDK AWS CLIAWS e Creazione di policy IAM nella Guida per l'utente IAM.

La console utilizza operazioni API aggiuntive per le relative caratteristiche. Pertanto, queste policy potrebbero non funzionare come previsto. Ad esempio, un utente con l'autorizzazione per l'utilizzo solo dell'operazione API DescribeVolumes riscontrerà errori quando cerca di visualizzare i volumi nella console. In questa sezione sono descritte le policy che consentono agli utenti di utilizzare parti specifiche della console. Per ulteriori informazioni sulla creazione di politiche per la console Amazon EC2, consulta il seguente post sul blog sulla AWS sicurezza: Granting Users Permission to Work in the Amazon EC2 Console.

Suggerimento

Per individuare le operazioni API necessarie per eseguire le attività nella console, puoi utilizzare un servizio, ad esempio AWS CloudTrail. Per ulteriori informazioni, consulta la Guida per l'utente AWS CloudTrail. Se la policy non concede l'autorizzazione per creare o modificare una risorse specifica, nella console viene visualizzato un messaggio codificato con informazioni di diagnostica. Puoi decodificare il messaggio utilizzando l'azione Message API for o il comando DecodeAuthorization AWS STSdecode-authorization-message in. AWS CLI

Esempio: accesso in sola lettura

Per consentire agli utenti di visualizzare tutte le risorse nella console Amazon EC2, è possibile utilizzare la stessa policy impiegata nel seguente esempio: Esempio: accesso in sola lettura. Gli utenti non possono eseguire operazioni su queste risorse o creare nuove risorse a meno che un'altra istruzione conceda loro l'autorizzazione corrispondente.

Visualizzazione di istanze, AMI e snapshot

In alternativa, puoi concedere l'accesso in sola lettura a un sottoinsieme di risorse. A tale scopo, sostituisci il carattere jolly * nell'operazione API ec2:Describe con operazioni ec2:Describe specifiche per ciascuna risorsa. La seguente policy consente agli utenti di visualizzare tutte le istanze, AMI e snapshot nella console Amazon EC2. L'operazione ec2:DescribeTags consente agli utenti di visualizzare le AMI pubbliche. La console richiede le informazioni di tagging per visualizzare le AMI pubbliche. Tuttavia, puoi rimuovere questa operazione per consentire agli utenti di visualizzare solo le AMI private.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:DescribeImages", "ec2:DescribeTags", "ec2:DescribeSnapshots" ], "Resource": "*" } ] }
Nota

Le operazioni API di Amazon EC2 ec2:Describe* non supportano le autorizzazioni a livello di risorsa, pertanto non è possibile controllare le singole risorse che gli utenti possono visualizzare nella console. Il carattere jolly * è quindi necessario nell'elemento Resource dell'istruzione precedente. Per ulteriori informazioni sugli ARN che è possibile utilizzare con le operazioni API Amazon EC2, consulta Operazioni, risorse e chiavi di condizione per Amazon EC2.

Visualizza CloudWatch istanze e metriche

La seguente policy consente agli utenti di visualizzare le istanze nella console Amazon EC2, CloudWatch nonché gli allarmi e i parametri nella scheda Monitoraggio della pagina Istanze. La console Amazon EC2 utilizza l' CloudWatch API per visualizzare gli allarmi e le metriche, quindi è necessario concedere agli utenti l'autorizzazione a utilizzare le azionicloudwatch:DescribeAlarms,, cloudwatch:DescribeAlarmsForMetriccloudwatch:ListMetrics, cloudwatch:GetMetricStatistics e. cloudwatch:GetMetricData

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:DescribeInstanceTypes", "cloudwatch:DescribeAlarms", "cloudwatch:DescribeAlarmsForMetric", "cloudwatch:ListMetrics", "cloudwatch:GetMetricStatistics", "cloudwatch:GetMetricData" ], "Resource": "*" } ] }

Esempio: utilizzo della procedura guidata per l'avvio dell'istanza EC2

La procedura guidata per l'avvio dell'istanza Amazon EC2 è una schermata contenente opzioni per la configurazione e l'avvio di un'istanza. La policy deve includere l'autorizzazione per l'utilizzo delle operazioni API che consentono agli utenti di utilizzare le opzioni della procedura guidata. Se la policy non include l'autorizzazione per l'utilizzo di tali operazioni, alcuni elementi della procedura guidata potrebbero non venire caricati correttamente e gli utenti potrebbero non essere in grado di completare il processo di avvio.

Accesso di base alla procedura guidata per l'avvio dell'istanza

Per completare un processo di avvio correttamente, gli utenti devono disporre dell'autorizzazione per l'uso dell'operazione API ec2:RunInstances e almeno delle seguenti operazioni API:

  • ec2:DescribeImages: per visualizzare e selezionare un'AMI.

  • ec2:DescribeInstanceTypes: per visualizzare e selezionare un tipo di istanza.

  • ec2:DescribeVpcs: Per visualizzare le opzioni di rete disponibili.

  • ec2:DescribeSubnets: Per visualizzare tutte le sottoreti disponibili per il VPC scelto.

  • ec2:DescribeSecurityGroups o ec2:CreateSecurityGroup: per visualizzare e selezionare un gruppo di sicurezza esistente o crearne uno nuovo.

  • ec2:DescribeKeyPairs o ec2:CreateKeyPair: per selezionare una coppia di chiavi esistente o per crearne una nuova.

  • ec2:AuthorizeSecurityGroupIngress: per aggiungere le regole in entrata.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:DescribeImages", "ec2:DescribeInstanceTypes", "ec2:DescribeKeyPairs", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:CreateSecurityGroup", "ec2:AuthorizeSecurityGroupIngress", "ec2:CreateKeyPair" ], "Resource": "*" }, { "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": "*" } ] }

Puoi aggiungere operazioni API alla policy per mettere a disposizione opzioni aggiuntive per gli utenti, ad esempio:

  • ec2:DescribeAvailabilityZones: Per visualizzare e selezionare una zona di disponibilità specifica.

  • ec2:DescribeNetworkInterfaces: Per visualizzare e selezionare le interfacce di rete esistenti per la sottorete selezionata.

  • Per aggiungere regole in uscita ai gruppi di sicurezza VPC, è necessario concedere agli utenti l'autorizzazione per utilizzare l'operazione API ec2:AuthorizeSecurityGroupEgress. Per modificare o eliminare le regole esistenti, è necessario concedere agli utenti l'autorizzazione per utilizzare l'operazione API ec2:RevokeSecurityGroup* corrispondente.

  • ec2:CreateTags: per applicare tag alle risorse create da RunInstances. Per ulteriori informazioni, consulta Concessione dell'autorizzazione all'applicazione di tag per le risorse durante la creazione. Se gli utenti non dispongono dell'autorizzazione per utilizzare questa operazione e tentano di applicare tag nella pagina relativa al tagging della procedura guidata per l'avvio dell'istanza, l'avvio ha esito negativo.

    Importante

    Se si specifica un Name (Nome) durante l'avvio di un'istanza viene creato un tag e viene richiesta l'operazione ec2:CreateTags. Prestare particolare attenzione quando si concede agli utenti l'autorizzazione per l'uso dell'operazione ec2:CreateTags, perché questo limita la possibilità di utilizzare la chiave di condizione aws:ResourceTag per limitare l'utilizzo di altre risorse. Se si concede agli utenti l'autorizzazione a utilizzare l'operazione ec2:CreateTags, è possibile modificare il tag di una risorsa per ignorare tali restrizioni. Per ulteriori informazioni, consulta Controllo dell'accesso alle risorse EC2 mediante i tag delle risorse.

  • Per utilizzare parametri Systems Manager durante la selezione di un'AMI, è necessario aggiungere ssm:DescribeParameters e ssm:GetParameters alla policy. ssm:DescribeParameters concede agli utenti l'autorizzazione per visualizzare e selezionare i parametri Systems Manager. ssm:GetParameters concede agli utenti l'autorizzazione per ottenere i valori dei parametri Systems Manager. Puoi inoltre limitare l'accesso a parametri Systems Manager specifici. Per ulteriori informazioni, consulta Limitare l'accesso a parametri Systems Manager specifici in seguito in questa sezione.

Attualmente, le operazioni API Describe* di Amazon EC2 non supportano le autorizzazioni a livello di risorsa, pertanto non è possibile limitare le singole risorse che gli utenti possono visualizzare nella procedura guidata per l'avvio dell'istanza. Puoi tuttavia applicare autorizzazioni a livello di risorsa nell'operazione API ec2:RunInstances per limitare le risorse che gli utenti possono utilizzare per avviare un'istanza. L'avvio ha esito negativo se gli utenti selezionano opzioni che non sono autorizzati a usare.

Limitazione dell'accesso a un tipo di istanza, sottorete e regione specifici

La seguente policy consente gli utenti di avviare istanze t2.micro tramite le AMI di proprietà di Amazon e solo in una sottorete specifica (subnet-1a2b3c4d). Gli utenti possono eseguire l'avvio solo nella regione sa-east-1. Se gli utenti selezionano una regione diversa oppure se selezionano un tipo di istanza, un'AMI o una sottorete diversa nella procedura guidata per l'avvio dell'istanza, l'avvio avrà esito negativo.

La prima istruzione concede agli utenti l'autorizzazione per visualizzare le opzioni nella procedura guidata per l'avvio dell'istanza o di crearne di nuove, come illustrato nell'esempio precedente. La seconda istruzione concede agli utente l'autorizzazione per utilizzare l'interfaccia di rete, il volume, la coppia di chiavi, il gruppo di sicurezza e le risorse della sottorete per l'operazione ec2:RunInstances. Questi elementi sono obbligatori per l'avvio di un'istanza in un VPC. Per ulteriori informazioni sull'uso dell'operazione ec2:RunInstances, consulta Avvia istanze () RunInstances. La terza e la quarta istruzione concedono agli utenti l'autorizzazione per utilizzare rispettivamente le risorse dell'istanza e le risorse dell'AMI, ma solo se l'istanza è un'istanza t2.micro e solo se l'AMI è di proprietà di Amazon o di determinati partner sicuri e verificati.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:DescribeImages", "ec2:DescribeInstanceTypes", "ec2:DescribeKeyPairs", "ec2:CreateKeyPair", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:CreateSecurityGroup", "ec2:AuthorizeSecurityGroupIngress" ], "Resource": "*" }, { "Effect": "Allow", "Action":"ec2:RunInstances", "Resource": [ "arn:aws:ec2:sa-east-1:111122223333:network-interface/*", "arn:aws:ec2:sa-east-1:111122223333:volume/*", "arn:aws:ec2:sa-east-1:111122223333:key-pair/*", "arn:aws:ec2:sa-east-1:111122223333:security-group/*", "arn:aws:ec2:sa-east-1:111122223333:subnet/subnet-1a2b3c4d" ] }, { "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": [ "arn:aws:ec2:sa-east-1:111122223333:instance/*" ], "Condition": { "StringEquals": { "ec2:InstanceType": "t2.micro" } } }, { "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": [ "arn:aws:ec2:sa-east-1::image/ami-*" ], "Condition": { "StringEquals": { "ec2:Owner": "amazon" } } } ] }

Limitazione dell'accesso a parametri Systems Manager specifici

La policy seguente concede l'accesso all'utilizzo di parametri Systems Manager con un nome specifico.

La prima istruzione concede agli utenti l'autorizzazione per visualizzare parametri Systems Manager quando si seleziona un'AMI nella procedura guidata per l'avvio dell'istanza. La seconda istruzione concede agli utenti l'autorizzazione a utilizzare solo i parametri denominati prod-*.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ssm:DescribeParameters" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:GetParameters" ], "Resource": "arn:aws:ssm:us-east-2:123456123:parameter/prod-*" } ] }

Esempio: utilizzo dei gruppi di sicurezza

Visualizzazione dei gruppi di sicurezza e aggiunta e rimozione delle regole

La seguente policy concede agli utenti l'autorizzazione per visualizzare i gruppi di sicurezza nella console Amazon EC2 e per aggiungere e rimuovere le regole in entrata e in uscita e per elencare e modificare le descrizioni delle regole per i gruppi di sicurezza esistenti associati al tag Department=Test.

Nella prima istruzione, l'operazione ec2:DescribeTags consente agli utenti di visualizzare i tag nella console e ciò semplifica l'identificazione dei gruppi di sicurezza che gli utenti possono modificare.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeSecurityGroups", "ec2:DescribeSecurityGroupRules", "ec2:DescribeTags" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:AuthorizeSecurityGroupIngress", "ec2:RevokeSecurityGroupIngress", "ec2:AuthorizeSecurityGroupEgress", "ec2:RevokeSecurityGroupEgress", "ec2:ModifySecurityGroupRules", "ec2:UpdateSecurityGroupRuleDescriptionsIngress", "ec2:UpdateSecurityGroupRuleDescriptionsEgress" ], "Resource": [ "arn:aws:ec2:region:111122223333:security-group/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/Department": "Test" } } }, { "Effect": "Allow", "Action": [ "ec2:ModifySecurityGroupRules" ], "Resource": [ "arn:aws:ec2:region:111122223333:security-group-rule/*" ] } ]}

Utilizzo della finestra di dialogo Create Security Group (Crea un gruppo di sicurezza)

È possibile creare una policy che consenta agli utenti di utilizzare la finestra di dialogo Create Security Group (Crea un gruppo di sicurezza) nella console Amazon EC2. Per utilizzare questa finestra di dialogo, gli utenti devono disporre dell'autorizzazione per l'uso almeno delle seguenti operazioni API:

  • ec2:CreateSecurityGroup: per creare un nuovo gruppo di sicurezza.

  • ec2:DescribeVpcs: Per visualizzare un elenco di VPC esistenti nell'elenco VPC.

Con queste autorizzazioni, gli utenti possono creare un nuovo gruppo di sicurezza, ma non possono aggiungervi regole. Per utilizzare regole nella finestra di dialogo Create Security Group (Crea un gruppo di sicurezza), è possibile aggiungere le seguenti operazioni API alla policy:

  • ec2:AuthorizeSecurityGroupIngress: per aggiungere le regole in entrata.

  • ec2:AuthorizeSecurityGroupEgress: per aggiungere le regole in uscita al gruppo di sicurezza VPC.

  • ec2:RevokeSecurityGroupIngress: per modificare o eliminare le regole in uscita esistenti. Ciò risulta utile per consentire agli utenti di utilizzare la caratteristica Copy to new (Copia su nuovo) nella console. Questa caratteristica consente di aprire la finestra di dialogo Create Security Group (Crea un gruppo di sicurezza) e popolarlo con le stesse regole del gruppo di sicurezza selezionato.

  • ec2:RevokeSecurityGroupEgress: per modificare o eliminare le regole in uscita per i gruppi di sicurezza VPC. Ciò risulta utile per consentire agli utenti di modificare o eliminare la regola in uscita di default che autorizza tutto il traffico in uscita.

  • ec2:DeleteSecurityGroup: da specificare quando non è possibile salvare regole non valide. La console crea innanzitutto il gruppo di sicurezza e quindi aggiunge le regole specificate. Se le regole non sono valide, l'operazione ha esito negativo e la console cerca di eliminare il gruppo di sicurezza. L'utente rimane nella finestra di dialogo Create Security Group (Crea un gruppo di sicurezza) in modo da consentirgli di correggere la regola non valida e provare a creare di nuovo il gruppo di sicurezza. Questa operazione API non è obbligatoria, ma se un utente non riceve l'autorizzazione per utilizzarla e tenta di creare un gruppo di sicurezza con regole non valide, il gruppo di sicurezza viene creato senza regole. L'utente dovrà quindi aggiungere le regole in un secondo momento.

  • ec2:UpdateSecurityGroupRuleDescriptionsIngress: per aggiungere o aggiornare le descrizioni delle regole dei gruppi di sicurezza in entrata (inbound).

  • ec2:UpdateSecurityGroupRuleDescriptionsEgress: per aggiungere o aggiornare le descrizioni delle regole del gruppo di sicurezza in uscita (outbound).

  • ec2:ModifySecurityGroupRules: per modificare modify-security-group-rules.

  • ec2:DescribeSecurityGroupRules: per elencare le regole dei gruppi di sicurezza.

La seguente policy concede agli utenti l'autorizzazione per utilizzare la finestra di dialogo Create Security Group (Crea un gruppo di sicurezza) e per creare le regole in entrata e in uscita per i gruppi di sicurezza associati a un VPC specifico (vpc-1a2b3c4d). Gli utenti possono creare i gruppi di sicurezza per EC2-Classic o un altro VPC, ma non possono aggiungervi regole. In modo analogo, gli utenti non possono aggiungere regole ai gruppi di sicurezza esistenti che non sono associati al VPC vpc-1a2b3c4d. Agli utenti viene inoltre concesso l'autorizzazione per visualizzare tutti i gruppi di sicurezza nella console. Ciò aiuta gli utenti a identificare i gruppi di sicurezza a cui possono aggiungere regole in entrata. Inoltre, questa policy concede agli utenti l'autorizzazione per eliminare i gruppi di sicurezza associati al VPC vpc-1a2b3c4d.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeSecurityGroups", "ec2:CreateSecurityGroup", "ec2:DescribeVpcs" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:DeleteSecurityGroup", "ec2:AuthorizeSecurityGroupIngress", "ec2:AuthorizeSecurityGroupEgress" ], "Resource": "arn:aws:ec2:region:111122223333:security-group/*", "Condition":{ "ArnEquals": { "ec2:Vpc": "arn:aws:ec2:region:111122223333:vpc/vpc-1a2b3c4d" } } } ] }

Esempio: utilizzo degli indirizzi IP elastici

Per consentire agli utenti di visualizzare gli indirizzi IP elastici nella console Amazon EC2, è necessario concedergli l'autorizzazione per utilizzare l'operazione ec2:DescribeAddresses.

Per consentire agli utenti di utilizzare gli indirizzi IP elastici, puoi aggiungere le seguenti operazioni alla policy.

  • ec2:AllocateAddress: Per allocare un indirizzo IP elastico.

  • ec2:ReleaseAddress: per rilasciare un indirizzo IP elastico.

  • ec2:AssociateAddress: per associare un indirizzo IP elastico a un'istanza o un'interfaccia di rete.

  • ec2:DescribeNetworkInterfaces ed ec2:DescribeInstances: Per utilizzare la schermata Associate address (Associa indirizzo). Nella schermata sono visualizzate le istanze disponibili o le interfacce di rete a cui puoi associare un indirizzo IP elastico.

  • ec2:DisassociateAddress: per annullare l'associazione di un indirizzo IP elastico a un'istanza o un'interfaccia di rete.

La seguente policy consente agli utenti di visualizzare, allocare e associare indirizzi IP elastici alle istanze. Gli utenti non possono associare gli indirizzi IP elastici alle interfacce di rete, annullare l'associazione degli indirizzi IP elastici o rilasciarli.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeAddresses", "ec2:AllocateAddress", "ec2:DescribeInstances", "ec2:AssociateAddress" ], "Resource": "*" } ] }

Esempio: utilizzo delle Istanze riservate

La seguente policy consente agli utenti di visualizzare e modificare le istanze riservate nell'account, nonché acquistare nuove istanze riservate nella AWS Management Console.

Questa policy consente agli utenti di visualizzare tutte le Istanze riservate, così come Istanze on demand, nell'account. Non è possibile impostare le autorizzazioni a livello di risorsa per singole Istanze riservate.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeReservedInstances", "ec2:ModifyReservedInstances", "ec2:PurchaseReservedInstancesOffering", "ec2:DescribeInstances", "ec2:DescribeInstanceTypes", "ec2:DescribeAvailabilityZones", "ec2:DescribeReservedInstancesOfferings" ], "Resource": "*" } ] }

L'operazione ec2:DescribeAvailabilityZones è necessaria affinché la console Amazon EC2 sia in grado di visualizzare le informazioni sulle zone di disponibilità in cui è possibile acquistare le Istanze riservate. L'operazione ec2:DescribeInstances non è obbligatoria, ma fa sì che l'utente possa visualizzare le istanze nell'account e possa acquistare prenotazioni conformi alle specifiche corrette.

Puoi modificare le operazioni API per limitare l'accesso utente, ad esempio la rimozione di ec2:DescribeInstances ed ec2:DescribeAvailabilityZones indica che l'utente dispone dell'accesso in sola lettura.