Controlla l'accesso ai modelli di lancio con le IAM autorizzazioni - 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à.

Controlla l'accesso ai modelli di lancio con le IAM autorizzazioni

Puoi utilizzare IAM le autorizzazioni per controllare quali azioni dei modelli di avvio possono eseguire gli utenti, come visualizzare, creare o eliminare i modelli di lancio.

Quando concedi agli utenti l'autorizzazione a creare modelli di lancio e avviare versioni dei modelli, non puoi utilizzare le autorizzazioni a livello di risorsa per limitare le risorse che possono specificare in un modello di lancio. Pertanto, assicuratevi di concedere le autorizzazioni per creare modelli di lancio e avviare versioni dei modelli solo agli amministratori appropriati.

È necessario concedere a chiunque utilizzerà un modello di lancio le autorizzazioni necessarie per creare e accedere alle risorse specificate nel modello di lancio. Per esempio:

  • Per avviare un'istanza da un'Amazon Machine Image privata condivisa (AMI), l'utente deve disporre dell'autorizzazione di avvio perAMI.

  • Per creare EBS volumi con tag da istantanee esistenti, l'utente deve disporre dell'accesso in lettura alle istantanee e delle autorizzazioni per creare e contrassegnare volumi.

ec2: CreateLaunchTemplate

Per creare un modello di avvio nella console o utilizzando ilAPIs, il principale deve disporre dell'ec2:CreateLaunchTemplateautorizzazione in una IAM policy. Quando possibile, è consigliabile utilizzare i tag per controllare l'accesso ai modelli di avvio nell'account.

Ad esempio, la seguente dichiarazione IAM politica fornisce l'autorizzazione principale per creare modelli di avvio solo se il modello utilizza il tag specificato (scopo=test).

