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 IAM le politiche per concedere agli utenti le autorizzazioni necessarie per lavorare con AmazonEC2. Per step-by-step istruzioni, consulta Creazione IAM di politiche nella Guida per l'IAMutente.

La console utilizza API azioni aggiuntive per le sue funzionalità, pertanto queste politiche potrebbero non funzionare come previsto. Ad esempio, un utente che dispone dell'autorizzazione a utilizzare solo l'DescribeVolumesAPIazione riscontrerà degli errori durante il tentativo 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 AmazonEC2. 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ù API azioni 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 aiutarti a capire quali API azioni sono necessarie per eseguire le attività nella console, puoi utilizzare un servizio che registra le chiamate, ad esempio. 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. È possibile decodificare il messaggio utilizzando l'DecodeAuthorizationMessageAPIazione per AWS STS o il decode-authorization-messagecomando 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 jolle* nell'ec2:DescribeAPIazione con ec2:Describe azioni specifiche per ogni risorsa. La seguente politica consente agli utenti di visualizzare tutte le istanze e AMIs le istantanee nella console AmazonEC2. L'ec2:DescribeTagsazione consente agli utenti di visualizzare in pubblico. AMIs La console richiede che le informazioni di tagging vengano visualizzate come pubblicheAMIs; 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

EC2ec2:Describe*APILe azioni 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 EC2 API azioni 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 il 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: utilizza 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 tua policy deve includere l'autorizzazione a utilizzare le API azioni 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 correttamente un avvio, è necessario concedere agli utenti l'autorizzazione a utilizzare l'ec2:RunInstancesAPIazione e almeno le seguenti API azioni:

  • ec2:DescribeImages: Per visualizzare e selezionare unAMI.

  • 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 la rete selezionata. VPC

  • 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 API azioni alla tua politica per fornire più opzioni agli 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 VPC di sicurezza, è necessario concedere agli utenti l'autorizzazione a utilizzare l'ec2:AuthorizeSecurityGroupEgressAPIazione. Per modificare o eliminare le regole esistenti, è necessario concedere agli utenti l'autorizzazione a utilizzare l'ec2:RevokeSecurityGroup*APIazione pertinente.

  • 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 i parametri di Systems Manager durante la selezione di un criterioAMI, è necessario aggiungere ssm:DescribeParameters e ssm:GetParameters alla policy. ssm:DescribeParametersconcede agli utenti il permesso di visualizzare e selezionare i parametri di Systems Manager. ssm:GetParametersconcede agli utenti il permesso di ottenere i valori dei parametri di 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 EC2 Describe* API azioni 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. Tuttavia, puoi applicare autorizzazioni a livello di risorsa all'ec2:RunInstancesAPIazione 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 o selezionano un tipo di istanza o una sottorete diversi nella procedura guidata di avvio dell'istanza, l'avvio non riesce. AMI

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 utenti l'autorizzazione a utilizzare l'interfaccia di rete, il volume, la coppia di chiavi, il gruppo di sicurezza e le risorse della sottorete per l'ec2:RunInstancesazione, necessarie per avviare 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 a utilizzare rispettivamente l'istanza e AMI le risorse, ma solo se l't2.microistanza è un'istanza e solo se AMI è di proprietà di Amazon o di determinati partner affidabili 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 a visualizzare i parametri di Systems Manager quando ne selezionano uno AMI nella procedura guidata di 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, agli utenti deve essere concessa l'autorizzazione a utilizzare almeno le seguenti API azioni:

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

  • ec2:DescribeVpcs: Per visualizzare un elenco delle persone esistenti VPCs nell'VPCelenco.

Con queste autorizzazioni, gli utenti possono creare un nuovo gruppo di sicurezza, ma non possono aggiungervi regole. Per utilizzare le regole nella finestra di dialogo Crea gruppo di sicurezza, è possibile aggiungere le seguenti API azioni alla politica:

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

  • ec2:AuthorizeSecurityGroupEgress: Per aggiungere regole in uscita ai gruppi VPC di sicurezza.

  • 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 VPC di sicurezza. 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 API azione non è richiesta, 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 e l'utente deve aggiungerle in seguito.

  • 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 politica concede agli utenti l'autorizzazione a utilizzare la finestra di dialogo Crea gruppo di sicurezza e a creare regole in entrata e in uscita per i gruppi di sicurezza associati a uno specifico (). VPC vpc-1a2b3c4d Gli utenti possono creare gruppi di sicurezza per unVPC, ma non possono aggiungervi alcuna regola. Allo stesso modo, gli utenti non possono aggiungere regole a nessun gruppo di sicurezza esistente a cui non sia associato VPCvpc-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. Questa politica concede inoltre agli utenti l'autorizzazione a eliminare i gruppi di sicurezza a cui sono associati VPCvpc-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 API le azioni per limitare l'accesso degli utenti, ad esempio rimuovendole ec2:DescribeInstances e facendo ec2:DescribeAvailabilityZones sì che l'utente abbia accesso in sola lettura.