Esempi di VPC policy di Amazon - Amazon Virtual Private 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 VPC policy di Amazon

Per impostazione predefinita, IAM i ruoli non dispongono dell'autorizzazione per creare o modificare VPC risorse. Inoltre, non possono eseguire attività utilizzando AWS Management Console AWS CLI, o AWS API. Un IAM amministratore deve creare IAM politiche che concedano ai ruoli il permesso di eseguire API operazioni specifiche sulle risorse specificate di cui hanno bisogno. L'amministratore deve quindi associare tali politiche ai IAM ruoli che richiedono tali autorizzazioni.

Per informazioni su come creare una politica IAM basata sull'identità utilizzando questi documenti di esempioJSON, consulta Creazione di IAM politiche nella Guida per l'utente. IAM

Best practice per le policy

Le politiche basate sull'identità determinano se qualcuno può creare, accedere o eliminare VPC risorse Amazon nel tuo account. Queste azioni possono comportare costi aggiuntivi per l' Account AWS. Quando crei o modifichi policy basate su identità, segui queste linee guida e raccomandazioni:

  • Inizia con le policy AWS gestite e passa alle autorizzazioni con privilegi minimi: per iniziare a concedere autorizzazioni a utenti e carichi di lavoro, utilizza le politiche gestite che concedono le autorizzazioni per molti casi d'uso comuni.AWS Sono disponibili nel tuo. Account AWS Ti consigliamo di ridurre ulteriormente le autorizzazioni definendo politiche gestite dai AWS clienti specifiche per i tuoi casi d'uso. Per ulteriori informazioni, consulta le politiche AWS gestite o le politiche AWS gestite per le funzioni lavorative nella Guida per l'IAMutente.

  • Applica le autorizzazioni con privilegi minimi: quando imposti le autorizzazioni con le IAM politiche, concedi solo le autorizzazioni necessarie per eseguire un'attività. Puoi farlo definendo le azioni che possono essere intraprese su risorse specifiche in condizioni specifiche, note anche come autorizzazioni con privilegi minimi. Per ulteriori informazioni sull'utilizzo per applicare le autorizzazioni, consulta Politiche e autorizzazioni nella Guida IAM per l'utente. IAM IAM

  • Utilizza le condizioni nelle IAM politiche per limitare ulteriormente l'accesso: puoi aggiungere una condizione alle tue politiche per limitare l'accesso ad azioni e risorse. Ad esempio, puoi scrivere una condizione di policy per specificare che tutte le richieste devono essere inviate utilizzandoSSL. È inoltre possibile utilizzare condizioni per concedere l'accesso alle azioni di servizio se vengono utilizzate tramite uno specifico Servizio AWS, ad esempio AWS CloudFormation. Per ulteriori informazioni, consulta Elementi IAM JSON della politica: Condizione nella Guida IAM per l'utente.

  • Usa IAM Access Analyzer per convalidare IAM le tue policy e garantire autorizzazioni sicure e funzionali: IAM Access Analyzer convalida le policy nuove ed esistenti in modo che aderiscano al linguaggio delle IAM policy () e alle best practice. JSON IAM IAMAccess Analyzer fornisce più di 100 controlli delle politiche e consigli pratici per aiutarti a creare policy sicure e funzionali. Per ulteriori informazioni, vedere Convalida delle policy di IAM Access Analyzer nella Guida per l'utente. IAM

  • Richiedi l'autenticazione a più fattori (MFA): se hai uno scenario che richiede l'utilizzo di IAM utenti o di un utente root Account AWS, attiva questa opzione MFA per una maggiore sicurezza. Per richiedere MFA quando vengono richiamate API le operazioni, aggiungi MFA delle condizioni alle tue politiche. Per ulteriori informazioni, vedere Configurazione dell'APIaccesso MFA protetto nella Guida per l'IAMutente.

Per ulteriori informazioni sulle procedure consigliate inIAM, consulta la sezione Procedure consigliate in materia di sicurezza IAM nella Guida per l'IAMutente.

