

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.

# Rôles IAM pour Amazon EC2
<a name="iam-roles-for-amazon-ec2"></a>

Les applications doivent signer leurs demandes d'API avec des AWS informations d'identification. Par conséquent, si vous êtes un développeur d’applications, vous avez besoin d’une stratégie pour gérer les informations d’identification de vos applications qui s’exécutent sur les instances EC2. Par exemple, vous pouvez distribuer en toute sécurité vos informations d’identification AWS aux instances, en permettant ainsi aux applications de ces instances d’utiliser vos informations d’identification pour signer des demandes, tout en les protégeant des autres utilisateurs. Cependant, il est difficile de distribuer en toute sécurité les informations d'identification à chaque instance, en particulier celles AWS créées en votre nom, telles que les instances Spot ou les instances de groupes Auto Scaling. Vous devez également être en mesure de mettre à jour les informations d'identification sur chaque instance lorsque vous effectuez une rotation de vos AWS informations d'identification.

Nous avons conçu les rôles IAM de telle sorte que vos applications puissent créer des demandes d’API en toute sécurité depuis vos instances, sans requérir que vous gériez les informations d’identification de sécurité que les applications utilisent. Au lieu de créer et de distribuer vos AWS informations d'identification, vous pouvez déléguer l'autorisation d'effectuer des demandes d'API à l'aide des rôles IAM comme suit :

1. Créez un rôle IAM.

1. Définissez quels comptes ou AWS services peuvent assumer le rôle.

1. Définissez les actions d’API et les ressources que l’application peut utiliser en assumant le rôle.

1. Spécifiez le rôle au lancement de votre instance ou attachez-le à une instance existante.

1. Demandez à l’application d’extraire un ensemble d’informations d’identification temporaires et utilisez-les.

Par exemple, vous pouvez utiliser des rôles IAM pour accorder l’autorisation aux applications de s’exécuter sur vos instances qui ont besoin d’utiliser un compartiment dans Amazon S3. Vous pouvez spécifier des permissions pour les rôles IAM en créant une politique au format JSON. Ces politiques sont similaires à celles que vous créez pour les utilisateurs . Si vous modifiez un rôle, la modification est répercutée sur toutes les instances.

**Note**  
Les informations d’identification du rôle IAM Amazon EC2 ne sont pas soumises aux durées de session maximales configurées dans le rôle. Pour plus d’informations, consultez [Méthodes pour endosser un rôle](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html) dans le *Guide de l’utilisateur IAM*.

Lors de la création de rôles IAM, associez des politiques IAM de moindres privilèges qui restreignent l’accès aux appels d’API spécifiques requis par l’application. Pour Windows-to-Windows la communication, utilisez des groupes et des rôles Windows bien définis et bien documentés pour accorder un accès au niveau de l'application entre les instances Windows. Les groupes et les rôles permettent aux clients de définir des autorisations au niveau des applications à moindre privilège et des dossiers NTFS pour limiter l’accès aux exigences spécifiques de l’application.

Vous ne pouvez attacher qu’un rôle IAM à une instance, mais vous pouvez attacher le même rôle à de nombreuses instances. Pour plus d’informations sur la création et l’utilisation des rôles IAM, consultez [Rôles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) dans le *IAM Guide de l’utilisateur*.