{ "Sid": "IAMPolicyForCreatingTaggedLaunchTemplates", "Action": "ec2:CreateLaunchTemplate", "Effect": "Allow", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/purpose": "testing" } } }

I principali che creano i modelli di avvio potrebbero richiedere alcune autorizzazioni correlate, come ad esempio:

  • ec2: CreateTags — Per aggiungere tag al modello di avvio durante l'CreateLaunchTemplateoperazione, il CreateLaunchTemplate chiamante deve disporre dell'ec2:CreateTagsautorizzazione in una IAM politica.

  • ec2: RunInstances — Per avviare EC2 le istanze dal modello di avvio che ha creato, il principale deve inoltre disporre dell'ec2:RunInstancesautorizzazione prevista da una policy. IAM

Per le operazioni di creazione delle risorse in cui vengono applicati i tag, gli utenti devono disporre dell'autorizzazione ec2:CreateTags. La seguente dichiarazione IAM politica utilizza la chiave ec2:CreateAction condition per consentire agli utenti di creare tag solo nel contesto di. CreateLaunchTemplate Gli utenti non possono aggiungere tag ai modelli di avvio o altre risorse esistenti. Per ulteriori informazioni, consulta Concedi l'autorizzazione a taggare EC2 le risorse Amazon durante la creazione.

{ "Sid": "IAMPolicyForTaggingLaunchTemplatesOnCreation", "Action": "ec2:CreateTags", "Effect": "Allow", "Resource": "arn:aws:ec2:region:account-id:launch-template/*", "Condition": { "StringEquals": { "ec2:CreateAction": "CreateLaunchTemplate" } } }

L'IAMutente che crea un modello di avvio non dispone automaticamente dell'autorizzazione per utilizzare il modello di avvio che ha creato. Come qualsiasi altro responsabile, il creatore del modello di lancio deve ottenere l'autorizzazione tramite una IAM politica. Se un IAM utente desidera avviare un'EC2istanza da un modello di avvio, deve disporre dell'ec2:RunInstancesautorizzazione. Quando concedi queste autorizzazioni, puoi specificare che gli utenti possano utilizzare solo modelli di lancio con tag specifici o specifici. IDs Puoi anche controllare le risorse AMI e altre risorse a cui chiunque utilizzi i modelli di avvio può fare riferimento e utilizzare per avviare le istanze specificando le autorizzazioni a livello di risorsa per la chiamata. RunInstances Per esempi di policy, consulta Modelli di lancio.

ec2: DescribeLaunchTemplates

Per elencare i modelli di avvio nell'account, il responsabile deve disporre dell'ec2:DescribeLaunchTemplatesautorizzazione specificata in una IAM policy. Dato che le operazioni Describe non supportano le autorizzazioni a livello di risorsa, devono essere specificate senza condizioni e il valore dell'elemento risorsa nella policy deve essere "*".

Ad esempio, la seguente dichiarazione IAM politica fornisce l'autorizzazione principale a elencare tutti i modelli di avvio presenti nell'account.

{ "Sid": "IAMPolicyForDescribingLaunchTemplates", "Action": "ec2:DescribeLaunchTemplates", "Effect": "Allow", "Resource": "*" }

ec2: DescribeLaunchTemplateVersions

I responsabili che visualizzano i modelli di avvio dovrebbero inoltre disporre dell'autorizzazione ec2:DescribeLaunchTemplateVersions per recuperare l'intero set di attributi che compongono i modelli di avvio.

Per elencare le versioni del modello di avvio nell'account, il principale deve disporre dell'ec2:DescribeLaunchTemplateVersionsautorizzazione in una IAM politica. Dato che le operazioni Describe non supportano le autorizzazioni a livello di risorsa, devono essere specificate senza condizioni e il valore dell'elemento risorsa nella policy deve essere "*".

Ad esempio, la seguente dichiarazione IAM politica fornisce l'autorizzazione principale a elencare tutte le versioni del modello di lancio nell'account.

{ "Sid": "IAMPolicyForDescribingLaunchTemplateVersions", "Effect": "Allow", "Action": "ec2:DescribeLaunchTemplateVersions", "Resource": "*" }

ec2: DeleteLaunchTemplate

Importante

È necessario prestare attenzione quando si concedono ai principali le autorizzazioni per eliminare una risorsa. L'eliminazione di un modello di avvio potrebbe causare un errore in una AWS risorsa che si basa sul modello di avvio.

Per eliminare un modello di avvio, il responsabile deve disporre dell'ec2:DeleteLaunchTemplateautorizzazione prevista da una IAM policy. Quando possibile, si consiglia di utilizzare le chiavi di condizione basate su tag per limitare le autorizzazioni.

Ad esempio, la seguente dichiarazione IAM politica concede l'autorizzazione principale a eliminare i modelli di avvio solo se il modello utilizza il tag specificato (scopo=test).

{ "Sid": "IAMPolicyForDeletingLaunchTemplates", "Action": "ec2:DeleteLaunchTemplate", "Effect": "Allow", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/purpose": "testing" } } }

In alternativa, puoi ARNs utilizzarlo per identificare il modello di lancio a cui si applica la IAM politica.

Un modello di lancio presenta quanto segueARN.

"Resource": "arn:aws:ec2:region:account-id:launch-template/lt-09477bcd97b0d310e"

È possibile specificarne più ARNs di uno racchiudendoli in un elenco oppure è possibile specificare un Resource valore "*" senza l'Conditionelemento per consentire all'amministratore di eliminare qualsiasi modello di avvio nell'account.

Controllo delle autorizzazioni di controllo delle versioni

Agli amministratori fidati, è possibile concedere l'accesso per la creazione e l'eliminazione di versioni di un modello di lancio e per modificare la versione predefinita di un modello di lancio, utilizzando IAM politiche simili agli esempi seguenti.

Importante

Fai attenzione quando autorizzi i responsabili a creare versioni dei modelli di lancio o modificare i modelli di lancio.

  • Quando crei una versione modello di lancio, influisci su tutte AWS le risorse che consentono EC2 ad Amazon di avviare istanze per tuo conto con la Latest versione.

  • Quando modifichi un modello di lancio, puoi cambiare la versione Default e quindi influire su tutte AWS le risorse che consentono EC2 ad Amazon di avviare istanze per tuo conto con questa versione modificata.

Inoltre, devi essere cauto nel modo in cui gestisci AWS le risorse che interagiscono con la versione del modello Latest o la Default lanciano, come EC2 Fleet e Spot Fleet. Quando viene utilizzata una versione del modello di lancio diversa per Latest oDefault, Amazon EC2 non ricontrolla le autorizzazioni degli utenti per le azioni da completare al momento del lancio di nuove istanze per soddisfare la capacità target della flotta, perché non vi è alcuna interazione dell'utente con la risorsa. AWS Concedendo a un utente l'autorizzazione a chiamare il CreateLaunchTemplateVersion and ModifyLaunchTemplateAPIs, all'utente viene effettivamente concessa l'iam:PassRoleautorizzazione anche se indirizza la flotta a una versione diversa del modello di lancio che contiene un profilo di istanza (un contenitore per un ruolo). IAM Ciò significa che un utente può potenzialmente aggiornare un modello di lancio per passare un IAM ruolo a un'istanza anche se non dispone dell'iam:PassRoleautorizzazione. È possibile gestire questo rischio prestando attenzione quando si concedono le autorizzazioni a chi può creare e gestire le versioni dei modelli di avvio.

ec2: CreateLaunchTemplateVersion

Per creare una nuova versione di un modello di lancio, il responsabile deve disporre dell'ec2:CreateLaunchTemplateVersionautorizzazione per il modello di lancio in una IAM policy.

Ad esempio, la seguente dichiarazione IAM politica fornisce l'autorizzazione principale a creare versioni del modello di lancio solo se la versione utilizza il tag specificato (ambiente=produzione). In alternativa, puoi specificare uno o più modelli ARNs di lancio oppure puoi specificare un Resource valore "*" senza l'Conditionelemento per consentire al principale di creare versioni di qualsiasi modello di lancio nell'account.

{ "Sid": "IAMPolicyForCreatingLaunchTemplateVersions", "Action": "ec2:CreateLaunchTemplateVersion", "Effect": "Allow", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "production" } } }

