Utilisation du SDK Store (Windows uniquement) - AWS SDK for .NET

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 du SDK Store (Windows uniquement)

(Assurez-vous de consulter les mises en garde et les directives importantes.)

Sous Windows, le SDK Store est un autre endroit où vous pouvez créer des profils et stocker des informations d'identification chiffrées pour votre AWS SDK for .NET application. Il est situé dans%USERPROFILE%\AppData\Local\AWSToolkit\RegisteredAccounts.json. Vous pouvez utiliser le SDK Store pendant le développement comme alternative au fichier d'AWSinformations d'identification partagé.

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.

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 Other ways to authenticate dans le manuel AWS SDKs and Tools Reference Guide.

Pour les bonnes pratiques en matière de sécurité, utilisez AWS IAM Identity Center comme décrit dans Configurer l'authentification du SDK.

Informations générales

Le SDK Store offre les avantages suivants :

  • Les informations d'identification du SDK Store sont cryptées et le SDK Store se trouve dans le répertoire personnel de l'utilisateur. Cela limite le risque d'exposition accidentelle de vos informations d'identification.

  • Le SDK Store fournit également des informations d'identification aux AWS Tools for Windows PowerShellAWS Toolkit for Visual Studioet.

Les profils SDK Store sont spécifiques à un utilisateur spécifique sur un hôte donné. Vous ne pouvez pas les copier vers d'autres hôtes ou d'autres utilisateurs. Cela signifie que vous ne pouvez pas réutiliser les profils SDK Store présents sur votre machine de développement pour d'autres hôtes ou machines de développement. Cela signifie également que vous ne pouvez pas utiliser les profils SDK Store dans les applications de production.

Vous pouvez gérer les profils dans le SDK Store de la manière suivante :

Exemples de gestion de profils

Les exemples suivants vous montrent comment créer et mettre à jour par programmation un profil dans le SDK Store.

Création d'un profil par programmation

Cet exemple montre comment créer un profil et l'enregistrer dans le SDK Store par programmation. Il utilise les classes suivantes de l'Amazon.Runtime. CredentialManagementnamespace : CredentialProfileOptionsCredentialProfile, et CredentialsFileNetSDK.

using Amazon.Runtime.CredentialManagement; ... // Do not include credentials in your code. WriteProfile("my_new_profile", SecurelyStoredKeyID, SecurelyStoredSecretAccessKey); ... void WriteProfile(string profileName, string keyId, string secret) { Console.WriteLine($"Create the [{profileName}] profile..."); var options = new CredentialProfileOptions { AccessKey = keyId, SecretKey = secret }; var profile = new CredentialProfile(profileName, options); var netSdkStore = new NetSDKCredentialsFile(); netSdkStore.RegisterProfile(profile); }
Avertissement

Un tel code ne devrait généralement pas figurer dans votre application. S'il est inclus dans votre application, prenez les précautions nécessaires pour vous assurer que les clés en texte brut ne soient pas visibles dans le code, sur le réseau ou même dans la mémoire de l'ordinateur.

Le profil créé par cet exemple est le suivant.

"[generated GUID]" : { "AWSAccessKey" : "01000000D08...[etc., encrypted access key ID]", "AWSSecretKey" : "01000000D08...[etc., encrypted secret access key]", "ProfileType" : "AWS", "DisplayName" : "my_new_profile", }

Mettre à jour un profil existant par programmation

Cet exemple montre comment mettre à jour par programmation le profil créé précédemment. Il utilise les classes suivantes de l'Amazon.Runtime. CredentialManagementnamespace : CredentialProfileet CredentialsFileNetSDK. Il utilise également la RegionEndpointclasse de l'espace de noms Amazon.

using Amazon.Runtime.CredentialManagement; ... AddRegion("my_new_profile", RegionEndpoint.USWest2); ... void AddRegion(string profileName, RegionEndpoint region) { var netSdkStore = new NetSDKCredentialsFile(); CredentialProfile profile; if (netSdkStore.TryGetProfile(profileName, out profile)) { profile.Region = region; netSdkStore.RegisterProfile(profile); } }

Le profil mis à jour est le suivant.

"[generated GUID]" : { "AWSAccessKey" : "01000000D08...[etc., encrypted access key ID]", "AWSSecretKey" : "01000000D08...[etc., encrypted secret access key]", "ProfileType" : "AWS", "DisplayName" : "my_new_profile", "Region" : "us-west-2" }
Note

Vous pouvez également définir la AWS région dans d'autres emplacements et en utilisant d'autres méthodes. Pour plus d'informations, consultez Configuration de la AWS région.