Verschlüsselung in Event Streams verwalten

Standardmäßig werden die Nachrichtennutzdaten in IBM® Event Streams for IBM Cloud® im Ruhezustand verschlüsselt, wozu ein zufällig generierter Schlüssel verwendet wird. Dieses Standardverschlüsselungsmodell bietet zwar Sicherheit für ruhende Daten, aber unter Umständen benötigen Sie weiter reichende Steuerungsmöglichkeiten. Für diese Anwendungsfälle unterstützt Event Streams die vom Kunden verwaltete Verschlüsselung mit den folgenden IBM Cloud® Schlüsselverwaltungsdiensten:

  • IBM® Key Protect for IBM Cloud® (Bring Your Own Key - BYOK) hilft Ihnen bei der Bereitstellung verschlüsselter Schlüssel für Anwendungen über IBM Cloud. Bei der Verwaltung des Lebenszyklus Ihrer Schlüssel profitieren Sie von der Gewissheit, dass Ihre Schlüssel durch FIPS 140-2 Level 3 zertifizierte Cloud-basierte Hardware-Sicherheitsmodule (HSMs) gesichert sind, die vor Datendiebstahl schützen. Weitere Informationen zur Verwendung von Key Protectfinden Sie im Lernprogramm 'Einführung'.
  • Hyper Protect Crypto Services (Keep Your Own Key - KYOK) ist ein dediziertes Single-Tenant-HSM, das von Ihnen gesteuert wird. Der Service basiert auf FIPS 140-2 Stufe 4-zertifizierter Hardware, der höchsten Sicherheitsstufe, die von Cloud-Providern der Branche angeboten wird. Beachten Sie, dass Hyper Protect Crypto Services veraltet ist.

IBM Cloud® stellt die dedizierten Schlüsselverwaltungsdienste von Hyper Protect Crypto Services auf IBM® Key Protect Dedicated um. Migrieren Sie bestehende Hyper Protect Crypto Services (HPCS) Root Keys auf IBM® Key Protect Dedicated (Single Tenant) vor dem HPCS End of Life (EOL) am 20. März 2027, um die weitere Verfügbarkeit des Dienstes sicherzustellen. Nach diesem Zeitpunkt werden alle verbleibenden Instanzen beendet. Um die weitere Verfügbarkeit und den Support des Dienstes sicherzustellen, müssen Sie alle vorhandenen HPCS-Root-Keys vor dem EOL-Datum auf IBM Key Protect Dedicated (Single Tenant) migrieren. Erfahren Sie, wie Sie Ihre Stammschlüssel migrieren.

Diese Services ermöglichen die Verwendung eines durch den Kunden bereitgestellten Schlüssels zur Steuerung der Verschlüsselung. Durch die Deaktivierung oder Löschung dieses Schlüssels können Sie jeden weiteren Zugriff auf die vom Dienst gespeicherten Daten verhindern, da sie nicht mehr entschlüsselt werden können.

Erwägen Sie die Verwendung von kundenverwalteten Schlüsseln, wenn Sie die folgenden Funktionen benötigen:

  • Verschlüsselung ruhender Daten, die durch Ihren eigenen Schlüssel gesteuert werden.
  • Explizite Kontrolle über den Lebenszyklus von gespeicherten Daten.

Vom Kunden verwaltete Schlüssel sind im Enterprise-Plan und nur in Clustern verfügbar, die nach Oktober 2019 erstellt wurden.

Das Löschen des vom Kunden verwalteten Schlüssels ist nicht wiederherstellbar und führt zum Verlust aller Daten, die in Ihrer Event Streams Instanz gespeichert sind.

Verschlüsselung auf Nachrichtenebene für Compliance

Einige behördliche Standards, wie z. B. PCI DSS, verlangen, dass sensible Nachrichtendaten (z. B. Karteninhaberdaten) während ihres gesamten Lebenszyklus verschlüsselt werden - im Ruhezustand, bei der Übertragung und bei der Verwendung.

