Version 4 (V4) von AWS SDK für .NET wurde veröffentlicht!
Informationen zu wichtigen Änderungen und zur Migration Ihrer Anwendungen finden Sie im Thema https://docs.aws.amazon.com/sdk-for-net/v4/developer-guide/net-dg-v4.html Migration.
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
SDK Store (nur Windows)
(Lesen Sie unbedingt die wichtigen Warnungen und Richtlinien.)
Unter Windows ist der SDK Store ein weiterer Ort, an dem Sie Profile erstellen und verschlüsselte Anmeldeinformationen für Ihre AWS SDK für .NET Anwendung speichern können. Er befindet sich in%USERPROFILE%\AppData\Local\AWSToolkit\RegisteredAccounts.json. Sie können den SDK Store während der Entwicklung als Alternative zur Datei mit den gemeinsam genutzten AWS
Anmeldeinformationen verwenden.
Warnung
Um Sicherheitsrisiken zu vermeiden, sollten Sie IAM-Benutzer nicht zur Authentifizierung verwenden, wenn Sie speziell entwickelte Software entwickeln oder mit echten Daten arbeiten. Verwenden Sie stattdessen den Verbund mit einem Identitätsanbieter wie AWS IAM Identity Center.
Anmerkung
Die Informationen in diesem Thema beziehen sich auf Situationen, in denen Sie kurz- oder langfristige Anmeldeinformationen manuell abrufen und verwalten müssen. Weitere Informationen zu kurz- und langfristigen Anmeldeinformationen finden Sie unter Andere Authentifizierungsmethoden im Referenzhandbuch für AWS SDKs und Tools.
Die besten Sicherheitspraktiken finden Sie AWS IAM Identity Center, wie unter beschriebenAuthentifizieren mit AWS.
Allgemeine Informationen
Der SDK Store bietet die folgenden Vorteile:
-
Die Anmeldeinformationen im SDK Store sind verschlüsselt und der SDK Store befindet sich im Home-Verzeichnis des Benutzers. Dadurch wird das Risiko einer versehentlichen Offenlegung Ihrer Anmeldeinformationen begrenzt.
-
Der SDK Store stellt auch Anmeldeinformationen für den AWS Tools for Windows PowerShell und den AWS Toolkit for Visual Studio bereit.
SDK Store-Profile sind spezifisch für einen bestimmten Benutzer auf einem bestimmten Host. Sie können sie nicht auf andere Hosts oder andere Benutzer kopieren. Das bedeutet, dass Sie SDK Store-Profile, die sich auf Ihrem Entwicklungscomputer befinden, nicht für andere Hosts oder Entwicklercomputer wiederverwenden können. Dies bedeutet auch, dass Sie SDK Store-Profile nicht in Produktionsanwendungen verwenden können.
Sie können die Profile im SDK Store auf folgende Weise verwalten:
-
Verwenden Sie die grafische Benutzeroberfläche (GUI) im AWS Toolkit for Visual Studio.
-
Verwenden Sie den Amazon.Runtime.CredentialManagement Namespace der AWS SDK für .NET API, wie weiter unten in diesem Thema gezeigt.
-
Verwenden Sie Befehle aus AWS Tools for Windows PowerShell; zum Beispiel
Set-AWSCredentialundRemove-AWSCredentialProfile.
Beispiele für die Profilverwaltung
Die folgenden Beispiele zeigen, wie Sie ein Profil im SDK Store programmgesteuert erstellen und aktualisieren.
Erstellen Sie ein Profil programmgesteuert
Dieses Beispiel zeigt Ihnen, wie Sie ein Profil erstellen und es programmgesteuert im SDK Store speichern. Es verwendet die folgenden Klassen des Amazon.Runtime.CredentialManagement Namespaces: CredentialProfileOptions, und CredentialProfile. NetSDKCredentialsFile
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); }
Warnung
Code wie dieser sollte im Allgemeinen nicht in Ihrer Anwendung enthalten sein. Wenn er in Ihrer Anwendung enthalten ist, treffen Sie geeignete Vorkehrungen, um sicherzustellen, dass Klartextschlüssel unmöglich im Code, über das Netzwerk oder sogar im Computerspeicher sichtbar sind.
Das Folgende ist das Profil, das mit diesem Beispiel erstellt wurde.
"[generated GUID]" : { "AWSAccessKey" : "01000000D08...[etc., encrypted access key ID]", "AWSSecretKey" : "01000000D08...[etc., encrypted secret access key]", "ProfileType" : "AWS", "DisplayName" : "my_new_profile", }
Aktualisieren Sie ein vorhandenes Profil programmgesteuert
Dieses Beispiel zeigt, wie Sie das zuvor erstellte Profil programmgesteuert aktualisieren. Es verwendet die folgenden Klassen des Amazon.Runtime.CredentialManagement Namespaces: und. CredentialProfile NetSDKCredentialsFile Es verwendet auch die RegionEndpoint Klasse des https://docs.aws.amazon.com/sdkfornet/v4/apidocs/items/Amazon/N.html Amazon-Namespaces.
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); } }
Das Folgende ist das aktualisierte Profil.
"[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" }
Anmerkung
Sie können die AWS Region auch an anderen Orten und mit anderen Methoden festlegen. Weitere Informationen finden Sie unter Festlegung der AWS Region für AWS SDK für .NET.
So verwendet Ihre Anwendung Profile aus dem SDK Store
-
Automatische Auflösung: Unter Windows überprüft das SDK zuerst den SDK Store, wenn profilbasierte Anmeldeinformationen aufgelöst werden. Legen Sie einen Profilnamen über
AWSConfigs.AWSProfileNameoder dieAWS_PROFILEUmgebungsvariable fest, oder verlassen Sie sich auf das[default]Profil. Weitere Informationen finden Sie unter Auflösung von Anmeldeinformationen und Profilen. -
Expliziter Zugriff im Code: Wird verwendet
CredentialProfileStoreChain, um ein Profil zu laden und seine Anmeldeinformationen an einen Service-Client zu übergeben. Weitere Informationen finden Sie unter Rufen Sie die Anmeldeinformationen aus dem SDK-Store oder der Datei mit den gemeinsam genutzten AWS Anmeldeinformationen ab.