Usa la VPC console Amazon

Per accedere alla VPC console Amazon, devi disporre di un set minimo di autorizzazioni. Queste autorizzazioni devono consentirti di elencare e visualizzare i dettagli sulle VPC risorse Amazon presenti nel tuo AWS account. Se crei una politica basata sull'identità più restrittiva delle autorizzazioni minime richieste, la console non funzionerà come previsto per le entità (IAMruoli) che applicano tale politica.

La seguente politica concede a un ruolo l'autorizzazione a elencare le risorse nella VPC console, ma non a crearle, aggiornarle o eliminarle.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeAccountAttributes", "ec2:DescribeAddresses", "ec2:DescribeAvailabilityZones", "ec2:DescribeClassicLinkInstances", "ec2:DescribeClientVpnEndpoints", "ec2:DescribeCustomerGateways", "ec2:DescribeDhcpOptions", "ec2:DescribeEgressOnlyInternetGateways", "ec2:DescribeFlowLogs", "ec2:DescribeInternetGateways", "ec2:DescribeManagedPrefixLists", "ec2:DescribeMovingAddresses", "ec2:DescribeNatGateways", "ec2:DescribeNetworkAcls", "ec2:DescribeNetworkInterfaceAttribute", "ec2:DescribeNetworkInterfacePermissions", "ec2:DescribeNetworkInterfaces", "ec2:DescribePrefixLists", "ec2:DescribeRouteTables", "ec2:DescribeSecurityGroupReferences", "ec2:DescribeSecurityGroups", "ec2:DescribeSecurityGroupRules", "ec2:DescribeStaleSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeTags", "ec2:DescribeTrafficMirrorFilters", "ec2:DescribeTrafficMirrorSessions", "ec2:DescribeTrafficMirrorTargets", "ec2:DescribeTransitGateways", "ec2:DescribeTransitGatewayVpcAttachments", "ec2:DescribeTransitGatewayRouteTables", "ec2:DescribeVpcAttribute", "ec2:DescribeVpcClassicLink", "ec2:DescribeVpcClassicLinkDnsSupport", "ec2:DescribeVpcEndpoints", "ec2:DescribeVpcEndpointConnectionNotifications", "ec2:DescribeVpcEndpointConnections", "ec2:DescribeVpcEndpointServiceConfigurations", "ec2:DescribeVpcEndpointServicePermissions", "ec2:DescribeVpcEndpointServices", "ec2:DescribeVpcPeeringConnections", "ec2:DescribeVpcs", "ec2:DescribeVpnConnections", "ec2:DescribeVpnGateways", "ec2:GetManagedPrefixListAssociations", "ec2:GetManagedPrefixListEntries" ], "Resource": "*" } ] }

Non è necessario consentire autorizzazioni minime per la console per i ruoli che effettuano chiamate solo verso il AWS CLI o il. AWS API Consenti invece l'accesso solo alle azioni che corrispondono all'APIoperazione che il ruolo deve eseguire.

Crea un file VPC con una sottorete pubblica

L'esempio seguente abilita la creazione di ruoliVPCs, sottoreti, tabelle di routing e gateway Internet. I ruoli possono anche collegare un gateway Internet a VPC e creare percorsi nelle tabelle di routing. L'ec2:ModifyVpcAttributeazione consente ai ruoli di abilitare DNS i nomi host perVPC, in modo che ogni istanza avviata in un VPC riceva un nome DNS host.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:CreateVpc", "ec2:CreateSubnet", "ec2:DescribeAvailabilityZones", "ec2:CreateRouteTable", "ec2:CreateRoute", "ec2:CreateInternetGateway", "ec2:AttachInternetGateway", "ec2:AssociateRouteTable", "ec2:ModifyVpcAttribute" ], "Resource": "*" } ] }

La politica precedente consente inoltre ai ruoli di creare un file VPC nella VPC console Amazon.

Modifica ed elimina le risorse VPC