Die Dateisysteme, die Event Streams zur Speicherung von Nachrichtendaten verwendet, sind verschlüsselt und damit vor unberechtigtem Zugriff geschützt. Da die Nachrichten jedoch die Transportschicht durchlaufen, muss Event Streams diese Dateisysteme entschlüsseln, um die Nachrichten zu verarbeiten. Dies bedeutet zwar, dass die Nutzdaten nicht durchgängig verschlüsselt werden, aber die Verschlüsselung während der Übertragung und im Ruhezustand gewährleistet einen starken Schutz während des gesamten Lebenszyklus der Nachricht, der den besten Praktiken der Branche entspricht.

Um sicherzustellen, dass sensible Daten für andere als die vorgesehenen Empfänger unlesbar bleiben, müssen die Clients die Nachricht selbst auf der Anwendungsebene verschlüsseln, bevor sie an Event Streams gesendet wird - eine Praxis, die als Verschlüsselung auf Nachrichtenebene bekannt ist.

Was nicht durch vom Kunden verwaltete Verschlüsselung abgedeckt ist

Wenn die vom Kunden verwaltete Verschlüsselungsfunktion ausgewählt wird, ist zu beachten, dass nur die Nutzdaten der Nachricht von dieser Verschlüsselung abgedeckt werden. Event Streams verschlüsselt im Ruhezustand andere Daten, die mit der Nutzung des Dienstes zusammenhängen. Allerdings werden die Daten, die nicht zu den Nutzdaten gehören, nicht mit der vom Kunden verwalteten Verschlüsselung verschlüsselt. Beispiele hierfür sind Client-Metadaten wie Themennamen, Themenkonfigurationsdaten, in der Schemaregistrierung gespeicherte Schemata und Metadaten, die im Zusammenhang mit der Konfiguration der Enterprise-Instanz gespeichert werden.

Verwenden Sie daher keine vertraulichen Informationen in solchen Clientmetadaten.

Funktionsweise der kundenverwalteten Verschlüsselung

Event Streams verwendet ein Konzept, das als Umschlagverschlüsselung bezeichnet wird, um vom Kunden verwaltete Schlüssel zu implementieren.

Die Umschlagverschlüsselung ist ein Verfahren, bei dem ein Verschlüsselungsschlüssel mit einem anderen Verschlüsselungsschlüssel verschlüsselt wird. Der Schlüssel, der zur Verschlüsselung der tatsächlichen Daten verwendet wird, wird als "Datenverschlüsselungsschlüssel" (Data Encryption Key, DEK) bezeichnet. Der DEK selbst wird nie gespeichert, sondern von einem zweiten Schlüssel umhüllt, der als Key Encryption Key (KEK) bezeichnet wird, um einen umhüllten DEK zu erstellen.

Zum Entschlüsseln der Daten muss zunächst das Wrapping des eingeschlossenen DEK aufgehoben werden, damit der DEK vorliegt. Dieser Prozess ist nur durch den Zugriff auf den KEK möglich, bei dem es sich in diesem Fall um Ihren Rootschlüssel handelt, der in Key Protect oder Hyper Protect Crypto Servicesgespeichert ist.

Eigner des KEK, den Sie als Rootschlüssel in den Hyper Protect Crypto Services oder im Key Protect-Service erstellen, sind Sie. Der Rootschlüssel (KEK) ist für den Event Streams-Service zu keiner Zeit sichtbar. Seine Speicherung, Verwaltung und Verwendung zum DEK-Wrapping und -Wrapping aufheben erfolgt vollständig innerhalb des Schlüsselmanagementservice. Wenn Sie den Schlüssel inaktivieren oder löschen, können die Daten nicht mehr entschlüsselt werden.

Kundenverwalteten Schlüssel für Event Streams aktivieren

Führen Sie die folgenden Schritte aus, um Ihre Event Streams-Instanz für die Verwendung eines kundenverwalteten Schlüssels bereitzustellen:

  1. Stellen Sie eine Instanz von Key Protect oder Hyper Protect Crypto Servicesbereit.
  2. Erstellen Sie eine Autorisierungsrichtlinie, um dem Event Streams-Service den Zugriff auf die Schlüsselmanagementserviceinstanz als Leseberechtigter zu ermöglichen. Weitere Informationen finden Sie unter Verwendung von Berechtigungen zur Gewährung des Zugriffs zwischen Diensten.
  3. Erstellen Sie einen Rootschlüssel oder importieren Sie einen Rootschlüssel in Ihre Schlüsselmanagementserviceinstanz.
  4. Rufen Sie den Cloud Resource Name (CRN) des Schlüssels ab, indem Sie die Option View CRN in der GUI der Schlüsselverwaltungsdienstinstanz verwenden.
  5. Stellen Sie eine Instanz von Event Streams bereit. Diese Funktion wird nur im Plan "Enterprise" unterstützt.

