SEC08-BP01 Implementieren einer sicheren Schlüsselverwaltung
Eine sichere Schlüsselverwaltung umfasst die Speicherung, Rotation, Zugriffskontrolle und Überwachung von Schlüsseldaten, die zum Schutz von Daten im Ruhezustand für Ihre Workloads erforderlich sind.
Gewünschtes Ergebnis: Ein skalierbarer, wiederholbarer und automatisierter Schlüsselverwaltungsmechanismus. Der Mechanismus sollte es ermöglichen, Zugriff mit geringsten Berechtigungen auf Schlüsseldaten zu erzwingen, und er sollte das richtige Gleichgewicht zwischen Schlüsselverfügbarkeit, Vertraulichkeit und Integrität bieten. Der Zugriff auf Schlüssel sollte überwacht werden und Schlüsseldaten sollten mit einem automatisierten Prozess rotiert werden. Schlüsseldaten sollten niemals für menschliche Identitäten zugänglich sein.
Typische Anti-Muster:
-
Personen haben Zugriff auf unverschlüsselte Schlüsseldaten.
-
Es werden benutzerdefinierte kryptografische Algorithmen erstellt.
-
Die Berechtigungen für den Zugriff auf Schlüsseldaten sind zu weit gefasst.
Vorteile der Nutzung dieser bewährten Methode: Indem Sie einen sicheren Mechanismus für die Schlüsselverwaltung für Ihre Workload einrichten, können Sie dazu beitragen, Ihre Inhalte vor unbefugtem Zugriff zu schützen. Darüber hinaus müssen möglicherweise regulatorische Anforderungen hinsichtlich der Verschlüsselung Ihrer Daten erfüllt werden. Eine effektive Schlüsselverwaltungslösung kann technische Mechanismen bereitstellen, die diesen Vorschriften zum Schutz von Schlüsseldaten entsprechen.
Risikostufe, wenn diese bewährte Methode nicht eingeführt wird: Hoch
Implementierungsleitfaden
Viele regulatorische Anforderungen und bewährte Methoden beinhalten die Verschlüsselung von Daten im Ruhezustand als grundlegende Sicherheitskontrolle. Um diese Bedingung zu erfüllen, benötigt Ihre Workload einen Mechanismus, mit dem Schlüsseldaten, die zur Verschlüsselung Ihrer Daten im Ruhezustand verwendet werden, sicher gespeichert und verwaltet werden können.
AWS bietet AWS Key Management Service (AWS KMS) zur dauerhaften, sicheren und redundanten Speicherung von AWS KMS-Schlüsseln. Viele AWS-Services lassen sich in AWS KMS integrieren
Bei der Bereitstellung von Workloads mit einer Strategie für mehrere Konten gilt es als bewährte Methode, AWS KMS-Schlüssel in dem Konto zu speichern, in dem sich auch die Workload befindet, die sie verwendet. In diesem verteilten Modell liegt die Verantwortung für die Verwaltung der AWS KMS-Schlüssel beim Anwendungsteam. In anderen Anwendungsfällen können sich Unternehmen dafür entscheiden, AWS KMS-Schlüssel in einem zentralen Konto zu speichern. Diese zentralisierte Struktur erfordert zusätzliche Richtlinien, um den kontoübergreifenden Zugriff zu ermöglichen, der benötigt wird, damit das Workload-Konto auf Schlüssel zugreifen kann, die im zentralen Konto gespeichert sind. Dieses Verfahren kann jedoch in Anwendungsfällen, in denen ein einzelner Schlüssel von mehreren AWS-Konten gemeinsam genutzt wird, besser geeignet sein.
Unabhängig davon, wo die Schlüsseldaten gespeichert werden, sollte der Zugriff auf den Schlüssel durch Schlüsselrichtlinien und IAM-Richtlinien exakt gesteuert werden. Schlüsselrichtlinien sind die wichtigste Methode, um den Zugriff auf einen AWS KMS-Schlüssel zu steuern. Darüber hinaus können AWS KMS-Schlüsselzuweisungen den Zugriff auf AWS-Services ermöglichen, mit denen Daten in Ihrem Namen ver- und entschlüsselt werden. Nehmen Sie sich Zeit, um sich mit den bewährten Methoden für die Steuerung des Zugriffs auf Ihre AWS KMS-Schlüssel vertraut zu machen.
Es hat sich bewährt, die Verwendung von Verschlüsselungsschlüsseln zu überwachen, um ungewöhnliche Zugriffsmuster zu erkennen. Vorgänge, die mit von AWS verwalteten Schlüsseln und kundenseitig verwalteten Schlüsseln ausgeführt werden, die in AWS KMS gespeichert sind, können in AWS CloudTrail protokolliert werden. Sie sollten regelmäßig überprüft werden. Besondere Aufmerksamkeit sollte dabei der Überwachung von Schlüsselzerstörungsereignissen gelten. Um die versehentliche oder böswillige Zerstörung von Schlüsseldaten zu verhindern, werden Schlüsseldaten bei Schlüsselzerstörungsereignissen nicht sofort gelöscht. Für Versuche, Schlüssel in AWS KMS zu löschen, gilt eine Wartezeit, die standardmäßig auf 30 Tage festgelegt ist. So haben Administratoren Zeit, diese Aktionen zu überprüfen und die Anforderung gegebenenfalls rückgängig zu machen.
Die meisten AWS-Services verwenden AWS KMS auf eine Weise, die für Sie transparent ist. Sie müssen lediglich entscheiden, ob Sie einen in AWS verwalteten oder einen kundenseitig verwalteten Schlüssel verwenden möchten. Wenn Ihre Workload die direkte Verwendung von AWS KMS zum Verschlüsseln oder Entschlüsseln von Daten erfordert, empfiehlt sich eine Umschlagverschlüsselung, um Ihre Daten zu schützen. Das AWS-Verschlüsselungs-SDK kann clientseitige Verschlüsselungsprimitive für Ihre Anwendungen bereitstellen, um die Umschlagverschlüsselung zu implementieren und eine Integration in AWS KMS zu ermöglichen.
Implementierungsschritte
-
Ermitteln Sie die geeigneten Schlüsselverwaltungsoptionen (von AWS verwaltet oder kundenseitig verwaltet) für den Schlüssel.
-
Aus Gründen der Benutzerfreundlichkeit bietet AWS für die meisten Services AWS-eigene und von AWS verwaltete Schlüssel. Diese stellen eine Funktion für die Verschlüsselung von Daten im Ruhezustand bereit, ohne dass Schlüsseldaten oder -richtlinien verwaltet werden müssen.
-
Wenn Sie kundenseitig verwaltete Schlüssel verwenden, sollten Sie den Standard-Schlüsselspeicher in Betracht ziehen, um das beste Gleichgewicht zwischen Agilität, Sicherheit, Datenhoheit und Verfügbarkeit zu erzielen. Andere Anwendungsfälle erfordern möglicherweise die Verwendung von benutzerdefinierten Schlüsselspeichern mit AWS CloudHSM
oder mit dem externen Schlüsselspeicher.
-
-
Gehen Sie die Liste der Services durch, die Sie für Ihre Workload verwenden, um zu verstehen, wie AWS KMS in den Service integriert wird. EC2-Instances können beispielsweise verschlüsselte EBS-Volumes verwenden, um zu überprüfen, dass die von diesen Volumes erstellten Amazon-EBS-Snapshots auch mit einem kundenseitig verwalteten Schlüssel verschlüsselt werden. So wird die versehentliche Offenlegung unverschlüsselter Snapshot-Daten verhindert.
-
Ausführliche Informationen zu den Verschlüsselungsoptionen, die ein AWS-Service bietet, finden Sie im Benutzerhandbuch oder im Entwicklerhandbuch für den Service unter dem Thema „Verschlüsselung im Ruhezustand“.
-
Implementieren Sie AWS KMS: AWS KMS erleichtert Ihnen das Erstellen und Verwalten von Schlüsseln sowie die Steuerung der Verschlüsselung in einer Vielzahl von AWS-Services und in Ihren Anwendungen.
-
Machen Sie sich mit den bewährten Methoden für die Steuerung des Zugriffs auf Ihre AWS KMS-Schlüssel vertraut.
-
Erwägen Sie die Verwendung des AWS Encryption SDK: Verwenden Sie das AWS Encryption SDK mit AWS KMS-Integration, wenn Ihre Anwendung Daten clientseitig verschlüsseln muss.
-
Aktivieren Sie IAM Access Analyzer, um automatisch zu überprüfen und benachrichtigt zu werden, wenn zu weit gefasste AWS KMS-Schlüsselrichtlinien vorhanden sind.
-
Aktivieren Sie Security Hub, um Benachrichtigungen zu erhalten, wenn falsch konfigurierte Schlüsselrichtlinien, Schlüssel mit geplanter Löschung oder Schlüssel ohne aktivierte automatische Rotation vorhanden sind.
-
Ermitteln Sie die für Ihre AWS KMS-Schlüssel geeignete Protokollierungsstufe. Da Aufrufe von AWS KMS, einschließlich schreibgeschützter Ereignisse, protokolliert werden, können die CloudTrail-Protokolle für AWS KMS sehr umfangreich werden.
-
Einige Organisationen ziehen es vor, die AWS KMS-Protokollierungsaktivitäten in einem eigenen Pfad zu separieren. Weitere Informationen finden Sie im AWS KMS-Entwicklerhandbuch im Abschnitt Protokollieren von AWS KMS-API-Aufrufen mit CloudTrail.
-
Ressourcen
Zugehörige Dokumente:
Zugehörige Videos:
Zugehörige Beispiele: