Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Configuration du service des métadonnées d’instance
Le service de métadonnées d’instance (IMDS) s’exécute localement sur chaque instance EC2. Les options de métadonnées d’instance font référence à un ensemble de configurations qui contrôlent l’accessibilité et le comportement de l’IMDS sur une instance EC2.
Vous pouvez configurer les options de métadonnées d’instance suivantes.
- Service de métadonnées d’instance (IMDS) :
enabled|disabled -
Vous pouvez activer ou désactiver l’IMDS sur une instance. Lorsque cette option est désactivée, ni vous ni aucun code ne pouvez accéder aux métadonnées de l’instance.
L’IMDS possède deux points de terminaison sur une instance : IPv4 (
169.254.169.254) et IPv6 ().[fd00:ec2::254]Lorsque vous activez l’IMDS, le point de terminaison IPv4 est automatiquement activé. Si vous souhaitez activer le point de terminaison IPv6, vous devez le faire explicitement. - Point de terminaison IPv6 IMDS : |
enableddisabled -
Vous pouvez activer explicitement le point de terminaison IPv6 IMDS sur une instance. Lorsque le point de terminaison IPv6 est activé, le point de terminaison IPv4 reste activé. Le point de terminaison IPv6 n'est pris en charge que sur les Nitro-based instances IPv6-supported des sous-réseaux (double pile ou IPv6 uniquement).
- Version des métadonnées :
IMDSv1 or IMDSv2 (token optional)|IMDSv2 only (token required) -
Lors de la demande de métadonnées d’instance, les appels IMDSv2 nécessitent un jeton. Les appels IMDSv1 ne nécessitent pas de jeton. Vous pouvez configurer une instance pour autoriser les appels IMDSv1 ou IMDSv2 (où un jeton est facultatif), ou pour autoriser uniquement les appels IMDSv2 (lorsqu’un jeton est requis).
- Limite de saut de réponse des métadonnées :
1–64 -
La limite de saut est le nombre de saut de réseau que la réponse PUT est autorisée à effectuer. Vous pouvez définir la limite de sauts sur un minimum
1et un maximum de64. Dans un environnement de conteneurs, une limite de saut de1peut entraîner des problèmes. Pour plus d’informations sur la manière d’atténuer ces problèmes, consultez les informations sur les environnements de conteneurs sous Considérations sur l’accès aux métadonnées d’instance. - Autoriser l’accès aux balises dans les métadonnées de l’instance :
enabled|disabled -
Vous pouvez activer ou désactiver l’accès aux balises de l’instance à partir des métadonnées de l’instance. Pour de plus amples informations, veuillez consulter Affichez les balises pour vos instances EC2 à l'aide des métadonnées d'instance.
Pour consulter la configuration actuelle d’une instance, consultez la section Interroger les options de métadonnées d’instance pour les instances existantes.
Où configurer les options de métadonnées d’instance
Les options de métadonnées d’instance peuvent être configurées à différents niveaux, comme suit :
-
Compte : vous pouvez définir des valeurs par défaut pour les options de métadonnées de l’instance au niveau du compte pour chacune d’entre elles Région AWS. Lorsqu’une instance est lancée, les options de métadonnées de l’instance sont automatiquement définies sur les valeurs au niveau du compte. Vous pouvez modifier ces valeurs au lancement. Account-level les valeurs par défaut n'affectent pas les instances existantes.
-
AMI – Vous pouvez définir le paramètre
imds-supportversv2.0lorsque vous enregistrez ou modifiez une AMI. Lorsqu’une instance est lancée avec cette AMI, la version des métadonnées de l’instance est automatiquement définie sur IMDSv2 et la limite de sauts est définie sur 2. -
Instance : vous pouvez modifier toutes les options de métadonnées d’une instance au lancement, en remplaçant les paramètres par défaut. Vous pouvez également modifier les options de métadonnées de l’instance après le lancement sur une instance en cours d’exécution ou arrêtée. Notez que les modifications peuvent être limitées par une politique IAM ou SCP.
Pour plus d’informations, consultez Configurer les options de métadonnées d’instance pour les nouvelles instances et Configurer les options de métadonnées d’instance pour les instances existantes.
Ordre de priorité pour les options de métadonnées des instances
La valeur de chaque option de métadonnées d’instance est déterminée au lancement de l’instance, selon un ordre de priorité hiérarchique. La hiérarchie, avec la priorité la plus élevée au sommet, est la suivante :
-
Priorité 1 : Configuration de l’instance au lancement — Les valeurs peuvent être spécifiées dans le modèle de lancement ou dans la configuration de l’instance. Toutes les valeurs spécifiées ici remplacent les valeurs spécifiées au niveau du compte ou dans l’AMI.
-
Priorité 2 : paramètres du compte — Si aucune valeur n'est spécifiée au lancement de l'instance, elle est déterminée par les paramètres au niveau du compte (qui sont définis pour chaque instance). Région AWS Account-levelles paramètres incluent une valeur pour chaque option de métadonnées ou n'indiquent aucune préférence.
-
Priorité 3 : configuration de l’AMI — Si aucune valeur n’est spécifiée au lancement de l’instance ou au niveau du compte, elle est déterminée par la configuration de l’AMI. Cela s’applique uniquement à
HttpTokensetHttpPutResponseHopLimit.
Chaque option de métadonnées est évaluée séparément. L’instance peut être configurée à l’aide d’une combinaison de configuration directe, de paramètres par défaut au niveau du compte et de configuration depuis l’AMI.
Vous pouvez modifier la valeur de n’importe quelle option de métadonnées après le lancement sur une instance en cours d’exécution ou arrêtée, sauf si les modifications sont limitées par une politique IAM ou SCP.
Note
Le paramètre d'application IMDSv2 au niveau du compte est évalué une fois que l'ordre de priorité a déterminé les paramètres IMDS de l'instance. Lorsque l'application IMDSv2 est activée, les instances activées avec IMDSv1 échoueront. Pour plus d'informations sur l'exécution, consultezAppliquez IMDSv2 au niveau du compte.
Avertissement
Si l'application IMDSv2 est activée et n'httpTokensa pas été définie required dans la configuration de l'instance au lancement, dans les paramètres du compte ou dans la configuration de l'AMI, votre lancement échouera.
Exemple 1 — Déterminer les valeurs des options de métadonnées
Dans cet exemple, une instance EC2 est lancée dans une région où le paramètre HttpPutResponseHopLimit est défini 1 au niveau du compte. L’AMI spécifiée est ImdsSupport définie surv2.0. Aucune option de métadonnées n’est spécifiée directement sur l’instance au lancement. L’instance est lancée avec les options de métadonnées suivantes :
"MetadataOptions": {
...
"HttpTokens": "required",
"HttpPutResponseHopLimit": 1,
...
Ces valeurs ont été déterminées comme suit :
-
Aucune option de métadonnées spécifiée au lancement : lors du lancement de l’instance, aucune valeur spécifique pour les options de métadonnées n’était fournie ni dans les paramètres de lancement de l’instance ni dans le modèle de lancement.
-
Les paramètres du compte ont la priorité suivante : en l’absence de valeurs spécifiques spécifiées au lancement, les paramètres au niveau du compte dans la région sont prioritaires. Cela signifie que les valeurs par défaut configurées au niveau du compte sont appliquées. Dans ce cas, le
HttpPutResponseHopLimita été réglé sur1. -
Les paramètres de l’AMI ont la dernière priorité : en l’absence de valeur spécifique spécifiée au lancement ou au niveau du compte pour
HttpTokens(la version des métadonnées de l’instance), le paramètre de l’AMI est appliqué. Dans ce cas, le paramètre AMI aImdsSupport: v2.0déterminé que ce paramètreHttpTokensétait défini surrequired. Notez que bien que le paramètre AMIImdsSupport: v2.0soit conçu pour être définiHttpPutResponseHopLimit: 2, il a été remplacé par le paramètre au niveau du compteHttpPutResponseHopLimit: 1, qui a une priorité plus élevée.
Exemple 2 — Déterminer les valeurs des options de métadonnées
Dans cet exemple, l’instance EC2 est lancée avec les mêmes paramètres que dans l’exemple 1 précédent, mais avec la valeur HttpTokens définie sur optional directement sur l’instance au lancement. L’instance est lancée avec les options de métadonnées suivantes :
"MetadataOptions": {
...
"HttpTokens": "optional",
"HttpPutResponseHopLimit": 1,
...
La valeur pour HttpPutResponseHopLimit est déterminée de la même manière que dans l’exemple 1. Toutefois, la valeur pour HttpTokens est déterminée comme suit : Les options de métadonnées configurées sur l’instance au lancement sont prioritaires. Même si l’AMI était configurée avec ImdsSupport: v2.0 (en d’autres termes, elle HttpTokens est définie surrequired), la valeur spécifiée sur l’instance au lancement (HttpTokensdéfinie suroptional) était prioritaire.
Exemple 3 — Déterminer les valeurs des options de métadonnées avec HttpTokensEnforced activé
Dans cet exemple, le compte de la Région possède HttpTokens = required etHttpTokensEnforced = enabled.
Prenez en compte les tentatives de lancement d'instance EC2 suivantes :
-
Tentative de lancement avec
HttpTokensdéfini suroptional: le lancement échoue car l'application au niveau du compte est activée (HttpTokensEnforced = enabled) et le paramètre de lancement est prioritaire sur le compte par défaut. -
Tentative de lancement avec
HttpTokensréglé surrequired— Le lancement réussit car il est conforme à l'application au niveau du compte. -
Tentative de lancement sans
HttpTokensvaleur spécifiée — Le lancement réussit car la valeur par défaut estrequiredbasée sur les paramètres du compte.
Définissez la version des métadonnées de l’instance
Lorsqu'une instance est lancée, la valeur de la version des métadonnées de l'instance est IMDSv1 ou IMDSv2 (jeton facultatif) () ou IMDSv2 uniquement (jeton requishttpTokens=optional) (). httpTokens=required
Au lancement de l’instance, vous pouvez soit spécifier manuellement la valeur de la version des métadonnées, soit utiliser la valeur par défaut. Si vous spécifiez manuellement la valeur, elle remplace toutes les valeurs par défaut. Si vous choisissez de ne pas spécifier la valeur manuellement, elle sera déterminée par une combinaison de paramètres par défaut.
L'organigramme suivant montre comment la version des métadonnées d'une instance au lancement est déterminée par les paramètres aux différents niveaux de la configuration et où l'application est évaluée. Le tableau suivant présente les paramètres spécifiques à chaque niveau.
Le tableau montre comment la version des métadonnées d’une instance au lancement (indiquée par Configuration de l’instance résultante dans la colonne 4) est déterminée par les paramètres aux différents niveaux de configuration. L’ordre de priorité est de gauche à droite, la première colonne ayant la priorité la plus élevée, comme suit :
-
Colonne 1 : paramètre de lancement : représente le paramètre de l’instance que vous spécifiez manuellement au lancement.
-
Colonne 2 : Niveau de compte par défaut — Représente le paramètre du compte.
-
Colonne 3 : valeur par défaut de l’AMI — Représente le paramètre de l’AMI.
| Paramètre de lancement | Niveau du compte par défaut | AMI par défaut | Configuration des instances qui en résulte |
|---|---|---|---|
| V2 uniquement (jeton requis) | Aucune préférence | V2 uniquement | V2 uniquement |
| V2 uniquement (jeton requis) | V2 uniquement | V2 uniquement | V2 uniquement |
| V2 uniquement (jeton requis) | V1 ou V2 | V2 uniquement | V2 uniquement |
| V1 ou V2 (jeton facultatif) | Aucune préférence | V2 uniquement | V1 ou V2 |
| V1 ou V2 (jeton facultatif) | V2 uniquement | V2 uniquement | V1 ou V2 |
| V1 ou V2 (jeton facultatif) | V1 ou V2 | V2 uniquement | V1 ou V2 |
| Non défini | Aucune préférence | V2 uniquement | V2 uniquement |
| Non défini | V2 uniquement | V2 uniquement | V2 uniquement |
| Non défini | V1 ou V2 | V2 uniquement | V1 ou V2 |
| V2 uniquement (jeton requis) | Aucune préférence | null | V2 uniquement |
| V2 uniquement (jeton requis) | V2 uniquement | null | V2 uniquement |
| V2 uniquement (jeton requis) | V1 ou V2 | null | V2 uniquement |
| V1 ou V2 (jeton facultatif) | Aucune préférence | null | V1 ou V2 |
| V1 ou V2 (jeton facultatif) | V2 uniquement | null | V1 ou V2 |
| V1 ou V2 (jeton facultatif) | V1 ou V2 | null | V1 ou V2 |
| Non défini | Aucune préférence | null | V1 ou V2 |
| Non défini | V2 uniquement | null | V2 uniquement |
| Non défini | V1 ou V2 | null | V1 ou V2 |
Utiliser les clés de condition IAM pour restreindre les options de métadonnées de l’instance
Vous pouvez utiliser les clés de condition IAM dans une politique IAM ou un SCP comme suit :
-
Autoriser le lancement d’une instance uniquement si elle est configurée pour exiger l’utilisation d’IMDSv2
-
Restreindre le nombre de sauts autorisés
-
Désactiver l’accès aux métadonnées d’instance
Tâches
Note
Vous devez procéder avec précautions et effectuer des tests méticuleux avant toute modification. Notez les informations suivantes :
-
Si vous imposez l’utilisation de IMDSv2, les applications ou agents qui utilisent IMDSv1 pour l’accès aux métadonnées d’instance cesseront de fonctionner.
-
Si vous désactivez tous les accès aux métadonnées d’instance, les applications ou agents dont le fonctionnement repose sur l’accès aux métadonnées d’instance cesseront de fonctionner.
-
Pour IMDSv2, vous devez utiliser
/latest/api/tokenlors de la récupération du jeton. -
(Windows uniquement) Si votre PowerShell version est antérieure à 4.0, vous devez effectuer une mise à jour vers Windows Management Framework 4.0
pour nécessiter l'utilisation d'IMDSv2.