Bei Bereitstellung über die IBM Cloud®-Konsole wählen Sie eine Schlüsselmanagementserviceinstanz und anschließend einen Rootschlüssel in der Instanz aus.

Verwenden Sie bei einer Bereitstellung über die Befehlszeilenschnittstelle den folgenden Befehl:

ibmcloud resource service-instance-create EVENT-STREAMS-INSTANCE-NAME messagehub ibm.message.hub.enterprise.3nodes.2tb REGION -p '{"kms_key_crn":"KMS_KEY_CRN"}'

Ein bestehender Cluster ohne einen vom Kunden verwalteten Schlüssel kann nicht aktualisiert werden, da dies ein destruktiver Vorgang ist, der zum Verlust aller Nachrichten- und Themendefinitionen führt. Sie müssen Ihre Instanz löschen und mit einem Verschlüsselungsschlüssel neu erstellen.

Kundenverwalteten Schlüssel verwenden

Nachdem eine Instanz von Event Streams mit einem vom Kunden verwalteten Schlüssel versehen wurde, stehen die folgenden zusätzlichen Funktionen zur Verfügung.

Zugriff auf Daten verhindern

Um den Zugriff vorübergehend zu verhindern, deaktivieren Sie Ihren Root-Schlüssel. Event Streams kann dann nicht mehr auf die Daten zugreifen, weil kein Zugriff auf den Schlüssel mehr möglich ist.

Um den Zugriff dauerhaft zu entfernen, löschen Sie den Schlüssel. Sie müssen jedoch äußerste Vorsicht walten lassen, weil diese Operation nicht rückgängig gemacht werden kann. Sie verlieren den Zugriff auf alle Daten, die in Ihrer Event Streams-Instanz gespeichert sind. Es ist nicht möglich, diese Daten wiederherzustellen.

In beiden Fällen wird die Event Streams-Instanz heruntergefahren und akzeptiert oder verarbeitet keine Verbindungen mehr. Ein Activity Tracker Ereignis wird erzeugt, um die Aktion zu melden. Weitere Informationen finden Sie unter Activity Tracker-Ereignisse.

Die Autorisierung muss jederzeit zwischen Ihrer Event Streams und der Instanz des Schlüsselverwaltungsdienstes bestehen bleiben, auch nach dem Löschen der Dienstinstanz. Event Streams benötigt weiterhin die Dienst-zu-Dienst-Richtlinie, um den Schlüssel zu deregistrieren. Um festzustellen, wann das Entfernen der Service-zu-Service-Richtlinie sicher ist, überprüfen Sie die zugehörigen Ressourcen im KMS-Rootschlüssel. Wenn der Root-Schlüssel noch mit der Instanz Event Streams verbunden ist, lassen Sie die Richtlinie bestehen. Während die Aufhebung dieser Berechtigung den zukünftigen Zugriff von Event Streams auf Ihre Daten verhindert, sind bereits genutzte Daten weiterhin für eine gewisse Zeit verfügbar.

Ihre Instanz von Event Streams ist so lange kostenpflichtig, bis Sie sie über die Konsole IBM Cloud oder die Befehlszeilenschnittstelle deprovisionieren. Diese Gebühren gelten auch dann, wenn Sie den Zugriff auf Ihre Daten verhindern möchten.

Zugriff auf Daten wiederherstellen

Der Zugriff kann nur wiederhergestellt werden, wenn der Schlüssel nicht gelöscht wurde. Aktivieren Sie Ihren Rootschlüssel erneut, um den Zugriff wiederherzustellen. Nach einer nur kurz dauernden Initialisierung wird Ihre Event Streams-Instanz erneut gestartet und akzeptiert wieder Verbindungen. Alle Daten bleiben gemäß den in Ihrer Instanz konfigurierten normalen Aufbewahrungsfristen erhalten.

