Configurazione delle opzioni del servizio di metadati di istanza - 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à.

Configurazione delle opzioni del servizio di metadati di istanza

Il servizio di metadati di istanza (IMDS) viene eseguito localmente su ogni istanza EC2. Le opzioni relative ai metadati dell'istanza si riferiscono a un insieme di configurazioni che controllano l'accessibilità e il comportamento dell'IMDS su un'istanza EC2.

Per ciascuna istanza puoi configurare le seguenti opzioni dei metadati di istanza:

Servizio di metadati di istanza (IMDS): enabled | disabled

È possibile abilitare o disabilitare l'IMDS su un'istanza. Se disabilitato, né tu né alcun codice sarete in grado di accedere ai metadati di istanza dell'istanza.

L'IMDS ha due endpoint su un'istanza: IPv4 (169.254.169.254) e IPv6 (). [fd00:ec2::254] Quando si abilita l'IMDS, l' IPv4 endpoint viene abilitato automaticamente. Se si desidera abilitare l' IPv6 endpoint, è necessario farlo in modo esplicito.

Endpoint IMDS: | IPv6 enabled disabled

È possibile abilitare esplicitamente l'endpoint IPv6 IMDS su un'istanza. Quando l'IPv6 endpoint è abilitato, l'endpoint rimane abilitato. IPv4 L' IPv6endpoint è supportato solo su istanze basate su Nitro in sottoreti IPv6 supportate (dual stack o solo). IPv6

Versione dei metadati: IMDSv1 or IMDSv2 (token optional) | IMDSv2 only (token required)

Quando si richiedono i metadati dell'istanza, le chiamate richiedono un token. IMDSv2 IMDSv1le chiamate non richiedono un token. È possibile configurare un'istanza per consentire entrambe IMDSv1 IMDSv2 le chiamate (dove un token è facoltativo) o per consentire solo IMDSv2 le chiamate (dove è richiesto un token).

Limite di hop di risposta dei metadati: 164

Il limite di hop è il numero di hop di rete che la risposta PUT può effettuare. È possibile impostare il limite di hop su un minimo di 1 e un massimo di 64. In un ambiente container, un limite di hop di 1 può causare problemi. Per informazioni su come mitigare questi problemi, consulta le informazioni sugli ambienti container in Considerazioni sull'accesso ai metadati dell'istanza.

Accesso ai tag nei metadati di istanza: enabled | disabled

È possibile abilitare o disabilitare l'accesso ai tag di un'istanza dai metadati dell'istanza. Per ulteriori informazioni, consulta Visualizza i tag per le istanze EC2 utilizzando i metadati dell'istanza.

Per visualizzare la configurazione corrente di un’istanza, consulta Esegui una query sulle opzioni dei metadati dell'istanza per le istanze esistenti.

Dove configurare le opzioni dei metadati di istanza

Le opzioni dei metadati di istanza possono essere configurate a diversi livelli, come segue:

  • Account: è possibile impostare valori predefiniti per le opzioni dei metadati di istanza a livello di account per ciascuna Regione AWS. All'avvio di un'istanza, le opzioni dei metadati dell'istanza vengono impostate automaticamente sui valori a livello di account. Puoi modificare questi valori al momento dell'avvio. I valori predefiniti a livello di account non influiscono sulle istanze esistenti.

  • AMI: quando registri o modifichi un'AMI, puoi impostare il parametro imds-support su v2.0. Quando un'istanza viene avviata con questa AMI, la versione dei metadati dell'istanza viene impostata automaticamente su IMDSv2 e il limite di hop è impostato su 2.

  • Istanza: puoi modificare tutte le opzioni dei metadati dell'istanza su un'istanza all'avvio, ignorando le impostazioni predefinite. È inoltre possibile modificare le opzioni dei metadati dell'istanza dopo l'avvio su un'istanza in esecuzione o interrotta. Tieni presente che le modifiche possono essere limitate da una policy IAM o SCP.

Per ulteriori informazioni, consultare Configurazione delle opzioni dei metadati dell'istanza per le nuove istanze e Modifica delle opzioni dei metadati dell'istanza per le istanze esistenti.

Ordine di precedenza per le opzioni dei metadati di istanza

