

La version 5 (V5) du Outils AWS pour PowerShell est sortie \$1

Pour plus d'informations sur les modifications majeures et la migration de vos applications, consultez la [rubrique relative à la migration](https://docs.aws.amazon.com/powershell/v5/userguide/migrating-v5.html).

 [https://docs.aws.amazon.com/powershell/v5/userguide/migrating-v5.html](https://docs.aws.amazon.com/powershell/v5/userguide/migrating-v5.html)

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.

# Informations d'identification partagées dans Outils AWS pour PowerShell
<a name="shared-credentials-in-aws-powershell"></a>

Les outils pour Windows PowerShell prennent en charge l'utilisation du fichier d'informations d'identification AWS partagé, de la même manière que le fichier AWS CLI et les autres AWS SDKs. Les outils pour Windows prennent PowerShell désormais en charge la lecture et l'écriture de `basic` profils d'`assume role`identification à la fois dans le fichier d'informations d'identification .NET et dans le fichier d'informations d'identification AWS partagé. `session` Cette fonctionnalité est activée par un nouvel espace de noms `Amazon.Runtime.CredentialManagement`.

**Avertissement**  
Afin d’éviter les risques de sécurité, n’employez pas les utilisateurs IAM pour l’authentification lorsque vous développez des logiciels spécialisés ou lorsque vous travaillez avec des données réelles. Préférez la fédération avec un fournisseur d’identité tel que [AWS IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html).

**Note**  
Les informations contenues dans cette rubrique s’appliquent à des situations où vous devez obtenir et gérer manuellement des informations d'identification à court ou à long terme. Pour plus d'informations sur les informations d'identification à court et à long terme, consultez la section [Autres méthodes d'authentification](https://docs.aws.amazon.com/sdkref/latest/guide/access-users.html) dans le *guide de référence des outils AWS SDKs et*.  
Pour les meilleures pratiques de sécurité, utilisez AWS IAM Identity Center, comme décrit dans[Authentification avec AWS](creds-idc.md).

[https://docs.aws.amazon.com/powershell/v5/reference/items/New-AWSCredential.html](https://docs.aws.amazon.com/powershell/v5/reference/items/New-AWSCredential.html) Dans les applets de commande des services, vous pouvez faire référence à vos profils en ajoutant le paramètre commun, `-ProfileName`.

## Utilisation d'un rôle IAM avec Outils AWS pour PowerShell
<a name="shared-credentials-assume-role"></a>

Le fichier d'informations d'identification AWS partagé permet d'autres types d'accès. Par exemple, vous pouvez accéder à vos AWS ressources en utilisant un rôle IAM au lieu des informations d'identification à long terme d'un utilisateur IAM. Pour ce faire, vous devez posséder un profil standard disposant des autorisations nécessaires pour assumer le rôle. Lorsque vous lui demandez Outils AWS pour PowerShell d'utiliser un profil spécifiant un rôle, Outils AWS pour PowerShell il recherche le profil identifié par le `SourceProfile` paramètre. Ces informations d'identification sont utilisées pour demander des informations d'identification temporaires pour le rôle spécifié par le paramètre `RoleArn`. Vous pouvez éventuellement exiger l'utilisation d'un appareil MFA (Multi-Factor Authentication, authentification multifacteur) ou d'un code `ExternalId` lorsque le rôle est assumé par un tiers.


****  

| Nom du paramètre | Description | 
| --- | --- | 
|  ExternalId  |  ID externe défini par l'utilisateur à utiliser lors de l'endossement d'un rôle, si requis par le rôle. Cela n'est généralement requis que lorsque vous déléguez l'accès à votre compte à un tiers. Le tiers doit inclure le ExternalId en tant que paramètre lorsqu'il assume le rôle assigné. Pour plus d'informations, consultez la section [Comment utiliser un identifiant externe pour accorder l'accès à vos AWS ressources à un tiers](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html) dans le *guide de l'utilisateur IAM*.  | 
|  MfaSerial  |  Numéro de série MFA à utiliser lors de l'endossement d'un rôle, si requis par le rôle. Pour de plus amples informations, veuillez consulter [Utilisation de l’Authentification multi-facteur (MFA) dans AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa.html) dans le *guide de l’utilisateur IAM*.  | 
|  RoleArn  |  ARN du rôle à endosser pour endosser les informations d'identification du rôle. Pour plus d'informations sur la création et l'utilisation des rôles IAM, consultez [Rôles IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) dans le *guide de l’utilisateur IAM*.  | 
|  SourceProfile  |  Nom du profil de la source à utiliser par les informations d'identification du rôle responsable. Les informations d'identification trouvées dans ce profil sont utilisées pour assumer le rôle spécifié par le paramètre `RoleArn`.  | 

### Configuration des profils pour assumer un rôle
<a name="setup"></a>

Voici un exemple montrant comment configurer un profil source permettant d'assumer directement un rôle IAM. 

La première commande crée un profil source référencé par le profil de rôle. La deuxième commande crée le profil de rôle sur la base duquel le rôle sera assumé. La troisième commande affiche les informations d'identification du profil de rôle.

```
PS > Set-AWSCredential -StoreAs my_source_profile -AccessKey access_key_id -SecretKey secret_key
PS > Set-AWSCredential -StoreAs my_role_profile -SourceProfile my_source_profile -RoleArn arn:aws:iam::123456789012:role/role-i-want-to-assume
PS > Get-AWSCredential -ProfileName my_role_profile

SourceCredentials                  RoleArn                                              RoleSessionName                           Options
-----------------                  -------                                              ---------------                           -------
Amazon.Runtime.BasicAWSCredentials arn:aws:iam::123456789012:role/role-i-want-to-assume aws-dotnet-sdk-session-636238288466144357 Amazon.Runtime.AssumeRoleAWSCredentialsOptions
```

Pour utiliser ce profil de rôle avec les applets de commande du PowerShell service Outils pour Windows, ajoutez le paramètre `-ProfileName` commun à la commande pour référencer le profil de rôle. L'exemple suivant utilise le profil de rôle défini dans l'exemple précédent pour accéder à l'[Get-S3Bucket](https://docs.aws.amazon.com/powershell/v5/reference/items/Get-S3Bucket.html)applet de commande. Outils AWS pour PowerShell recherche les informations d'identification`my_source_profile`, utilise ces informations d'identification pour appeler `AssumeRole` au nom de l'utilisateur, puis utilise ces informations d'identification de rôle temporaires pour appeler`Get-S3Bucket`.

```
PS > Get-S3Bucket -ProfileName my_role_profile

CreationDate           BucketName
------------           ----------
2/27/2017 8:57:53 AM   4ba3578c-f88f-4d8b-b95f-92a8858dac58-bucket1
2/27/2017 10:44:37 AM  2091a504-66a9-4d69-8981-aaef812a02c3-bucket2
```

## Utilisation des types de profil d'informations d'identification
<a name="using-the-credential-profile-types"></a>

Pour définir un type de profil d'informations d'identification, déterminez les paramètres qui fournissent les informations requises par le type de profil.


****  

| Type d'informations d'identification | Paramètres que vous devez utiliser | 
| --- | --- | 
|  **Base** Ce sont les informations d'identification à long terme d'un utilisateur IAM  |  `-AccessKey`  `-SecretKey`  | 
|  **Session** : Il s'agit des informations d'identification à court terme pour un rôle IAM que vous pouvez récupérer manuellement, par exemple en appelant directement l'STSRoleapplet de commande [Use-](https://docs.aws.amazon.com/powershell/v5/reference/items/Use-STSRole.html).  |  `-AccessKey`  `-SecretKey` `-SessionToken`  | 
|  **Rôle** : Il s'agit d'informations d'identification à court terme d'un rôle IAM que les Outils AWS pour PowerShell récupèrent pour vous.  |  `-SourceProfile` `-RoleArn`  facultatif : `-ExternalId` facultatif : `-MfaSerial`  | 

## Paramètre commun `ProfileLocation`
<a name="the-profileslocation-common-parameter"></a>

Vous pouvez utiliser `-ProfileLocation` pour écrire dans le fichier d'informations d'identification partagées, ainsi que pour demander à une applet de commande de lire à partir du fichier d'informations d'identification. L'ajout du `-ProfileLocation` paramètre contrôle si Tools for Windows PowerShell utilise le fichier d'informations d'identification partagé ou le fichier d'informations d'identification .NET. Le tableau suivant décrit le fonctionnement du paramètre dans Outils pour Windows PowerShell.


****  

| Valeur de l'emplacement du profil | Comportement de résolution du profil | 
| --- | --- | 
|  null (non défini) ou vide  |  Tout d'abord, recherchez dans le fichier d'informations d'identification .NET un profil portant le nom spécifié. Si le profil est introuvable, effectuez une recherche dans le fichier d'informations d'identification AWS partagé à l'adresse`(user's home directory)\.aws\credentials`.  | 
|  Le chemin d'accès à un fichier au format de fichier d'identification AWS partagé  |  Recherchez un profil portant le nom indiqué uniquement dans le fichier spécifié.  | 

### Enregistrement des informations d'identification dans un fichier d'informations d'identification
<a name="save-credentials-to-a-credentials-file"></a>

Pour écrire et enregistrer les informations d'identification dans l'un des deux fichiers d'informations d'identification, exécutez l'applet de commande `Set-AWSCredential`. L'exemple suivant illustre la marche à suivre. La première commande utilise `Set-AWSCredential` avec `-ProfileLocation` pour ajouter des clés d'accès et des clés secrètes à un profil spécifié par le paramètre `-ProfileName`. Dans la deuxième ligne, exécutez l'applet de commande [Get-Content](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-content) pour afficher le contenu du fichier d'informations d'identification.

```
PS > Set-AWSCredential -ProfileLocation C:\Users\auser\.aws\credentials -ProfileName basic_profile -AccessKey access_key2 -SecretKey secret_key2
PS > Get-Content C:\Users\auser\.aws\credentials

aws_access_key_id=access_key2
aws_secret_access_key=secret_key2
```

## Affichage de vos profils d'informations d'identification
<a name="showing-credential-profiles"></a>

[Exécutez l'AWSCredentialapplet de commande Get-](https://docs.aws.amazon.com/powershell/v5/reference/items/Get-AWSCredential.html) et ajoutez le `-ListProfileDetail` paramètre pour renvoyer les types et emplacements des fichiers d'identification, ainsi qu'une liste de noms de profils.

```
PS > Get-AWSCredential -ListProfileDetail

ProfileName                     StoreTypeName         ProfileLocation
-----------                     -------------         ---------------
source_profile                  NetSDKCredentialsFile
assume_role_profile             NetSDKCredentialsFile
basic_profile                   SharedCredentialsFile C:\Users\auser\.aws\credentials
```

## Suppression des profils d'informations d'identification
<a name="removing-credential-profiles"></a>

Pour supprimer les profils d'identification, exécutez la nouvelle applet de [commande AWSCredential Remove-Profile](https://docs.aws.amazon.com/powershell/v5/reference/items/Remove-AWSCredentialProfile.html). [Clear- AWSCredential](https://docs.aws.amazon.com/powershell/v5/reference/items/Clear-AWSCredential.html) est obsolète, mais reste disponible pour des raisons de rétrocompatibilité.

## Remarques importantes
<a name="important-notes"></a>

Seuls [Initialize- AWSDefault Configuration](https://docs.aws.amazon.com/powershell/v5/reference/items/Initialize-AWSDefaultConfiguration.html), [New- AWSCredential](https://docs.aws.amazon.com/powershell/v5/reference/items/New-AWSCredential.html) et [Set- AWSCredential](https://docs.aws.amazon.com/powershell/v5/reference/items/Set-AWSCredential.html) prennent en charge les paramètres des profils de rôle. Vous ne pouvez pas spécifier les paramètres de rôle directement dans une commande telle que `Get-S3Bucket -SourceProfile source_profile_name -RoleArn arn:aws:iam::999999999999:role/role_name`. Cela ne fonctionne pas, car les applets de commande de service ne prennent pas directement en charge les paramètres `SourceProfile` ou `RoleArn`. Au lieu de cela, vous devez stocker ces paramètres dans un profil, puis appeler la commande avec le paramètre `-ProfileName`.