WKLD.03 – Verwenden Sie kurzlebige Geheimnisse oder einen Geheimnisverwaltungsservice - AWS Präskriptive Leitlinien

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.

WKLD.03 – Verwenden Sie kurzlebige Geheimnisse oder einen Geheimnisverwaltungsservice

Anwendungsgeheimnisse bestehen größtenteils aus Anmeldeinformationen wie Schlüsselpaaren, Zugriffstoken, digitalen Zertifikaten und Anmeldeinformationen. Die Anwendung verwendet diese Geheimnisse, um Zugriff auf andere Services zu erhalten, von denen sie abhängig ist, z. B. eine Datenbank. Zum Schutz dieser Geheimnisse empfehlen wir, dass sie entweder kurzlebig sind (zum Zeitpunkt der Anfrage generiert und kurzlebig, z. B. bei IAM-Rollen) oder von einem Geheimnisverwaltungsservice abgerufen werden. Dadurch wird eine versehentliche Offenlegung durch weniger sichere Mechanismen, wie z. B. das Speichern statischer Konfigurationsdateien, verhindert. Dies macht es auch einfacher, Anwendungscode von der Entwicklungs- in die Produktionsumgebung zu übertragen.

Für einen Service zur Verwaltung geheimer Daten empfehlen wir die Verwendung einer Kombination aus Parameter Store, einer Funktion von AWS Systems Manager, und AWS Secrets Manager:

  • Verwenden Sie Parameter Store, um geheime Daten und andere Parameter zu verwalten, bei denen es sich um einzelne Schlüssel-Wert-Paare handelt, die auf Zeichenketten basieren, eine kurze Gesamtlänge haben und auf die häufig zugegriffen wird. Sie verwenden einen AWS Key Management Service (AWS KMS)-Schlüssel zur Verschlüsselung des Geheimnisses Das Speichern von Parametern in der Standardstufe von Parameter Store ist kostenlos. Weitere Informationen zu Parameterschichten finden Sie unter Parameterschichten verwalten (Systems-Manager-Dokumentation).

  • Verwenden Sie Secrets Manager, um Geheimnisse zu speichern, die in Dokumentform vorliegen (z. B. mehrere verwandte Schlüssel-Wert-Paare), größer als 4 KB sind (z. B. digitale Zertifikate) oder von einer automatisierten Rotation profitieren würden.

Sie können Parameter-Store-APIs verwenden, um im Secrets Manager gespeicherte Geheimnisse abzurufen. Auf diese Weise können Sie den Code in Ihrer Anwendung standardisieren, wenn Sie eine Kombination aus beiden Services verwenden.

So verwalten Sie Geheimnisse im Parameter Store
  1. Erstellen Sie einen symmetrischen AWS KMS-Schlüssel (AWS KMS-Dokumentation).

  2. Erstellen Sie einen SecureString-Parameter (Systems-Manager-Dokumentation). Geheimnisse im Parameter Store verwenden den SecureString-Datentyp.

  3. Rufen Sie in Ihrer Anwendung einen Parameter aus dem Parameterspeicher ab, indem Sie das AWS-SDK für Ihre Programmiersprache verwenden. Ein Beispiel in Java finden Sie unter GetParameter.java (AWS-Codebeispiel-Katalog).

So verwalten Sie Geheimnisse in Secrets Manager
  1. Ein Secret erstellen (Secrets-Manager-Dokumentation).

  2. Geheimnisse von AWS Secrets Manager in Code abrufen (Secrets-Manager-Dokumentation).

    Es ist wichtig Verwendung AWS Secrets Manager-clientseitiger Caching-Bibliotheken, um die Verfügbarkeit und Latenz bei der Verwendung Ihrer Geheimnisse zu verbessern zu lesen (AWS-Blogbeitrag). Die Verwendung von clientseitigen SDKs, für die bereits bewährte Methoden implementiert wurden, sollte die Verwendung und Integration von Secrets Manager beschleunigen und vereinfachen.