Basculer vers un IAM rôle (Outils pour Windows PowerShell) - AWS Identity and Access Management

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.

Basculer vers un IAM rôle (Outils pour Windows PowerShell)

Un rôle spécifie un ensemble d'autorisations que vous pouvez utiliser pour accéder aux ressources AWS dont vous avez besoin. En ce sens, il est similaire à un utilisateur dans AWS Identity and Access Management (IAM). Lorsque vous vous connectez en tant qu'utilisateur, un ensemble spécifique d'autorisations vous est affecté. Toutefois, vous ne vous connectez pas au rôle mais, une fois connecté, vous pouvez endosser un rôle. Ceci annule temporairement vos autorisations utilisateur d'origine et les remplace par celles affectées au rôle. Le rôle peut être dans votre propre compte ou dans un autre Compte AWS. Pour plus d'informations sur les rôles, leurs avantages et la façon de les créer et de les configurer, consultez IAMrôles et IAMcréation de rôles.

Important

Les autorisations de votre IAM utilisateur et les rôles auxquels vous passez ne sont pas cumulables. Un seul ensemble d'autorisations peut être actif à la fois. Lorsque vous endossez un rôle, vous abandonnez temporairement vos autorisations utilisateur et travaillez avec celles qui sont affectées au rôle. Lorsque vous quittez le rôle, vos autorisations utilisateur sont automatiquement restaurées.

Cette section décrit comment changer de rôles lorsque vous utilisez la ligne de commande avec AWS Tools for Windows PowerShell.

Imaginez que vous possédez un compte dans l'environnement de développement et que vous deviez parfois travailler avec l'environnement de production en ligne de commande à l'aide des outils pour Windows PowerShell. Un ensemble d'informations d'identification de clé d'accès est déjà à votre disposition. Il peut s'agir d'une paire de clés d'accès attribuée à votre IAM utilisateur standard. Ou, si vous êtes connecté en tant qu'utilisateur fédéré, il peut s'agir de la paire de clés d'accès pour le rôle qui vous a été attribué initialement. Vous pouvez utiliser ces informations d'identification pour exécuter l'Use-STSRoleapplet ARN de commande qui transmet le nouveau rôle en tant que paramètre. Cette commande renvoie es informations d'identification de sécurité temporaires du rôle demandé. Vous pouvez ensuite utiliser ces informations d'identification dans PowerShell les commandes suivantes avec les autorisations du rôle pour accéder aux ressources en production. Bien que vous utilisiez ce rôle, vous ne pouvez pas utiliser vos autorisations d'utilisateur dans le compte Développement, car un seul ensemble d'autorisations est en vigueur à la fois.

Note

Pour des raisons de sécurité, les administrateurs peuvent consulter AWS CloudTrail les journaux pour savoir qui a effectué une action dans AWS. Votre administrateur peut exiger que vous spécifiiez une identité source ou un nom de session de rôle lorsque vous endossez le rôle. Pour plus d’informations, consultez sts:SourceIdentity et sts:RoleSessionName.

Notez que toutes les clés d'accès et tous les jetons sont des exemples uniquement et ne peuvent pas être utilisés comme indiqué. Remplacez-les par les valeurs correspondantes de votre environnement en direct.

Pour passer à un rôle (Outils pour Windows PowerShell)
  1. Ouvrez une invite de PowerShell commande et configurez le profil par défaut pour utiliser la clé d'accès de votre IAM utilisateur actuel ou de votre rôle fédéré. Si vous avez déjà utilisé les outils pour Windows PowerShell, cela est probablement déjà fait. Notez que vous ne pouvez changer de rôle que si vous êtes connecté en tant qu'IAMutilisateur, et non en tant que Utilisateur racine d'un compte AWS.

    PS C:\> Set-AWSCredentials -AccessKey AKIAIOSFODNN7EXAMPLE -SecretKey wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY -StoreAs MyMainUserProfile PS C:\> Initialize-AWSDefaults -ProfileName MyMainUserProfile -Region us-east-2

    Pour plus d'informations, consultez la section Utilisation des AWS informations d'identification dans le guide de AWS Tools for Windows PowerShell l'utilisateur.

  2. Pour récupérer les informations d'identification du nouveau rôle, exécutez la commande suivante pour passer au rôle RoleName dans le compte 123456789012. Vous obtenez le rôle ARN auprès de l'administrateur du compte qui l'a créé. La commande nécessite que vous fournissiez un nom de session également. Pour cela, n'importe quel texte fera l'affaire. La commande suivante demande les informations d'identification et capture l'objet de propriété Credentials dans l'objet des résultats renvoyés et le stocke dans la variable $Creds.

    PS C:\> $Creds = (Use-STSRole -RoleArn "arn:aws:iam::123456789012:role/RoleName" -RoleSessionName "MyRoleSessionName").Credentials

    $Creds est un objet qui contient à présent les éléments AccessKeyId, SecretAccessKey et SessionToken dont vous avez besoin dans la procédure suivante. Les exemples de commandes suivants illustrent les valeurs habituelles.

    PS C:\> $Creds.AccessKeyId AKIAIOSFODNN7EXAMPLE PS C:\> $Creds.SecretAccessKey wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY PS C:\> $Creds.SessionToken AQoDYXdzEGcaEXAMPLE2gsYULo+Im5ZEXAMPLEeYjs1M2FUIgIJx9tQqNMBEXAMPLECvSRyh0FW7jEXAMPLEW+vE/7s1HRp XviG7b+qYf4nD00EXAMPLEmj4wxS04L/uZEXAMPLECihzFB5lTYLto9dyBgSDyEXAMPLE9/g7QRUhZp4bqbEXAMPLENwGPy Oj59pFA4lNKCIkVgkREXAMPLEjlzxQ7y52gekeVEXAMPLEDiB9ST3UuysgsKdEXAMPLE1TVastU1A0SKFEXAMPLEiywCC/C s8EXAMPLEpZgOs+6hz4AP4KEXAMPLERbASP+4eZScEXAMPLEsnf87eNhyDHq6ikBQ== PS C:\> $Creds.Expiration Thursday, June 18, 2018 2:28:31 PM
  3. Pour utiliser ces informations d'identification dans n'importe quelle commande suivante, incluez-les dans le paramètre -Credential. Par exemple, la commande suivante utilise les informations d'identification du rôle et fonctionne uniquement si le rôle a l'autorisation iam:ListRoles et peut donc exécuter le cmdlet Get-IAMRoles :

    PS C:\> get-iamroles -Credential $Creds
  4. Pour revenir à vos informations d'identification d'origine, arrêtez simplement d'utiliser le -Credentials $Creds paramètre et PowerShell autorisez le retour aux informations d'identification stockées dans le profil par défaut.