Es wird ein Activity Tracker-Ereignis generiert, um die Aktion zu melden. Weitere Informationen finden Sie unter Activity Tracker-Ereignisse.

Schlüssel rotieren

Key Protect und Hyper Protect Crypto Services unterstützen entweder eine bedarfsgesteuerte oder eine terminierte Rotation von Rootschlüsseln. Beim Rotieren des Schlüssels übernimmt Event Streams den neuen Schlüssel durch erneutes Wrapping des DEK, wie zuvor unter Funktionsweise der kundenverwalteten Verschlüsselung beschrieben.

Es wird ein Activity Tracker-Ereignis generiert, um die Aktion zu melden. Weitere Informationen finden Sie unter Activity Tracker-Ereignisse.

Kundenverwaltete Verschlüsselung inaktivieren

Nachdem Sie die vom Kunden verwaltete Verschlüsselung aktiviert haben, ist es nicht möglich, sie zu deaktivieren. Stattdessen müssen Sie die Serviceinstanz löschen und eine neue Instanz erstellen.

Umstellung von Hyper Protect Crypto Services (HPCS) auf Key Protect Dedicated (KP-ST)

Bei der Migration von Hyper Protect Crypto Services (HPCS) zu Key Protect Dedicated (KP-ST) geschieht Folgendes:

  • Jede KMS-Instanz verwaltet ihre eigenen eindeutigen Stammschlüssel. Bei der Migration wird der Dienst mit einem neuen IBM® Key Protect Dedicated Root-Schlüssel neu assoziiert.
  • Vorhandene Datenverschlüsselungsschlüssel (DEKs) werden sicher umhüllt.
  • Während des Übergangs müssen sowohl die Hyper Protect Crypto Services to Service als auch die Key Protect to Service Zugangsrichtlinien in Kraft bleiben.
  • Verschlüsselte Daten werden nicht wieder verschlüsselt oder verschoben.
  • Die Verfügbarkeit der Dienste bleibt erhalten.

Voraussetzungen

Vergewissern Sie sich vor Beginn der Migration, dass Sie über die erforderlichen Informationen verfügen:

  • Eine Key Protect Dedicated (Single Tenant) Instanz.
  • Ein Stammschlüssel, der in dieser Key Protect Dedicated (KP-ST) Instanz erstellt wurde.
  • Berechtigungen zur Verwaltung von Schlüsseln und Dienstzugangsrichtlinien.

Migrationsschritte

  1. Identifizieren Sie den vorhandenen Hyper Protect Crypto Services Root Key, der verwendet wird. Der Schlüssel muss in einer Instanz von Hyper Protect Crypto Services vorhanden sein, und der Dienst muss bereits Zugang zu ihm haben.
  2. Erstellen oder wählen Sie einen Key Protect Dedicated Root Key. Der Schlüssel muss sich in der entsprechenden Key Protect Dedicated (Single Tenant) Instanz befinden und für den Dienst zugänglich sein.
  3. Erstellen Sie eine Migrationsabsicht, die die beiden Schlüssel miteinander verbindet. Die Migrationsabsicht bildet den aktuellen Schlüssel Hyper Protect Crypto Services (Quelle) auf den neuen Key Protect Dedicated Key (Ziel) ab. Weitere Informationen zur Migration von Key Protect finden Sie unter Migration von Hyper Protect Crypto Services(HPCS)auf Key Protect Dedicated.
  4. Die Migration kann innerhalb von 1-2 Werktagen durchgeführt werden. Event Streams verbindet die DEKs sicher neu und verpackt sie gegebenenfalls neu, ohne die Daten erneut zu verschlüsseln oder zu verschieben.
  5. Überprüfen Sie den Abschluss der Migration. Der Dienst muss nun auf den Key Protect ST Root Key verweisen. Key Protect Der ST-Stammschlüssel sollte sichtbar und aktiv sein und die Verknüpfung Hyper Protect Crypto Services sollte entfernt werden.