ec2: DeleteLaunchTemplateVersion

Importante

Come sempre, è necessario prestare attenzione quando si concedono le autorizzazioni per eliminare una risorsa. L'eliminazione di una versione del modello di avvio potrebbe causare un errore in una AWS risorsa che si basa sulla versione del modello di avvio.

Per eliminare una versione del modello di lancio, il responsabile deve disporre dell'ec2:DeleteLaunchTemplateVersionautorizzazione per il modello di lancio in una IAM politica.

Ad esempio, la seguente dichiarazione IAM politica fornisce l'autorizzazione principale per eliminare le versioni del modello di lancio solo se la versione utilizza il tag specificato (ambiente=produzione). In alternativa, puoi specificare uno o più modelli ARNs di lancio oppure puoi specificare un Resource valore "*" senza l'Conditionelemento per consentire al principale di eliminare le versioni di qualsiasi modello di lancio nell'account.

{ "Sid": "IAMPolicyForDeletingLaunchTemplateVersions", "Action": "ec2:DeleteLaunchTemplateVersion", "Effect": "Allow", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "production" } } }

ec2: ModifyLaunchTemplate

Per modificare la Default versione associata a un modello di avvio, il responsabile deve disporre dell'ec2:ModifyLaunchTemplateautorizzazione per il modello di avvio in una IAM policy.

Ad esempio, la seguente dichiarazione IAM politica fornisce l'autorizzazione principale a modificare i modelli di lancio solo se il modello di lancio utilizza il tag specificato (ambiente=produzione). In alternativa, è possibile specificare uno o più modelli ARNs di avvio oppure specificare un Resource valore "*" senza l'Conditionelemento per consentire al principale di modificare qualsiasi modello di avvio nell'account.

{ "Sid": "IAMPolicyForModifyingLaunchTemplates", "Action": "ec2:ModifyLaunchTemplate", "Effect": "Allow", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "production" } } }

Controllo dell'accesso ai tag sui modelli di avvio

È possibile utilizzare le chiavi di condizione per limitare le autorizzazioni di applicazione di tag quando la risorsa è un modello di avvio. Ad esempio, la seguente IAM politica consente di rimuovere solo il tag con la temporary chiave dai modelli di avvio nell'account e nella regione specificati.

{ "Sid": "IAMPolicyForDeletingTagsOnLaunchTemplates", "Action": "ec2:DeleteTags", "Effect": "Allow", "Resource": "arn:aws:ec2:region:account-id:launch-template/*", "Condition": { "ForAllValues:StringEquals": { "aws:TagKeys": ["temporary"] } } }

Per ulteriori informazioni sulle chiavi delle condizioni che puoi utilizzare per controllare le chiavi e i valori dei tag che possono essere applicati alle EC2 risorse Amazon, consultaControllo dell'accesso a tag specifici.