Secrets Management - Amazon Elastic Container Service

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.

Secrets Management

Geheimnisse wie API-Schlüssel und Datenbank-Anmeldeinformationen werden häufig von Anwendungen verwendet, um auf andere Systeme zuzugreifen. Sie bestehen oft aus einem Benutzernamen und einem Kennwort, einem Zertifikat oder einem API-Schlüssel. Der Zugriff auf diese Geheimnisse sollte auf bestimmte IAM-Prinzipale beschränkt werden, die IAM verwenden und zur Laufzeit in Container injiziert werden.

Geheimnisse können nahtlos in Container ausAWS Secrets Managerund Amazon EC2 Systems Manager Parameter Store. Diese Geheimnisse können in Ihrer Aufgabe wie folgt referenziert werden.

  1. Sie werden als Umgebungsvariablen referenziert, die diesecretsContainer-Definitionsparameter.

  2. Sie werden alssecretOptions, wenn Ihre Protokollierungsplattform eine Authentifizierung erfordert. Weitere Informationen finden Sie unterProtokollierung von Konfigurationsoptionen.

  3. Sie werden als Geheimnisse bezeichnet, die von Bildern gezogen werden, die dierepositoryCredentialsContainerdefinitionsparameter, wenn die Registrierung, aus der der Container gezogen wird, eine Authentifizierung erfordert. Verwenden Sie diese Methode, wenn Sie Bilder aus Docker Hub ziehen. Weitere Informationen finden Sie unterPrivate Registrierungsauthentifizierung für Aufgaben.

Recommendations

Wir empfehlen, dass Sie Folgendes tun, wenn Sie Geheimnisverwaltung einrichten.

Verwenden vonAWS Secrets Manageroder Amazon EC2 Systems Manager Parameter Store zur Speicherung von geheimen Materialien

Sie sollten API-Schlüssel, Datenbank-Anmeldeinformationen und andere geheime Materialien sicher inAWS Secrets Manageroder als verschlüsselAmazon EC2 Systems Manager verwenden. Diese Dienste sind ähnlich, da sie beide verwaltete Schlüssel-Wert-Stores sind, dieAWS KMS, um vertrauliche Daten zu verschlüsseln.AWS Secrets Managerenthält jedoch auch die Möglichkeit, Geheimnisse automatisch zu drehen, zufällige Geheimnisse zu generieren und Geheimnisse überAWS-Konten. Wenn Sie diese wichtigen Funktionen betrachten, verwenden SieAWS Secrets Managerandernfalls verschlüsselte Parameter verwenden.

Anmerkung

Aufgaben, die auf ein -Geheimnis vonAWS Secrets Manageroder Amazon EC2 Systems Manager Parameter StoreAufgabenausführungsrollemit einer Richtlinie, die Amazon ECS Zugriff auf das gewünschte Geheimnis gewährt, und, falls zutreffend, dieAWS KMSSchlüssel verwendet, um dieses Geheimnis zu verschlüsseln und zu entschlüsselt.

Wichtig

Geheimnisse, die in Aufgaben referenziert werden, werden nicht automatisch gedreht. Wenn sich der geheime Wert ändert, müssen Sie eine neue Bereitstellung erzwingen oder eine neue Aufgabe starten, um den neuesten geheimen Wert abzurufen. Weitere Informationen finden Sie in den folgenden Themen:

Abrufen von Daten aus einem verschlüsselten Amazon S3 Bucket

Da der Wert von Umgebungsvariablen versehentlich in Protokollen lecken kann und beim Ausführen vondocker inspect, sollten Sie Geheimnisse in einem verschlüsselten Amazon S3 Bucket speichern und Task-Rollen verwenden, um den Zugriff auf diese Geheimnisse einzuschränken. Wenn Sie dies tun, muss Ihre Anwendung geschrieben werden, um das Geheimnis aus dem Amazon S3 Bucket zu lesen. Detaillierte Anweisungen finden Sie unterFestlegen des standardmäßigen serverseitigen Verschlüsselungsverhaltens für Amazon-S3-Buckets.

Montieren Sie das Geheimnis mithilfe eines Seitenwagen-Containers auf ein Volume

Da ein erhöhtes Risiko eines Datenlecks mit Umgebungsvariablen besteht, sollten Sie einen Seitenwagen-Container ausführen, der Ihre Geheimnisse ausAWS Secrets ManagerSie schreiben und auf ein freigegebenes Volume schreiben. Dieser Container kann ausgeführt und beendet werden, bevor der Anwendungscontainer mithilfe vonAmazon ECS-Container-Bestellung. Wenn Sie dies tun, wird der Anwendungscontainer anschließend das Volume mounten, auf dem das Geheimnis geschrieben wurde. Wie bei der Amazon S3-Bucket-Methode muss Ihre Anwendung geschrieben werden, um das Geheimnis vom freigegebenen Volume zu lesen. Da das Volume auf die Aufgabe beschränkt ist, wird das Volume automatisch gelöscht, nachdem die Aufgabe beendet wurde. Ein Beispiel für einen Seitenwagen-Container finden Sie imaws-secret-sidecar-injektor-Projekt.

Anmerkung

Auf Amazon EC2 kann das Volume, auf das das Geheimnis geschrieben wird, mit einemAWS KMS-verwalteter Schlüssel. InAWS Fargatewird der Datenträgerspeicher automatisch mithilfe eines vom Dienst verwalteten Schlüssels verschlüsselt.

Weitere Ressourcen