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
AWS Secrets Manager hilft Ihnen dabei, 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, und bietet eine native Integration mit Amazon Relational Database Service (AmazonRDS), Amazon Redshift und Amazon DocumentDB. Benutzer und Anwendungen rufen Geheimnisse ab, indem sie Secrets Manager aufrufen. Dadurch entfällt die NotwendigkeitAPIs, 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. NETFramework-Anwendungen
-
Ein aktiver AWS-Konto
-
Microsoft Visual Studio
, installiert -
AWS Command Line Interface (AWS CLI) Version 2, installiert und konfiguriert für den Zugriff auf Ihre AWS-Konto (siehe Anweisungen)
-
AWS Toolkit for Visual Studio, konfiguriert (siehe Anweisungen)
-
Ein Geheimnis, das mit der Secrets Manager-Konsole oder dem AWS CLI (siehe Anweisungen) erstellt und abgerufen wurde
Beispiel
Um über Secrets Manager auf Secrets Manager zuzugreifen, finden Sie imASP. NETKernweb API (. NET6):
-
Fügen Sie das folgende NuGet Paket dem hinzuASP. NETKernwebAPI.
AWSSDK.SecretsManager.Caching
-
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) );
-
-
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.
Anmerkung
secretName
bezieht sich auf den Namen oder Amazon-Ressourcennamen (ARN) des Geheimnisses. Nachdem ein Secret erstellt wurde, kann dieser Wert von der Secrets Manager Manager-Konsole abgerufen werden. Sie solltensecretName
dynamisch oder von Umgebungsvariablen aus aufrufen. Kodieren Sie diesen Wert in Produktionsumgebungen nicht fest. -