

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.

# Utilisation d'un rôle IAM pour accorder des autorisations aux applications et aux scripts exécutés sur des instances de streaming WorkSpaces d'applications
<a name="using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances"></a>

Les applications et les scripts qui s'exécutent sur WorkSpaces des instances de streaming d'applications doivent inclure des AWS informations d'identification dans leurs demandes AWS d'API. Vous pouvez créer un rôle IAM pour gérer ces informations d’identification. Un rôle IAM spécifie un ensemble d'autorisations que vous pouvez utiliser pour accéder aux AWS ressources. Toutefois, ce rôle n'est pas associé de façon unique à une seule personne. Au lieu de cela, il peut être assumé par toute personne en ayant besoin.

Vous pouvez appliquer un rôle IAM à une instance de streaming d' WorkSpaces applications. Lorsque l'instance de streaming bascule vers (assume) le rôle, le rôle fournit des informations d'identification de sécurité temporaires. Votre application ou vos scripts utilisent ces informations d'identification pour effectuer des actions d'API et des tâches de gestion sur l'instance de streaming. WorkSpaces Applications gère le changement d'informations d'identification temporaires pour vous.

**Topics**
+ [Bonnes pratiques d'utilisation des rôles IAM avec des instances de streaming WorkSpaces d'applications](best-practices-for-using-iam-role-with-streaming-instances.md)
+ [Configuration d'un rôle IAM existant à utiliser avec des instances de streaming WorkSpaces d'applications](configuring-existing-iam-role-to-use-with-streaming-instances.md)
+ [Comment créer un rôle IAM à utiliser avec les instances de streaming WorkSpaces d'applications](how-to-create-iam-role-to-use-with-streaming-instances.md)
+ [Comment utiliser le rôle IAM avec des instances de streaming WorkSpaces d'applications](how-to-use-iam-role-with-streaming-instances.md)

# Bonnes pratiques d'utilisation des rôles IAM avec des instances de streaming WorkSpaces d'applications
<a name="best-practices-for-using-iam-role-with-streaming-instances"></a>

Lorsque vous utilisez des rôles IAM avec des instances de streaming d' WorkSpaces applications, nous vous recommandons de suivre les pratiques suivantes :
+ Limitez les autorisations que vous accordez aux actions et aux ressources de l' AWS API.

  Respectez le principe du moindre privilège lorsque vous créez et associez des politiques IAM aux rôles IAM associés aux instances de streaming WorkSpaces d'applications. Lorsque vous utilisez une application ou un script qui nécessite l'accès à des actions ou à des ressources d' AWS API, déterminez les actions et les ressources spécifiques requises. Ensuite, créez des politiques qui autorisent l’application ou le script à effectuer uniquement ces actions. Pour plus d’informations, consultez [Octroi du moindre privilège](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) dans le *Guide de l’utilisateur IAM*.
+ Créez un rôle IAM pour chaque ressource WorkSpaces d'applications.

  La création d'un rôle IAM unique pour chaque ressource WorkSpaces d'applications est une pratique qui respecte le principe du moindre privilège. Cela vous permet également de modifier les autorisations pour une ressource sans affecter les autres ressources.
+ Limitez les endroits où les informations d’identification peuvent être utilisées.

  Les politiques IAM vous permettent de définir les conditions dans lesquelles votre rôle IAM peut être utilisé pour accéder à une ressource. Par exemple, vous pouvez inclure des conditions pour spécifier une plage d'adresses IP d'où peuvent parvenir les requêtes. Cela permet d’éviter que les informations d’identification soient utilisées en dehors de votre environnement. Pour plus d’informations, consultez [Utiliser les conditions des stratégies pour une plus grande sécurité](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#use-policy-conditions) dans le *Guide de l’utilisateur IAM*.

# Configuration d'un rôle IAM existant à utiliser avec des instances de streaming WorkSpaces d'applications
<a name="configuring-existing-iam-role-to-use-with-streaming-instances"></a>

Cette rubrique décrit comment configurer un rôle IAM existant afin de pouvoir l’utiliser avec des instances Image Builder et des instances de streaming de flotte.

**Conditions préalables**

Le rôle IAM que vous souhaitez utiliser avec un générateur d'images d' WorkSpaces applications ou une instance de streaming de flotte doit répondre aux conditions préalables suivantes :
+ Le rôle IAM doit figurer sur le même compte Amazon Web Services que l'instance de streaming WorkSpaces Applications.
+ Le rôle IAM ne peut pas être une fonction du service.
+ La politique de relation de confiance attachée au rôle IAM doit inclure le service WorkSpaces Applications en tant que principal. Un *mandant* est une entité AWS qui peut effectuer des actions et accéder à des ressources. La stratégie doit également inclure l'action `sts:AssumeRole`. Cette configuration de politique définit WorkSpaces les applications comme une entité de confiance.

  
+ Si vous appliquez le rôle IAM à un générateur d'images, celui-ci doit exécuter une version de l'agent d' WorkSpaces applications publiée le 3 septembre 2019 ou après cette date. Si vous appliquez le rôle IAM à une flotte, celle-ci doit utiliser une image qui utilise une version de l'agent publiée à la même date ou après cette date. Pour de plus amples informations, veuillez consulter [WorkSpaces Notes de mise à jour des agents d'applications](agent-software-versions.md). 

**Pour permettre au principal du service WorkSpaces Applications d'assumer un rôle IAM existant**

Pour effectuer les étapes suivantes, vous devez vous connecter au compte en tant qu’utilisateur IAM disposant des autorisations requises pour répertorier et mettre à jour les rôles IAM. Si vous n’avez pas les autorisations requises, demandez à votre administrateur de compte Amazon Web Services d’effectuer ces étapes dans votre compte ou de vous accorder les autorisations requises.

1. Ouvrez la console IAM à l’adresse [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Dans le panneau de navigation, choisissez **Rôles**. 

1. Dans la liste des rôles de votre compte, choisissez le nom du rôle que vous souhaitez modifier.

1. Sélectionnez l'onglet **Relations d'approbation**, puis **Modifier la relation d'approbation**.

1. Sous **Document de stratégie**, vérifiez que la stratégie de relation d’approbation inclut l’action `sts:AssumeRole` pour le principal du service `appstream.amazonaws.com` :

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

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
           "Service": [
             "appstream.amazonaws.com"
           ]
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

------

1. Après avoir modifié votre politique d'approbation, choisissez **Mettre à jour la politique de confiance** pour enregistrer vos modifications. 

1. Le rôle IAM que vous avez sélectionné s'affichera dans la console WorkSpaces Applications. Ce rôle accorde des autorisations aux applications et aux scripts pour effectuer des actions d'API et des tâches de gestion sur les instances de streaming.

# Comment créer un rôle IAM à utiliser avec les instances de streaming WorkSpaces d'applications
<a name="how-to-create-iam-role-to-use-with-streaming-instances"></a>

Cette rubrique décrit comment créer un rôle IAM afin de pouvoir l’utiliser avec des instances Image Builder et des instances de streaming de flotte.

1. Ouvrez la console IAM à l’adresse [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Dans le volet de navigation, sélectionnez **Rôles**, puis **Créer un rôle**.

1. Pour **Select type of trusted entity (Sélectionner le type d’entité de confiance)**, choisissez **Service AWS **.

1. Dans la liste des AWS services, sélectionnez **WorkSpaces Applications**.

1. Sous **Sélectionnez votre cas d'utilisation**, **WorkSpaces Applications — Autorise WorkSpaces les instances d'applications à appeler AWS des services en votre nom** est déjà sélectionné. Choisissez **Suivant : Autorisations**.

1. Si possible, sélectionnez la politique à utiliser pour la politique d'autorisations ou choisissez **Create policy** (Créer une politique) pour ouvrir un nouvel onglet de navigateur et créer une nouvelle politique de bout en bout. Pour plus d’informations, consultez l’étape 4 de la procédure [Création de politiques IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-start) dans le *Guide de l’utilisateur IAM*.

   Une fois la politique créée, fermez cet onglet et revenez à l'onglet initial. Cochez la case à côté des politiques d'autorisation que vous souhaitez WorkSpaces appliquer aux applications.

1. (Facultatif) Définissez une limite d'autorisations. Il s’agit d’une fonctionnalité avancée disponible pour les fonctions de service, mais pas pour les rôles liés à un service. Pour plus d’informations, consultez [Limites d’autorisations pour les entités IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) dans le *Guide de l’utilisateur IAM*.

1. Choisissez **Suivant : Balises**. Vous pouvez éventuellement joindre des balises en tant que paires clé-valeur. Pour plus d’informations, consultez [Balisage des utilisateurs et des rôles IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html) dans le *Guide de l’utilisateur IAM*.

1. Choisissez **Suivant : Vérification**.

1. Pour **Nom du rôle**, saisissez un nom de rôle unique dans votre compte Amazon Web Services. Comme d'autres AWS ressources peuvent faire référence au rôle, vous ne pouvez pas modifier le nom du rôle une fois qu'il a été créé.

1. Pour **Description du rôle**, conservez la description du rôle par défaut ou saisissez une nouvelle description.

1. Passez en revue les informations du rôle, puis choisissez **Create role** (Créer un rôle).

# Comment utiliser le rôle IAM avec des instances de streaming WorkSpaces d'applications
<a name="how-to-use-iam-role-with-streaming-instances"></a>

Une fois que vous avez créé un rôle IAM, vous pouvez l’appliquer à une instance Image Builder ou à une instance de streaming de flotte lorsque vous lancez l’instance Image Builder ou créez une flotte. Vous pouvez également appliquer un rôle IAM à des flottes existantes. Pour plus d’informations sur la procédure d’application d’un rôle IAM lorsque vous lancez une instance Image Builder, consultez [Lancer un Image Builder pour l'installation et la configuration d'applications de streaming](tutorial-image-builder-create.md). Pour plus d’informations sur la procédure d’application d’un rôle IAM lorsque vous créez une flotte, consultez [Création d'une flotte dans Amazon WorkSpaces Applications](set-up-stacks-fleets-create.md).

Lorsque vous appliquez un rôle IAM à votre générateur d'images ou à votre instance de streaming de flotte, WorkSpaces Applications récupère les informations d'identification temporaires et crée le profil d'identification **appstream\$1machine\$1role** sur l'instance. Les informations d’identification temporaires sont valides pendant 1 heure et de nouvelles informations d’identification sont récupérées toutes les heures. Les informations d'identification précédentes n'expirent pas. Vous pouvez donc les utiliser aussi longtemps qu'elles sont valides. Vous pouvez utiliser le profil d'identification pour appeler AWS des services par programmation à l'aide de l'interface de ligne de AWS commande (AWS CLI) PowerShell, AWS des outils ou du AWS SDK dans la langue de votre choix.

Lorsque vous effectuez les appels d'API, spécifiez **appstream\$1machine\$1role** comme profil d'informations d'identification. Sinon, l'opération échoue en raison d'autorisations insuffisantes.

WorkSpaces Les applications assument le rôle spécifié pendant le provisionnement de l'instance de streaming. Dans la WorkSpaces mesure où Applications utilise l'interface Elastic Network qui est attachée à votre VPC pour les appels d' AWS API, votre application ou votre script doit attendre que l'Elastic network interface soit disponible avant de passer des appels d' AWS API. Si des appels d'API sont effectués avant que l'interface réseau Elastic soit disponible, les appels échouent.

Les exemples suivants montrent comment utiliser le profil d'informations d'identification** appstream\$1machine\$1role** pour décrire des instances de streaming (instances EC2) et créer le client Boto. Boto est le kit SDK Amazon Web Services (AWS) pour Python. 

**Décrire les instances de streaming (instances EC2) à l'aide de la CLI AWS **

```
aws ec2 describe-instances --region us-east-1 --profile appstream_machine_role
```

**Décrire les instances de streaming (instances EC2) à l'aide d' AWS outils pour PowerShell**

Vous devez utiliser AWS Tools pour PowerShell la version 3.3.563.1 ou ultérieure, avec le SDK Amazon Web Services pour .NET version 3.3.103.22 ou ultérieure. Vous pouvez télécharger le programme d'installation de AWS Tools for Windows, qui inclut AWS Tools for PowerShell et le SDK Amazon Web Services pour .NET, depuis [AWS le site Web Tools PowerShell](https://aws.amazon.com/powershell/) for.

```
Get-EC2Instance -Region us-east-1 -ProfileName appstream_machine_role
```

**Création du client Boto à l'aide du AWS SDK pour Python**

```
session = boto3.Session(profile_name='appstream_machine_role')
```