Die Datei mit den gemeinsam genutzten AWS Anmeldeinformationen verwenden - AWS SDK for .NET

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.

Die Datei mit den gemeinsam genutzten AWS Anmeldeinformationen verwenden

(Lesen Sie unbedingt die wichtigen Warnungen und Anleitungen zu den Zugangsdaten.)

Eine Möglichkeit, Anmeldeinformationen für Ihre Anwendungen bereitzustellen, besteht darin, Profile in der Datei mit gemeinsamen AWS Anmeldeinformationen zu erstellen und die Anmeldeinformationen dann in diesen Profilen zu speichern. Diese Datei kann von den anderen AWS SDKs verwendet werden. Sie kann auch von den AWS CLIAWS Tools for Windows PowerShell, und den AWS Toolkits für Visual Studio und VS Code JetBrainsverwendet werden.

Warnung

Um Sicherheitsrisiken zu vermeiden, sollten Sie IAM-Benutzer nicht zur Authentifizierung verwenden, wenn Sie eigens 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.

Als bewährte Sicherheitsmethode verwenden Sie AWS IAM Identity Center, wie unter Konfigurieren Sie die SDK-Authentifizierung beschrieben.

Allgemeine Informationen

Standardmäßig befindet sich die Datei mit den gemeinsamen AWS Anmeldeinformationen in dem .aws Verzeichnis in Ihrem Home-Verzeichnis und hat einen Namen, credentials d. h. ~/.aws/credentials (Linux oder macOS) oder %USERPROFILE%\.aws\credentials (Windows). Informationen zu alternativen Speicherorten finden Sie im Referenzhandbuch für AWS SDKs und Tools unter Speicherort der gemeinsam genutzten Dateien. Lesen Sie auch Zugreifen auf Anmeldeinformationen und Profile in einer Anwendung.

Die Datei mit den gemeinsam genutzten AWS Anmeldeinformationen ist eine Klartextdatei und folgt einem bestimmten Format. Informationen zum Format von AWS Anmeldeinformationsdateien finden Sie unter Format der Anmeldeinformationsdatei im Referenzhandbuch für AWS SDKs und Tools.

Sie können die Profile in der Datei mit den gemeinsamen AWS Anmeldeinformationen auf verschiedene Arten verwalten.

  • Verwenden Sie einen beliebigen Texteditor, um die Datei mit den gemeinsamen AWS Anmeldeinformationen zu erstellen und zu aktualisieren.

  • Verwenden Sie die Amazon.Runtime. CredentialManagementNamespace der AWS SDK for .NET API, wie später in diesem Thema gezeigt wird.

  • Verwenden Sie Befehle und Verfahren für die AWS Tools for PowerShellund die AWS Toolkits für Visual Studio und VS Code. JetBrains

  • Verwenden Sie AWS CLIBefehle, z. B. aws configure set aws_access_key_id undaws configure set aws_secret_access_key.

Beispiele für Profilverwaltung

Die folgenden Abschnitte zeigen Beispiele für Profile in der Datei mit gemeinsamen AWS Anmeldeinformationen. Einige der Beispiele zeigen das Ergebnis, das mit jeder der zuvor beschriebenen Methoden zur Verwaltung von Anmeldeinformationen erzielt werden kann. Andere Beispiele zeigen, wie eine bestimmte Methode verwendet wird.

Das Standardprofil

Die Datei mit gemeinsamen AWS Anmeldeinformationen hat fast immer ein Profil mit dem Namen default. Hier AWS SDK for .NET sucht der nach Anmeldeinformationen, wenn keine anderen Profile definiert sind.

Das [default] Profil sieht normalerweise in etwa wie folgt aus.

[default] aws_access_key_id = AKIAIOSFODNN7EXAMPLE aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

Erstellen Sie programmgesteuert ein Profil

In diesem Beispiel wird gezeigt, wie Sie ein Profil erstellen und es programmgesteuert in der Datei mit gemeinsamen AWS Anmeldeinformationen speichern. Es verwendet die folgenden Klassen der Amazon.Runtime. CredentialManagementNamespace: CredentialProfileOptions, und CredentialProfile. SharedCredentialsFile

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 sharedFile = new SharedCredentialsFile(); sharedFile.RegisterProfile(profile); }
Warnung

Code wie dieser sollte im Allgemeinen nicht in Ihrer Anwendung enthalten sein. Wenn Sie ihn in Ihre Anwendung aufnehmen, treffen Sie geeignete Vorkehrungen, um sicherzustellen, dass Klartext-Schlüssel unmöglich im Code, über das Netzwerk oder sogar im Computerspeicher zu sehen sind.

Im Folgenden finden Sie das Profil, das anhand dieses Beispiels erstellt wurde.

[my_new_profile] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

Aktualisieren Sie ein vorhandenes Profil programmgesteuert

Dieses Beispiel zeigt Ihnen, wie Sie das zuvor erstellte Profil programmgesteuert aktualisieren können. Es verwendet die folgenden Klassen der Amazon.Runtime. CredentialManagementNamespace: und. CredentialProfileSharedCredentialsFile Es verwendet auch die RegionEndpointKlasse des Amazon-Namespace.

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

Das Folgende ist das aktualisierte Profil.

[my_new_profile] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY 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 AWSRegion konfigurieren.