Il valore per ciascuna opzione dei metadati di istanza viene determinato all'avvio dell'istanza, seguendo un ordine gerarchico di precedenza. La gerarchia, con la precedenza più alta nella parte superiore, è la seguente:

  • Precedenza 1: configurazione dell'istanza all'avvio: i valori possono essere specificati nel modello di avvio o nella configurazione dell'istanza. Tutti i valori qui specificati sostituiscono i valori specificati a livello di account o nell'AMI.

  • Precedenza 2: impostazioni dell'account: se non viene specificato un valore all'avvio dell'istanza, viene determinato dalle impostazioni a livello di account (impostate per ciascuna di esse). Regione AWS Le impostazioni a livello di account includono un valore per ciascuna opzione di metadati o non indicano alcuna preferenza.

  • Precedenza 3: configurazione dell'AMI: se un valore non è specificato all'avvio dell'istanza o a livello di account, viene determinato dalla configurazione dell'AMI. Questo vale solo per gli eventi HttpTokens e HttpPutResponseHopLimit.

Ciascuna opzione di metadati viene valutata separatamente. L'istanza può essere configurata con una combinazione di configurazione diretta dell'istanza, impostazioni predefinite a livello di account e configurazione dall'AMI.

È possibile modificare il valore di qualsiasi opzione di metadati dopo l'avvio su un'istanza in esecuzione o interrotta, a meno che le modifiche non siano limitate da una policy IAM o SCP.

Nota

L'impostazione di IMDSv2 applicazione a livello di account viene valutata dopo che l'ordine di precedenza ha determinato le impostazioni IMDS dell'istanza. Quando l' IMDSv2imposizione è abilitata, le istanze abilitate con avranno esito negativo. IMDSv1 Per ulteriori informazioni sull'applicazione, consultaApplica a livello di account IMDSv2.

avvertimento

Se IMDSv2 l'applicazione è abilitata e httpTokens non è stata impostata né required nella configurazione dell'istanza all'avvio, né nelle impostazioni dell'account o nella configurazione AMI, l'avvio avrà esito negativo.

Esempio 1: determinare i valori per le opzioni dei metadati

In questo esempio, un'istanza EC2 viene avviata in una regione in cui HttpPutResponseHopLimit è impostato su 1 a livello di account. L'AMI specificata ha ImdsSupport impostato su v2.0. Nessuna opzione di metadati viene specificata direttamente sull'istanza al momento dell'avvio. L'istanza viene avviata con le seguenti opzioni di metadati:

