

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.

# Konfiguration AWS Secrets Manager
<a name="configure-asm"></a>

AWS Secrets Manager hilft Ihnen, die Geheimnisse zu schützen, die Sie für den Zugriff auf Ihre Anwendungen, Dienste und IT-Ressourcen benötigen. Der Service speichert, verwaltet, verschlüsselt und rotiert Datenbankanmeldedaten, API-Schlüssel und andere Geheimnisse, einschließlich OAuth Token, sicher und bietet eine native Integration mit Amazon Relational Database Service (Amazon RDS), Amazon Redshift und Amazon DocumentDB. Benutzer und Anwendungen rufen Geheimnisse ab, indem sie Secrets Manager aufrufen. Dadurch entfällt die Notwendigkeit APIs, vertrauliche Informationen im Klartext fest zu codieren. Secrets Manager bietet detaillierte Zugriffsberechtigungen und bietet einen zentralen Ort für die Überprüfung der Geheimnisrotation in Umgebungen AWS Cloud, vor Ort und in Umgebungen von Drittanbietern.

## Voraussetzungen für die Verwendung von Secrets Manager mit.NET Framework-Anwendungen
<a name="configure-asm-prereq"></a>
+ Ein aktiver AWS-Konto
+ [Microsoft Visual Studio](https://visualstudio.microsoft.com/downloads/), installiert
+ AWS Command Line Interface (AWS CLI) Version 2, installiert und konfiguriert für den Zugriff auf Ihre AWS-Konto (siehe [Anweisungen](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html))
+ AWS Toolkit for Visual Studio, konfiguriert (siehe [Anweisungen](https://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/setup.html))
+ Ein Geheimnis, das mit der Secrets Manager-Konsole oder dem AWS CLI (siehe [Anweisungen](https://docs.aws.amazon.com/secretsmanager/latest/userguide/managing-secrets.html)) erstellt und abgerufen wurde

## Beispiel
<a name="configure-asm-example"></a>

So greifen Sie über Secrets Manager in der ASP.NET Core-Web-API (.NET 6) auf Geheimnisse zu:

1. Fügen Sie der ASP.NET Core-Web-API das folgende NuGet Paket hinzu.

   ```
   AWSSDK.SecretsManager.Caching
   ```

1. Nehmen Sie in der `Program.cs` Datei die folgenden Änderungen vor.
   + Fügen Sie den `Amazon.SecretsManager` Namespace (1) hinzu.

     ```
     using Amazon.SecretsManager;
     ```
   + Registrieren Sie den Dienst (2).

     ```
     builder.Services.AddScoped<IAmazonSecretsManager>(x =>
           new AmazonSecretsManagerClient(RegionEndpoint.EUWest2)
        );
     ```  
![\[Änderungen an der Datei Program.cs für den Zugriff auf Secrets Manager\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/modernization-net-applications-security/images/asm-program-cs.png)

1. Um die Secrets aus Secrets Manager abzurufen, nehmen Sie die folgenden Änderungen an der Controller-Klassendatei vor (z. B.`ValuesController.cs`). 
   + Fügen Sie den Konstruktor hinzu (1).

     ```
     private readonly IAmazonSecretsManager _secretsManager;
     
     public SecretsController(IAmazonSecretsManager secretsManager)
     {
         _secretsManager = secretsManager;
     }
     ```
   + Implementieren Sie die `GetSecret` Methode (2).

     ```
     string secretName = "arn:aws:secretsmanager:eu-west-2:111122223333:secret:dev/myapp/tenant-gSj6qd";
     GetSecretValueRequest request = new GetSecretValueRequest();
     request.SecretId = secretName;
     request.VersionStage = "AWSCURRENT";
     Task<GetSecretValueResponse> response = _secretsManager.GetSecretValueAsync(request);
     return Ok(new { Secret = response.Result.SecretString });
     ```

     wobei sich *111122223333 auf die Konto-ID* bezieht.  
![\[Änderungen an der Controller-Klassendatei zum Abrufen von Geheimnissen aus Secrets Manager\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/modernization-net-applications-security/images/asm-controller-class.png)
**Anmerkung**  
`secretName`bezieht sich auf den Namen oder den Amazon-Ressourcennamen (ARN) des Geheimnisses. Nachdem ein Secret erstellt wurde, kann dieser Wert von der Secrets Manager Manager-Konsole abgerufen werden. Sie sollten `secretName` dynamisch oder von Umgebungsvariablen aus aufrufen. Kodieren Sie diesen Wert in Produktionsumgebungen nicht fest. 