Datenverschlüsselung mit kundenseitig verwalteten Schlüsseln
GILT FÜR: Azure Cosmos DB for PostgreSQL (unterstützt von der Citus-Datenbankerweiterung auf PostgreSQL)
Die in Ihrem Azure Cosmos DB for PostgreSQL-Cluster gespeicherten Daten werden automatisch und nahtlos mit von Microsoft verwalteten Schlüsseln verschlüsselt. Diese Schlüssel werden als dienstseitig verwaltete Schlüssel bezeichnet. Azure Cosmos DB for PostgreSQL verschlüsselt ruhende Daten mit der Azure Storage-Verschlüsselung. Dabei werden standardmäßig von dienstseitig verwaltete Schlüssel verwendet. Sie können optional eine zusätzliche Sicherheitsebene hinzufügen, indem Sie die Verschlüsselung mit kundenseitig verwalteten Schlüsseln aktivieren.
Dienstseitig verwaltete Schlüssel
Der Azure Cosmos DB for PostgreSQL-Dienst nutzt das FIPS 140-2-zertifizierte Kryptografiemodul für die Speicherverschlüsselung ruhender Daten. Sämtliche Daten wie Sicherungen und temporäre Dateien, die während der Ausführung von Abfragen erstellt wurden, werden auf dem Datenträger verschlüsselt. Der Dienst verwendet das in der Azure Storage-Verschlüsselung enthaltene AES-256-Bit-Verschlüsselungsverfahren, und die Schlüssel werden vom System verwaltet. Die Speicherverschlüsselung ist immer aktiviert und kann nicht deaktiviert werden.
Vom Kunden verwaltete Schlüssel
Viele Organisationen benötigen vollständige Kontrolle über den Zugriff auf die Daten mit einem kundenseitig verwalteten Schlüssel (Customer-Managed Key, CMK). Die Datenverschlüsselung mit kundenseitig verwalteten Schlüsseln für Azure Cosmos DB for PostgreSQL ermöglicht die Verwendung eigener Schlüssel (Bring Your Own Key, BYOK) zum Schutz ruhender Daten. Sie bietet Organisationen auch eine Möglichkeit der Trennung von Aufgaben bei der Verwaltung von Schlüsseln und Daten. Bei der kundenseitig verwalteten Verschlüsselung sind Sie vollständig für den Lebenszyklus eines Schlüssels sowie für Nutzungsberechtigungen und für die Überwachung von Vorgängen verantwortlich und haben uneingeschränkte Kontrolle über diese Aspekte.
Datenverschlüsselung mit kundenseitig verwalteten Schlüsseln für Azure Cosmos DB for PostgreSQL wird auf Serverebene festgelegt. Daten, darunter auch Sicherungen, werden auf dem Datenträger verschlüsselt. Diese Verschlüsselung umfasst die temporären Dateien, die beim Ausführen von Abfragen erstellt werden. Bei einem bestimmten Server wird ein kundenseitig verwalteter Schlüssel verwendet, der als Schlüsselverschlüsselungsschlüssel (Key Encryption Key, KEK) bezeichnet wird, um den Dienstdatenverschlüsselungs-Schlüssel (Data Encryption Key, DEK) zu verschlüsseln. Der KEK ist ein asymmetrischer Schlüssel, der in einer vom Kunden verwalteten Azure Key Vault-Instanz im Besitz des Kunden gespeichert wird.
BESCHREIBUNG | |
---|---|
Datenverschlüsselungsschlüssel (Data Encryption Key, DEK) | Ein Datenverschlüsselungsschlüssel ist ein symmetrischer AES256-Schlüssel zum Verschlüsseln einer Partition oder eines Datenblocks. Das Verschlüsseln jedes Datenblocks mit einem anderen Schlüssel erschwert Kryptoanalyseangriffe. Der Ressourcenanbieter oder die Anwendungsinstanz, der bzw. die einen spezifischen Block ver- oder entschlüsselt, benötigt Zugriff auf die DEKs. Wenn Sie einen DEK durch einen neuen Schlüssel ersetzen, müssen nur die Daten im verknüpften Block erneut mit dem neuen Schlüssel verschlüsselt werden. |
Schlüsselverschlüsselungsschlüssel (Key encryption key, KEK) | Ein Schlüsselverschlüsselungsschlüssel ist ein Verschlüsselungsschlüssel, der zum Verschlüsseln der DEKs verwendet wird. Mit einem KEK, der den Schlüsseltresor nie verlässt, können die DEKs selbst verschlüsselt und gesteuert werden. Die Entität, die auf den KEK zugreifen kann, kann sich von der Entität unterscheiden, die den DEK erfordert. Da der KEK erforderlich ist, um DEKs zu entschlüsseln, können durch Löschen des KEK auch die DEKs gelöscht werden. |
Hinweis
Azure Key Vault ist ein cloudbasiertes, externes Schlüsselverwaltungssystem. Sie ist hochverfügbar und bietet einen skalierbaren, sicheren Speicher für kryptografische RSA-Schlüssel, der optional durch FIPS 140-validierte Hardware-Sicherheitsmodule (HSMs) unterstützt wird. Ein Schlüsseltresor lässt keinen direkten Zugriff auf einen gespeicherten Schlüssel zu, stattdessen werden Verschlüsselung und Entschlüsselung für die autorisierten Entitäten bereitgestellt. Ein Schlüsseltresor kann den Schlüssel generieren, importieren oder von einem lokalen HSM-Gerät übertragen lassen.
Die mit den KEKs verschlüsselten DEKs werden separat gespeichert. Nur eine Entität mit Zugriff auf den KEK kann diese DEKs entschlüsseln. Weitere Informationen finden Sie unter Sicherheit bei der Verschlüsselung ruhender Daten.
Funktionsweise der Datenverschlüsselung mit einem kundenseitig verwalteten Schlüssel
Damit ein Cluster kundenseitig verwaltete Schlüssel, die in Key Vault gespeichert sind, für die Verschlüsselung des DEK verwenden kann, müssen Key Vault-Administrator*innen dem Server die folgenden Zugriffsrechte zuweisen:
BESCHREIBUNG | |
---|---|
get | Aktiviert das Abrufen des öffentlichen Teils und der Eigenschaften des Schlüssels im Schlüsseltresor. |
wrapKey | Aktiviert die Verschlüsselung des DEK. Der verschlüsselte DEK wird in Azure Cosmos DB for PostgreSQL gespeichert. |
unwrapKey | Aktiviert die Entschlüsselung des DEK. Azure Cosmos DB for PostgreSQL benötigt den entschlüsselten DEK zum Ver- und Entschlüsseln von Daten. |
Der Key Vault-Administrator kann auch die Protokollierung von Key Vault-Überwachungsereignissen aktivieren, damit sie später überprüft werden können. Wenn der Azure Cosmos DB for PostgreSQL-Cluster für die Verwendung des im Schlüsseltresor gespeicherten kundenseitig verwalteten Schlüssels konfiguriert ist, sendet der Server den DEK für Verschlüsselungen an den Schlüsseltresor. Key Vault gibt den verschlüsselten DEK zurück, der in der Benutzerdatenbank gespeichert wird. Entsprechend sendet der Server bei Bedarf den geschützten DEK zur Entschlüsselung an Key Vault. Überwachungsfachkräfte können Azure Monitor verwenden, um die Überwachungsereignisprotokolle von Key Vault zu überprüfen, sofern die Protokollierung aktiviert wurde.
Vorteile
Die Datenverschlüsselung mit kundenseitig verwalteten Schlüsseln für Azure Cosmos DB for PostgreSQL bietet die folgenden Vorteile:
- Sie steuern den Datenzugriff vollständig durch die Möglichkeit, den Schlüssel zu entfernen und so die Datenbank nicht zugänglich zu machen.
- Sie haben vollständige Kontrolle über den Schlüssellebenszyklus, einschließlich der Rotation des Schlüssels zum Einhalten von Unternehmensrichtlinien.
- Zentrale Verwaltung und Organisation von Schlüsseln in Azure Key Vault.
- Sie haben die Möglichkeit zur Implementierung der Trennung von Aufgaben zwischen Sicherheitsbeauftragten, DBAs und Systemadministrator*innen.
- Das Aktivieren der Verschlüsselung hat keine weiteren Auswirkungen auf die Leistung mit oder ohne kundenseitig verwaltete Schlüssel. Azure Cosmos DB for PostgreSQL verwendet Azure Storage für die Datenverschlüsselung in Szenarien mit kundenseitig oder dienstseitig verwalteten Schlüsseln.