Vous pouvez appliquer des autorisations au niveau des ressources à vos politiques IAM pour contrôler la possibilité pour les utilisateurs d’attacher, de remplacer ou de détacher des rôles IAM pour une instance. Pour plus d’informations, consultez [Autorisations au niveau des ressources prises en charge pour les opérations d’API Amazon EC2](iam-policies-for-amazon-ec2.md#ec2-supported-iam-actions-resources) et l’exemple suivant : [Exemple : Utiliser des rôles IAM](ExamplePolicies_EC2.md#iam-example-iam-roles).

**Topics**
+ [Profils d’instance](#ec2-instance-profile)
+ [Autorisations pour votre cas d’utilisation](#generate-policy-for-iam-role)
+ [Récupération des informations d’identification de sécurité](instance-metadata-security-credentials.md)
+ [Autorisations pour associer un rôle à une instance](permission-to-pass-iam-roles.md)
+ [Attacher un rôle à une instance](attach-iam-role.md)
+ [Rôles d’identité d’instance](#ec2-instance-identity-roles)

## Profils d’instance
<a name="ec2-instance-profile"></a>

Amazon EC2 utilise un *profil d’instance* comme conteneur d’un rôle IAM. Lorsque vous créez un rôle IAM à l’aide de la console IAM, celle-ci crée automatiquement un profil d’instance et lui attribue le même nom qu’au rôle auquel il correspond. Si vous utilisez la console Amazon EC2 pour lancer une instance avec un rôle IAM ou pour attacher un rôle IAM à une instance, vous devez choisir le rôle en vous basant sur une liste de noms de profils d’instance. 

Si vous utilisez l' AWS CLI API ou un AWS SDK pour créer un rôle, vous créez le rôle et le profil d'instance en tant qu'actions distinctes, avec des noms potentiellement différents. Si vous utilisez ensuite l' AWS CLI API ou un AWS SDK pour lancer une instance avec un rôle IAM ou pour attacher un rôle IAM à une instance, spécifiez le nom du profil d'instance. 

Un profil d’instance ne peut contenir qu’un seul rôle IAM. Vous pouvez inclure un rôle IAM dans plusieurs profils d’instance.

Pour mettre à jour les autorisations d’une instance, remplacez son profil d’instance. Nous vous déconseillons de supprimer un rôle d’un profil d’instance, car cette modification peut prendre jusqu’à une heure avant de prendre effet.

Pour plus d’informations, consultez la section [Profils d’instance](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html) dans le *Guide de l’utilisateur IAM*.

## Autorisations pour votre cas d’utilisation
<a name="generate-policy-for-iam-role"></a>

Lorsque vous créez un rôle IAM pour vos applications, vous pouvez parfois accorder plus d’autorisations que nécessaire. Avant de lancer votre application dans votre environnement de production, vous pouvez générer une politique IAM basée sur l’activité d’accès pour un rôle IAM. IAM Access Analyzer examine vos AWS CloudTrail journaux et génère un modèle de politique contenant les autorisations utilisées par le rôle dans la plage de dates que vous avez spécifiée. Vous pouvez utiliser le modèle pour créer une politique gérée avec des autorisations affinées, puis l’attacher au rôle IAM. Ainsi, vous n'accordez que les autorisations dont le rôle a besoin pour interagir avec les AWS ressources correspondant à votre cas d'utilisation spécifique. Cela vous permet de mieux respecter la bonne pratique qui consiste à [appliquer le principe du moindre privilège](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege). Pour plus d’informations, consultez la section [Génération de politiques de l’analyseur d’accès IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-generation.html) dans le *Guide de l’utilisateur IAM*.

# Extraire les informations d’identification de sécurité à partir des métadonnées d’instance
<a name="instance-metadata-security-credentials"></a>

Une application de l’instance extrait les informations d’identification de sécurité fournies par le rôle à partir de l’élément `iam/security-credentials/`*nom-rôle* des métadonnées d’instance. L’application reçoit les autorisations pour les actions et les ressources que vous avez définies pour le rôle via les informations d’identification de sécurité associées au rôle. Ces informations de sécurité sont temporaires et nous les faisons tourner automatiquement. Nous rendons disponibles de nouvelles informations d’identification au moins cinq minutes avant l’expiration des anciennes informations d’identification.

Pour obtenir plus d’informations sur les métadonnées d’instance, consultez [Utiliser les métadonnées des instances pour gérer votre instance EC2](ec2-instance-metadata.md).

**Avertissement**  
Si vous utilisez des services qui emploient les métadonnées d’instance avec les rôles IAM, assurez-vous de ne pas exposer vos informations d’identification quand les services effectuent des appels HTTP en votre nom. Les types de services susceptibles d'exposer vos informations d'identification incluent les proxys HTTP, les services de HTML/CSS validation et les processeurs XML qui prennent en charge l'inclusion XML.

Pour vos charges de travail Amazon EC2, nous vous recommandons de récupérer les informations d’identification de session en utilisant la méthode décrite ci-dessous. Ces informations d’identification devraient permettre à votre charge de travail d’effectuer des requêtes d’API AWS , sans avoir besoin d’utiliser `sts:AssumeRole` pour assumer le rôle déjà associé à l’instance. À moins que vous ne deviez transmettre des balises de session pour le contrôle d’accès par attributs (ABAC) ou adopter une politique de session pour restreindre davantage les autorisations du rôle, ces appels de prise en charge de rôle sont inutiles, car ils créent un nouveau jeu des mêmes informations d’identification de session de rôle temporaire.

Si votre charge de travail utilise un rôle pour s’assumer elle-même, vous devez créer une politique de confiance qui autorise explicitement ce rôle à s’assumer lui-même. Si vous ne créez pas la politique de confiance, vous obtenez une erreur `AccessDenied`. Pour de plus amples informations, veuillez consulter la section [Modification d’une politique d’approbation de rôle](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_update-role-trust-policy.html) dans le *Guide de l’utilisateur IAM*.

------
#### [ IMDSv2 ]

**Linux**  
Exécutez la commande suivante depuis votre instance Linux pour récupérer les informations d’identification de sécurité d’un rôle IAM.

```
TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \
    && curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/iam/security-credentials/role-name
```

**Windows**  
Exécutez l’applet de commande suivante à partir de votre instance Windows pour récupérer les informations d’identification de sécurité d’un rôle IAM.

```
[string]$token = Invoke-RestMethod `
    -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} `
    -Method PUT -Uri http://169.254.169.254/latest/api/token
```

```
Invoke-RestMethod `
    -Headers @{"X-aws-ec2-metadata-token" = $token} `
    -Method GET -Uri http://169.254.169.254/latest/meta-data/iam/security-credentials/role-name
```

------
#### [ IMDSv1 ]

**Linux**  
Exécutez la commande suivante depuis votre instance Linux pour récupérer les informations d’identification de sécurité d’un rôle IAM.

```
curl http://169.254.169.254/latest/meta-data/iam/security-credentials/role-name
```

**Windows**  
Exécutez l’applet de commande suivante à partir de votre instance Windows pour récupérer les informations d’identification de sécurité d’un rôle IAM.

```
Invoke-RestMethod -uri http://169.254.169.254/latest/meta-data/iam/security-credentials/role-name
```

------

Voici un exemple de sortie. Si vous ne parvenez pas à récupérer les informations d’identification de sécurité, consultez la section [Je ne peux pas accéder aux informations d’identification de sécurité temporaires sur mon instance EC2](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_iam-ec2.html#troubleshoot_iam-ec2_no-keys) dans le guide de l’*utilisateur IAM*.

```
{
  "Code" : "Success",
  "LastUpdated" : "2012-04-26T16:39:16Z",
  "Type" : "AWS-HMAC",
  "AccessKeyId" : "ASIAIOSFODNN7EXAMPLE",
  "SecretAccessKey" : "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
  "Token" : "token",
  "Expiration" : "2017-05-17T15:09:54Z"
}
```

Pour les applications et PowerShell les commandes Tools for Windows qui s'exécutent sur l'instance, il n'est pas nécessaire d'obtenir explicitement les informations d'identification de sécurité temporaires : AWS SDKs et Tools for Windows obtiennent PowerShell automatiquement les informations d'identification auprès du service de métadonnées d'instance EC2 et les utilisent. AWS CLI AWS CLI Pour effectuer un appel en dehors de l’instance à l’aide d’informations d’identification de sécurité temporaires (par exemple, pour tester les politiques IAM), vous devez fournir la clé d’accès, la clé secrète et le jeton de session. Pour plus d'informations, consultez la section [Utilisation d'informations d'identification de sécurité temporaires pour demander l'accès aux AWS ressources](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html) dans le *guide de l'utilisateur IAM*.

# Accorder des autorisations pour associer un rôle IAM à une instance
<a name="permission-to-pass-iam-roles"></a>

Vos identités Compte AWS, telles que les utilisateurs IAM, doivent disposer d'autorisations spécifiques pour lancer une instance Amazon EC2 avec un rôle IAM, attacher un rôle IAM à une instance, remplacer le rôle IAM par une instance ou détacher un rôle IAM d'une instance. Vous devez accorder l’autorisation d’utiliser les actions d’API suivantes selon les besoins :
+ `iam:PassRole`
+ `ec2:AssociateIamInstanceProfile`
+ `ec2:DisassociateIamInstanceProfile`
+ `ec2:ReplaceIamInstanceProfileAssociation`

**Note**  
Si vous spécifiez la ressource pour `iam:PassRole` comme `*`, cela accordera l’accès pour transmettre n’importe lequel de vos rôles IAM à une instance. Pour suivre la meilleure pratique du [moindre privilège](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege), spécifiez les ARNs rôles IAM spécifiques avec`iam:PassRole`, comme indiqué dans l'exemple de politique ci-dessous.

**Exemple de politique d’accès programmatique**  
La politique IAM suivante autorise le lancement d'instances dotées d'un rôle IAM, l'attachement d'un rôle IAM à une instance ou le remplacement du rôle IAM par une instance à l'aide de l'API ou de l'API AWS CLI Amazon EC2.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
         "ec2:RunInstances",
         "ec2:AssociateIamInstanceProfile",
         "ec2:DisassociateIamInstanceProfile",
         "ec2:ReplaceIamInstanceProfileAssociation"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": "iam:PassRole",
      "Resource": "arn:aws:iam::123456789012:role/DevTeam*"
    }
  ]
}
```

------

**Exigence supplémentaire pour l’accès à la console**  
Pour accorder des autorisations pour effectuer les mêmes tâches à l’aide de la console Amazon EC2, vous devez aussi inclure l’action d’`iam:ListInstanceProfiles`API.

# Attacher un rôle IAM à une instance
<a name="attach-iam-role"></a>

Vous pouvez créer un rôle IAM et l’attacher à une instance pendant ou après le lancement. Vous pouvez aussi remplacer ou détacher des rôles IAM.

**Création et attachement d'un rôle IAM lors du lancement de l'instance (recommandé)**

1. Lors du lancement de l'instance EC2, développez les **détails avancés**.

1. Dans la section **Profil d'instance IAM**, choisissez **Create new IAM role**.

1. Un formulaire de création de rôle intégré s'ouvre, vous permettant de :
   + Spécifiez **le nom du rôle** (par exemple,`EC2-S3-Access-Role`)
   + Définissez les autorisations en sélectionnant des politiques AWS gérées ou en créant des politiques personnalisées pour votre instance

     Par exemple, pour accorder l'accès à S3, sélectionnez la politique `AmazonS3ReadOnlyAccess` gérée
   + Passez en revue la politique de confiance qui `ec2.amazonaws.com` permet d'assumer le rôle
   + Ajouter des balises facultatives pour les métadonnées

1. Choisissez **Créer un rôle**.

   Le rôle nouvellement créé est automatiquement sélectionné et sera attaché à votre instance via un profil d'instance lors du lancement de l'instance.

**Note**  
Lorsque vous créez un rôle à l'aide de la console lors du lancement de l'instance, un profil d'instance portant le même nom que le rôle est automatiquement créé. Le profil d'instance est un conteneur qui transmet les informations du rôle IAM à l'instance lors du lancement.

**Important**  
Vous ne pouvez attacher qu’un rôle IAM à une instance, mais vous pouvez attacher le même rôle à de nombreuses instances.
Associez les politiques IAM du moindre privilège qui limitent l'accès aux appels d'API spécifiques requis par l'application.

Pour plus d’informations sur la création et l’utilisation des rôles IAM, consultez [Rôles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) dans le *IAM Guide de l’utilisateur*.

**Associer un rôle IAM existant lors du lancement de l'instance**  
Pour associer un rôle IAM existant à une instance lors du lancement à l'aide de la console Amazon EC2, consultez la section Détails avancés**.** Pour le **profil d'instance IAM**, sélectionnez le rôle IAM dans la liste déroulante.

**Note**  
Si vous avez créé votre rôle IAM à l’aide de la console IAM, le profil d’instance a été créé pour vous et porte le même nom que le rôle. Si vous avez créé votre rôle IAM à l' AWS CLI aide de l'API ou d'un AWS SDK, vous avez peut-être donné à votre profil d'instance un nom différent de celui du rôle.

Vous pouvez attacher un rôle IAM à une instance en cours d’exécution ou arrêtée. Si un rôle IAM est déjà attaché à l’instance, vous devez le remplacer par le nouveau rôle IAM.

------
#### [ Console ]<a name="attach-iam-role-console"></a>

**Pour attacher un rôle IAM à une instance**

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le panneau de navigation, choisissez **Instances**.

1. Sélectionnez l’instance.

1. Choisissez **Actions**, **Security (Sécurité)**, **Modify IAM role (Modifier le rôle IAM)**.

1. Pour le **rôle IAM**, sélectionnez le profil d’instance IAM.

1. Choisissez **Mettre le rôle IAM à jour**.

------
#### [ AWS CLI ]
<a name="attach-iam-role-instance-cli"></a>
**Pour attacher un rôle IAM à une instance**  
Utilisez la [associate-iam-instance-profile](https://docs.aws.amazon.com/cli/latest/reference/ec2/associate-iam-instance-profile.html)commande pour associer le rôle IAM à l'instance. Lorsque vous spécifiez le profil d’instance, vous pouvez utiliser soit l’Amazon Resource Name (ARN) du profil d’instance, soit son nom.

```
aws ec2 associate-iam-instance-profile \
    --instance-id i-1234567890abcdef0 \
    --iam-instance-profile Name="TestRole-1"
```

------
#### [ PowerShell ]

**Pour attacher un rôle IAM à une instance**  
Utilisez l’applet de commande [Register-EC2IamInstanceProfile](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2IamInstanceProfile.html).

```
Register-EC2IamInstanceProfile `
    -InstanceId i-1234567890abcdef0 `
    -IamInstanceProfile_Name TestRole-1
```

------

Pour remplacer le rôle IAM sur une instance à laquelle un rôle IAM est déjà associé, l’instance doit être en cours d’exécution. Vous pouvez le faire si vous souhaitez modifier le rôle IAM pour une instance sans commencer par détacher le rôle existant. Pour exemple, vous pouvez le faire pour veiller à ce que les actions d’API effectuées par les applications exécutées sur l’instance ne soient pas interrompues.

------
#### [ Console ]<a name="replace-iam-role-console"></a>

**Pour remplacer un rôle IAM pour une instance**

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le panneau de navigation, choisissez **Instances**.

1. Sélectionnez l’instance.

1. Choisissez **Actions**, **Security (Sécurité)**, **Modify IAM role (Modifier le rôle IAM)**.

1. Pour le **rôle IAM**, sélectionnez le profil d’instance IAM.

1. Choisissez **Mettre le rôle IAM à jour**.

------
#### [ AWS CLI ]<a name="replace-iam-role-cli"></a>

**Pour remplacer un rôle IAM pour une instance**

1. Si nécessaire, utilisez la commande [describe-iam-instance-profile-associations](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-iam-instance-profile-associations.html) pour obtenir l'ID de l'association.

   ```
   aws ec2 describe-iam-instance-profile-associations \
       --filters Name=instance-id,Values=i-1234567890abcdef0 \
       --query IamInstanceProfileAssociations.AssociationId
   ```

1. Utilisez la commande [replace-iam-instance-profile-association](https://docs.aws.amazon.com/cli/latest/reference/ec2/replace-iam-instance-profile-association.html). Spécifiez l’ID d’association pour le profil d’instance existant et l’ARN ou le nom du nouveau profil d’instance.

   ```
   aws ec2 replace-iam-instance-profile-association \
       --association-id iip-assoc-0044d817db6c0a4ba \
       --iam-instance-profile Name="TestRole-2"
   ```

------
#### [ PowerShell ]

**Pour remplacer un rôle IAM pour une instance**

1. Si nécessaire, utilisez l'[Get-EC2IamInstanceProfileAssociation](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2IamInstanceProfileAssociation.html)applet de commande pour obtenir l'ID d'association.

   ```
   (Get-EC2IamInstanceProfileAssociation -Filter @{Name="instance-id"; Values="i-0636508011d8e966a"}).AssociationId
   ```

1. Utilisez l’applet de commande [Set-EC2IamInstanceProfileAssociation](https://docs.aws.amazon.com/powershell/latest/reference/items/Set-EC2IamInstanceProfileAssociation.html). Spécifiez l’ID d’association pour le profil d’instance existant et l’ARN ou le nom du nouveau profil d’instance.

   ```
   Set-EC2IamInstanceProfileAssociation `
       -AssociationId iip-assoc-0044d817db6c0a4ba `
       -IamInstanceProfile_Name TestRole-2
   ```

------

Vous ne pouvez pas détacher un rôle IAM d’une instance en cours d’exécution ou arrêtée.

------
#### [ Console ]<a name="detach-iam-role-console"></a>

**Pour détacher un rôle IAM d’une instance**

1. Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Dans le panneau de navigation, choisissez **Instances**.

1. Sélectionnez l’instance.

1. Choisissez **Actions**, **Security (Sécurité)**, **Modify IAM role (Modifier le rôle IAM)**.

1. Pour **IAM role (Rôle IAM)**, choisissez **No IAM Role (Aucun rôle IAM)**.

1. Choisissez **Mettre le rôle IAM à jour**.

1. Lorsque vous êtes invité à confirmer, saisissez **Détacher**, puis sélectionnez **Détacher**.

------
#### [ AWS CLI ]<a name="detach-iam-role-cli"></a>

**Pour détacher un rôle IAM d’une instance**

1. Si nécessaire, utilisez [describe-iam-instance-profile-associations](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-iam-instance-profile-associations.html) pour obtenir l'ID d'association du profil d'instance IAM à détacher.

   ```
   aws ec2 describe-iam-instance-profile-associations \
       --filters Name=instance-id,Values=i-1234567890abcdef0 \
       --query IamInstanceProfileAssociations.AssociationId
   ```

1. Utilisez la commande [disassociate-iam-instance-profile](https://docs.aws.amazon.com/cli/latest/reference/ec2/disassociate-iam-instance-profile.html).

   ```
   aws ec2 disassociate-iam-instance-profile --association-id iip-assoc-0044d817db6c0a4ba
   ```

------
#### [ PowerShell ]

**Pour détacher un rôle IAM d’une instance**

1. Si nécessaire, utilisez-le [Get-EC2IamInstanceProfileAssociation](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2IamInstanceProfileAssociation.html)pour obtenir l'ID d'association pour le profil d'instance IAM à détacher.

   ```
   (Get-EC2IamInstanceProfileAssociation -Filter @{Name="instance-id"; Values="i-0636508011d8e966a"}).AssociationId
   ```

1. Utilisez l’applet de commande [Unregister-EC2IamInstanceProfile](https://docs.aws.amazon.com/powershell/latest/reference/items/Unregister-EC2IamInstanceProfile.html).

   ```
   Unregister-EC2IamInstanceProfile -AssociationId iip-assoc-0044d817db6c0a4ba
   ```

------

## Rôles d’identité d’instance pour les instances Amazon EC2
<a name="ec2-instance-identity-roles"></a>

Chaque instance Amazon EC2 que vous lancez est dotée d’un *rôle d’identité d’instance* qui représente son identité. Un rôle d'identité d'instance est un type de rôle IAM. AWS les services et fonctionnalités intégrés pour utiliser le rôle d'identité d'instance peuvent l'utiliser pour identifier l'instance auprès du service.

Les informations d’identification des rôles d’identité d’instance sont accessibles à partir du service des métadonnées d’instance (IMDS) à l’adresse `/identity-credentials/ec2/security-credentials/ec2-instance`. Les informations d'identification se composent d'une paire de clés d'accès AWS temporaires et d'un jeton de session. Ils sont utilisés pour signer les demandes AWS Sigv4 adressées aux AWS services qui utilisent le rôle d'identité d'instance. Les informations d’identification sont présentes dans les métadonnées de l’instance, qu’un service ou une fonctionnalité utilisant les rôles d’identité d’instance soit activé ou non sur l’instance.

Les rôles d’identité d’instance sont automatiquement créés lors du lancement d’une instance, ne font l’objet d’aucun document de politique d’approbation des rôles et ne sont soumis à aucune politique d’identité ou de ressources.

### Services pris en charge
<a name="iir-supported-services"></a>

Les AWS services suivants utilisent le rôle d'identité d'instance :
+ **Amazon EC2** – [EC2 Instance Connect](connect-linux-inst-eic.md) utilise le rôle d’identité d’instance pour mettre à jour les clés d’hôte d’une instance Linux.
+ **Amazon GuardDuty** — [GuardDuty Runtime Monitoring](https://docs.aws.amazon.com/guardduty/latest/ug/runtime-monitoring.html) utilise le rôle d'identité de l'instance pour permettre à l'agent d'exécution d'envoyer des données télémétriques de sécurité au point de terminaison du VPC GuardDuty .
+ **AWS Lambda**— Les [instances gérées Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-managed-instances.html) utilisent le rôle d'identité d'instance pour les hooks du cycle de vie, la télémétrie et la distribution d'artefacts.
+ **AWS Security Token Service (AWS STS)** — Les informations d'identification du rôle d'identité de l'instance peuvent être utilisées avec l' AWS STS [https://docs.aws.amazon.com/STS/latest/APIReference/API_GetCallerIdentity.html](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetCallerIdentity.html)action.
+ **AWS Systems Manager**— Lorsque vous utilisez [la configuration de gestion d'hôte par défaut](https://docs.aws.amazon.com/systems-manager/latest/userguide/fleet-manager-default-host-management-configuration.html), AWS Systems Manager utilise l'identité fournie par le rôle d'identité d'instance pour enregistrer les instances EC2. Après avoir identifié votre instance, Systems Manager peut transmettre votre rôle `AWSSystemsManagerDefaultEC2InstanceManagementRole` IAM à votre instance.

Les rôles d'identité d'instance ne peuvent pas être utilisés avec d'autres AWS services ou fonctionnalités car ils ne sont pas intégrés aux rôles d'identité d'instance.

### ARN des rôles d’identité d’instance
<a name="iir-arn"></a>

L’ARN du rôle d’identité d’instance a le format suivant :

```
arn:aws-partition:iam::account-number:assumed-role/aws:ec2-instance/instance-id
```

Par exemple :

```
arn:aws:iam::0123456789012:assumed-role/aws:ec2-instance/i-1234567890abcdef0
```

Pour plus d'informations ARNs, consultez [Amazon Resource Names (ARNs)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) dans le *guide de l'utilisateur IAM*.