Potresti voler controllare le VPC risorse che i ruoli possono modificare o eliminare. Ad esempio, la seguente policy consente ai ruoli di utilizzare ed eliminare le tabelle di instradamento che hanno il tag Purpose=Test. La policy specifica inoltre che i ruoli possono eliminare solo i gateway Internet che hanno il tag Purpose=Test. I ruoli non possono utilizzare tabelle di instradamento o gateway Internet che non hanno questo tag.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ec2:DeleteInternetGateway", "Resource": "arn:aws:ec2:*:*:internet-gateway/*", "Condition": { "StringEquals": { "ec2:ResourceTag/Purpose": "Test" } } }, { "Effect": "Allow", "Action": [ "ec2:DeleteRouteTable", "ec2:CreateRoute", "ec2:ReplaceRoute", "ec2:DeleteRoute" ], "Resource": "arn:aws:ec2:*:*:route-table/*", "Condition": { "StringEquals": { "ec2:ResourceTag/Purpose": "Test" } } } ] }

Gestione dei gruppi di sicurezza

La policy seguente consente ai ruoli di gestire i gruppi di sicurezza. La prima istruzione consente ai ruoli di eliminare qualsiasi gruppo di sicurezza con il tag Stack=test e gestire le regole in entrata e in uscita per tutti i gruppi di sicurezza con il tag Stack=test. La seconda istruzione richiede ai ruoli di taggare tutti i gruppi di sicurezza creati con il tag Stack=Test. La terza istruzione consente ai ruoli di creare tag durante la creazione di un gruppo di sicurezza. La quarta istruzione consente ai ruoli di visualizzare qualsiasi gruppo di sicurezza e regola del gruppo di sicurezza. La quinta istruzione consente ai ruoli di creare un gruppo di sicurezza in unVPC.

Nota

Questa politica non può essere utilizzata dal AWS CloudFormation servizio per creare un gruppo di sicurezza con i tag richiesti. Se rimuovi la condizione sull'azione ec2:CreateSecurityGroup che richiede il tag, la policy funzionerà.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:RevokeSecurityGroupIngress", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:UpdateSecurityGroupRuleDescriptionsEgress", "ec2:RevokeSecurityGroupEgress", "ec2:DeleteSecurityGroup", "ec2:ModifySecurityGroupRules", "ec2:UpdateSecurityGroupRuleDescriptionsIngress" ], "Resource": "arn:aws:ec2:*:*:security-group/*", "Condition": { "StringEquals": { "ec2:ResourceTag/Stack": "test" } } }, { "Effect": "Allow", "Action": "ec2:CreateSecurityGroup", "Resource": "arn:aws:ec2:*:*:security-group/*", "Condition": { "StringEquals": { "aws:RequestTag/Stack": "test" }, "ForAllValues:StringEquals": { "aws:TagKeys": "Stack" } } }, { "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": "arn:aws:ec2:*:*:security-group/*", "Condition": { "StringEquals": { "ec2:CreateAction": "CreateSecurityGroup" } } }, { "Effect": "Allow", "Action": [ "ec2:DescribeSecurityGroupRules", "ec2:DescribeVpcs", "ec2:DescribeSecurityGroups" ], "Resource": "*" }, { "Effect": "Allow", "Action": "ec2:CreateSecurityGroup", "Resource": "arn:aws:ec2:*:*:vpc/*" } ] }

Per permettere ai ruoli di modificare il gruppo di sicurezza associato a un'istanza, aggiungi l'operazione ec2:ModifyInstanceAttribute alla policy.

Per permettere ai ruoli di modificare i gruppi di sicurezza per un'interfaccia di rete, aggiungi l'operazione ec2:ModifyNetworkInterfaceAttribute alla policy.

Gestione delle regole del gruppo di sicurezza

La seguente politica concede ai ruoli l'autorizzazione a visualizzare tutti i gruppi di sicurezza e le regole dei gruppi di sicurezza, aggiungere e rimuovere le regole in entrata e in uscita per i gruppi di sicurezza per uno specifico VPC e modificare le descrizioni delle regole per quello specificato. VPC La prima istruzione utilizza la chiave ec2:Vpc condition per assegnare le autorizzazioni a uno specifico. VPC

La seconda istruzione concede ai ruoli l'autorizzazione per descrivere tutti i gruppi di sicurezza, le regole dei gruppi di sicurezza e i tag. In questo modo i ruoli possono visualizzare le regole dei gruppi di sicurezza per modificarle.

{ "Version": "2012-10-17", "Statement":[{ "Effect":"Allow", "Action": [ "ec2:AuthorizeSecurityGroupIngress", "ec2:RevokeSecurityGroupIngress", "ec2:UpdateSecurityGroupRuleDescriptionsIngress", "ec2:AuthorizeSecurityGroupEgress", "ec2:RevokeSecurityGroupEgress", "ec2:UpdateSecurityGroupRuleDescriptionsEgress", "ec2:ModifySecurityGroupRules" ], "Resource": "arn:aws:ec2:region:account-id:security-group/*", "Condition": { "ArnEquals": { "ec2:Vpc": "arn:aws:ec2:region:account-id:vpc/vpc-id" } } }, { "Effect": "Allow", "Action": [ "ec2:DescribeSecurityGroups", "ec2:DescribeSecurityGroupRules", "ec2:DescribeTags" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:ModifySecurityGroupRules" ], "Resource": "arn:aws:ec2:region:account-id:security-group-rule/*" } ] }

Avvio di istanze in una sottorete specifica

La seguente policy concede ai ruoli le autorizzazioni per avviare le istanze in una sottorete specifica e utilizzare un gruppo di sicurezza specifico nella richiesta. La politica esegue questa operazione specificando il ARN per la sottorete e il ARN per il gruppo di sicurezza. Se gli utenti provano ad avviare un'istanza in una sottorete diversa o utilizzando un gruppo di sicurezza diverso, la richiesta non va a buon fine (a meno che un'altra policy o istruzione non conceda ai ruoli l'autorizzazione appropriata).

La policy concede anche l'autorizzazione per utilizzare la risorsa dell'interfaccia di rete. Quando viene avviata in una sottorete, la richiesta RunInstances crea un'interfaccia di rete principale per impostazione predefinita, pertanto il ruolo necessita dell'autorizzazione per creare questa risorsa quando avvia l'istanza.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": [ "arn:aws:ec2:region::image/ami-*", "arn:aws:ec2:region:account:instance/*", "arn:aws:ec2:region:account:subnet/subnet-id", "arn:aws:ec2:region:account:network-interface/*", "arn:aws:ec2:region:account:volume/*", "arn:aws:ec2:region:account:key-pair/*", "arn:aws:ec2:region:account:security-group/sg-id" ] } ] }

Avvia le istanze in uno specifico VPC

La seguente politica concede ai ruoli il permesso di avviare istanze in qualsiasi sottorete all'interno di una determinata sottorete. VPC La policy fa questo applicando una chiave di condizione (ec2:Vpc) alla risorsa di sottorete.

La policy concede inoltre ai ruoli il permesso di avviare istanze utilizzando solo AMIs quelle con il tag "». department=dev

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": "arn:aws:ec2:region:account-id:subnet/*", "Condition": { "ArnEquals": { "ec2:Vpc": "arn:aws:ec2:region:account-id:vpc/vpc-id" } } }, { "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": "arn:aws:ec2:region::image/ami-*", "Condition": { "StringEquals": { "ec2:ResourceTag/department": "dev" } } }, { "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": [ "arn:aws:ec2:region:account:instance/*", "arn:aws:ec2:region:account:volume/*", "arn:aws:ec2:region:account:network-interface/*", "arn:aws:ec2:region:account:key-pair/*", "arn:aws:ec2:region:account:security-group/*" ] } ] }

Altri esempi di VPC policy di Amazon

Puoi trovare altri esempi IAM di politiche relative ad Amazon VPC nella seguente documentazione: