Esempi di politiche per controllare l'accesso alla EC2 console Amazon - 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à.

Esempi di politiche per controllare l'accesso alla EC2 console Amazon

Puoi utilizzare le policy IAM per concedere agli utenti le autorizzazioni necessarie per lavorare con Amazon EC2. Per step-by-step istruzioni, consulta Creazione di politiche 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 EC2 console Amazon, consulta il seguente post sul AWS Security Blog: Granting Users Permission to Work in the Amazon EC2 Console.

Gli esempi seguenti mostrano le politiche che puoi utilizzare per concedere agli utenti le autorizzazioni per utilizzare Amazon EC2. Sostituisci ogni user input placeholder con le tue informazioni. Queste policy sono progettate per le richieste effettuate con AWS Management Console. La EC2 console Amazon potrebbe richiamare più azioni API per visualizzare una singola risorsa e ciò potrebbe non essere evidente finché l'utente non tenta un'operazione e la console non visualizza un errore. Per ulteriori informazioni, consulta il seguente post sul blog AWS sulla sicurezza: Garantire agli utenti l'autorizzazione a lavorare nella EC2 console Amazon.

Per individuare le operazioni API necessarie per eseguire le attività nella console, puoi utilizzare un servizio che effettua log di chiamate, come 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 DecodeAuthorizationMessageAPI for o AWS STS il decode-authorization-messagecomando contenuto in. AWS CLI

Esempio: accesso in sola lettura

Per consentire agli utenti di visualizzare tutte le risorse nella EC2 console Amazon, puoi utilizzare la stessa politica del 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.

Visualizza istanze e AMIs istantanee

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 politica consente agli utenti di visualizzare tutte le istanze e AMIs le istantanee nella console Amazon EC2. L'ec2:DescribeTagsazione consente agli utenti di visualizzare in pubblico. AMIs La console richiede che le informazioni di tagging vengano visualizzate come pubbliche AMIs; tuttavia, è possibile rimuovere questa azione per consentire agli utenti di visualizzare solo informazioni privateAMIs.

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

Le azioni dell' EC2 ec2:Describe*API Amazon non supportano le autorizzazioni a livello di risorsa, quindi non puoi controllare quali risorse individuali gli utenti possono visualizzare nella console. Il carattere jolly * è quindi necessario nell'elemento Resource dell'istruzione precedente. Per ulteriori informazioni su quali azioni dell' EC2 API Amazon ARNs puoi utilizzare, consulta Azioni, risorse e chiavi di condizione per Amazon EC2.

Visualizza istanze e CloudWatch metriche

La seguente politica consente agli utenti di visualizzare le istanze nella EC2 console Amazon, nonché gli CloudWatch allarmi e le metriche nella scheda Monitoraggio della pagina Istanze. La EC2 console Amazon utilizza l' CloudWatch API per visualizzare gli allarmi e le metriche, quindi devi concedere agli utenti l'autorizzazione a utilizzare le azionicloudwatch:DescribeAlarms,cloudwatch:DescribeAlarmsForMetric, cloudwatch:ListMetricscloudwatch:GetMetricStatistics, ecloudwatch: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: usa la procedura guidata di EC2 avvio dell'istanza

La procedura guidata di EC2 avvio dell'istanza di Amazon è una schermata con opzioni per configurare e avviare 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 Concedi l'autorizzazione a taggare EC2 le risorse Amazon 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 Controllare l'accesso mediante l'accesso basato sugli attributi.

  • 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 azioni dell' EC2 Describe*API Amazon non supportano le autorizzazioni a livello di risorsa, quindi non è possibile limitare le singole risorse che gli utenti possono visualizzare nella procedura guidata di 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 politica consente agli utenti di avviare t2.micro istanze utilizzando la AMIs proprietà di Amazon e solo in una sottorete specifica ()subnet-1a2b3c4d. Gli utenti possono eseguire l'avvio solo nella regione specificata. 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:region:111122223333:network-interface/*", "arn:aws:ec2:region:111122223333:volume/*", "arn:aws:ec2:region:111122223333:key-pair/*", "arn:aws:ec2:region:111122223333:security-group/*", "arn:aws:ec2:region:111122223333:subnet/subnet-1a2b3c4d" ] }, { "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": [ "arn:aws:ec2:region:111122223333:instance/*" ], "Condition": { "StringEquals": { "ec2:InstanceType": "t2.micro" } } }, { "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": [ "arn:aws:ec2:region::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:region:123456123456:parameter/prod-*" } ] }

Esempio: utilizzo dei gruppi di sicurezza

Visualizzazione dei gruppi di sicurezza e aggiunta e rimozione delle regole

La seguente politica concede agli utenti l'autorizzazione a visualizzare i gruppi di sicurezza nella EC2 console Amazon, aggiungere e rimuovere regole in entrata e in uscita e elencare e modificare le descrizioni delle regole per i gruppi di sicurezza esistenti che dispongono del 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)

Puoi creare una policy che consenta agli utenti di utilizzare la finestra di dialogo Crea gruppo di sicurezza nella EC2 console Amazon. 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 quelli esistenti VPCs 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 EC2 console Amazon, devi concedere agli utenti l'autorizzazione a utilizzare l'ec2:DescribeAddressesazione.

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'ec2:DescribeAvailabilityZonesazione è necessaria per garantire che la EC2 console Amazon possa visualizzare informazioni sulle zone di disponibilità in cui è possibile acquistare 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.