"MetadataOptions": { ... "HttpTokens": "required", "HttpPutResponseHopLimit": 1, ...

Questi valori sono stati determinati nel modo seguente:

  • Nessuna opzione di metadati specificata all'avvio: durante l'avvio dell'istanza, i valori specifici per le opzioni di metadati non sono stati forniti né nei parametri di avvio dell'istanza né nel modello di avvio.

  • Le impostazioni dell'account hanno priorità successiva: in assenza di valori specifici indicati all'avvio, le impostazioni a livello di account all'interno della Regione hanno la precedenza. Ciò significa che vengono applicati i valori predefiniti configurati a livello di account. In questo caso, HttpPutResponseHopLimit era impostato su 1.

  • Le impostazioni AMI hanno priorità per ultime: in assenza di un valore specifico indicato all'avvio o a livello di account per HttpTokens (la versione dei metadati di istanza), viene applicata l'impostazione dell'AMI. In questo caso, l'impostazione ImdsSupport: v2.0 dell'AMI ha determinato che HttpTokens era impostato su required. Tieni presente che, sebbene l'impostazione ImdsSupport: v2.0 dell'AMI sia progettata per essere impostata su HttpPutResponseHopLimit: 2, è stata sostituita dall'impostazione HttpPutResponseHopLimit: 1 a livello di account, che ha una priorità più alta.

Esempio 2 — Determinazione dei valori per le opzioni dei metadati

In questo esempio, l'istanza EC2 viene avviata con le stesse impostazioni del precedente Esempio 1, ma con HttpTokens impostato su optional direttamente sull'istanza al momento dell'avvio. L'istanza viene avviata con le seguenti opzioni di metadati:

"MetadataOptions": { ... "HttpTokens": "optional", "HttpPutResponseHopLimit": 1, ...

Il valore di HttpPutResponseHopLimit è determinato nello stesso modo dell'Esempio 1. Tuttavia, il valore di HttpTokens è determinato come segue: le opzioni di metadati configurate sull'istanza al momento dell'avvio hanno la priorità. Anche se l'AMI era configurata con ImdsSupport: v2.0 (in altre parole, HttpTokens è impostato su required), il valore specificato nell'istanza all'avvio (HttpTokens impostato su optional) aveva la precedenza.

Esempio 3 — Determinare i valori per le opzioni dei metadati con l'opzione abilitata HttpTokensEnforced

In questo esempio, l'account nella regione dispone di HttpTokens = required eHttpTokensEnforced = enabled.

Considera i seguenti tentativi di avvio di un'istanza EC2:

  • Tentativo di avvio HttpTokens impostato suoptional: l'avvio fallisce perché l'applicazione a livello di account è abilitata (HttpTokensEnforced = enabled) e il parametro di avvio ha la precedenza sul valore predefinito dell'account.

  • Tentativo di avvio con HttpTokens set torequired: l'avvio ha esito positivo perché è conforme all'applicazione a livello di account.

  • Tentativo di avvio senza HttpTokens valore specificato: l'avvio ha esito positivo perché il valore predefinito è basato sulle impostazioni dell'account. required

Configurazione della versione dei metadati di istanza

Quando viene avviata un'istanza, il valore per la versione dei metadati dell'istanza è IMDSv1 o IMDSv2 (token opzionale) (httpTokens=optional) o IMDSv2only (token richiesto) (). httpTokens=required

All'avvio dell'istanza, è possibile specificare manualmente il valore per la versione dei metadati o utilizzare il valore predefinito. Se specifichi manualmente il valore, esso sostituisce qualsiasi valore predefinito. Se scegliete di non specificare manualmente il valore, questo verrà determinato da una combinazione di impostazioni predefinite.

Il seguente diagramma di flusso mostra come la versione dei metadati per un'istanza al momento del lancio è determinata dalle impostazioni ai diversi livelli della configurazione e da dove viene valutata l'applicazione. La tabella che segue fornisce le impostazioni specifiche per ogni livello.

Un diagramma di flusso che mostra i punti di valutazione per la versione e IMDSv2 l'applicazione dei metadati dell'istanza.

La tabella mostra come la versione dei metadati per un'istanza all'avvio (indicata dalla Configurazione dell'istanza risultante nella colonna 4) è determinata dalle impostazioni ai diversi livelli di configurazione. L'ordine di precedenza va da sinistra a destra, dove la prima colonna ha la priorità più alta, come segue:

  • Colonna 1: parametro di avvio: rappresenta l'impostazione sull'istanza specificata manualmente all'avvio.

  • Colonna 2: livello di account predefinito: rappresenta l'impostazione dell'account.

  • Colonna 3: AMI predefinita: rappresenta l'impostazione sull'AMI.

Parametro di avvio Livello di account predefinito AMI predefinita Configurazione dell'istanza risultante
Solo V2 (token richiesto) Nessuna preferenza Solo V2 Solo V2
Solo V2 (token richiesto) Solo V2 Solo V2 Solo V2
Solo V2 (token richiesto) V1 o V2 Solo V2 Solo V2
V1 o V2 (token facoltativo) Nessuna preferenza Solo V2 V1 o V2
V1 o V2 (token facoltativo) Solo V2 Solo V2 V1 o V2
V1 o V2 (token facoltativo) V1 o V2 Solo V2 V1 o V2
Non impostato Nessuna preferenza Solo V2 Solo V2
Non impostato Solo V2 Solo V2 Solo V2
Non impostato V1 o V2 Solo V2 V1 o V2
Solo V2 (token richiesto) Nessuna preferenza null Solo V2
Solo V2 (token richiesto) Solo V2 null Solo V2
Solo V2 (token richiesto) V1 o V2 null Solo V2
V1 o V2 (token facoltativo) Nessuna preferenza null V1 o V2
V1 o V2 (token facoltativo) Solo V2 null V1 o V2
V1 o V2 (token facoltativo) V1 o V2 null V1 o V2
Non impostato Nessuna preferenza null V1 o V2
Non impostato Solo V2 null Solo V2
Non impostato V1 o V2 null V1 o V2

Utilizza le chiavi di condizione IAM per limitare le opzioni dei metadati di istanza

È possibile utilizzare le chiavi di condizione IAM in una policy IAM o SCP come riportato di seguito:

  • Consentire il lancio di un'istanza solo se è configurata per richiedere l'uso di IMDSv2

  • Limitare il numero di hop consentiti

  • Disattivazione dell'accesso ai metadati dell'istanza

Nota

È opportuno procedere con cautela e condurre test accurati prima di apportare qualsiasi modifica. Prendi nota di quanto segue:

  • Se si impone l'uso di IMDSv2, le applicazioni o gli agenti che utilizzano, ad IMDSv1 esempio, i metadati verranno interrotti.

  • Se disattivi tutto l'accesso ai metadati dell'istanza, applicazioni o agenti il cui funzionamento si basa sull'accesso ai metadati dell'istanza verranno interrotti.

  • Infatti IMDSv2, è necessario utilizzarlo /latest/api/token quando si recupera il token.

  • (Solo Windows) Se la PowerShell versione in uso è precedente alla 4.0, è necessario eseguire l'aggiornamento a Windows Management Framework 4.0 per richiedere l'uso di. IMDSv2