Datenverschlüsselung in Azure Cosmos DB

GILT FÜR: NoSQL MongoDB Cassandra Gremlin Tabelle

„Verschlüsselung ruhender Daten“ ist ein Ausdruck, der sich im Allgemeinen auf die Verschlüsselung von Daten auf permanenten Speichergeräten wie Solid State Drives (SSDs) und Festplattenlaufwerken (HDDs) bezieht. Azure Cosmos DB speichert die primären Datenbanken auf SSDs. Deren Medienanlagen und die Sicherungen werden in Azure Blob Storage gespeichert und in der Regel durch HDDs gesichert. Mit der Veröffentlichung der Verschlüsselung von ruhenden Daten für Azure Cosmos DB werden Ihre gesamten Datenbanken, Medienanhänge und Sicherungen jetzt verschlüsselt. Damit werden Ihre Daten jetzt während der Übertragung (über das Netzwerk) und im Ruhezustand (permanenter Speicher) verschlüsselt, sodass Sie eine End-to-End-Verschlüsselung erhalten.

Als Plattform als Dienst (PaaS) ist Azure Cosmos DB einfach zu bedienen. Da alle in Azure Cosmos DB gespeicherten Benutzerdaten sowohl ruhend als auch während der Übertragung verschlüsselt werden, sind keinerlei Maßnahmen erforderlich. Mit anderen Worten, die Ruheverschlüsselung ist standardmäßig „aktiviert“. Es gibt keine Möglichkeit, dies ein- oder auszuschalten. Azure Cosmos DB verwendet AES-256-Verschlüsselung in allen Regionen, in denen das Konto ausgeführt wird.

Wir stellen diese Funktion bereit, während wir weiterhin unsere Verfügbarkeits- und Leistungsvereinbarungen (Service Level Agreements, SLAs) erfüllen. Die in Ihrem Azure Cosmos DB-Konto gespeicherten Daten werden automatisch und nahtlos mit von Microsoft verwalteten Schlüsseln (dienstseitig verwaltete Schlüssel) verschlüsselt. Darüber hinaus besteht die Möglichkeit, eine zweite Verschlüsselungsschicht mit Ihren eigenen Schlüsseln hinzuzufügen, wie im Artikel zu kundenseitig verwalteten Schlüsseln beschrieben.

Implementierung der Verschlüsselung von ruhenden Daten für Azure Cosmos DB

Die Verschlüsselung im Ruhezustand wird durch den Einsatz verschiedener Sicherheitstechnologien implementiert, darunter sichere Schlüsselspeichersysteme, verschlüsselte Netzwerke und kryptografische APIs. Systeme, die Daten verarbeiten und entschlüsseln, müssen mit Systemen kommunizieren, die Schlüssel verwalten. Das Diagramm veranschaulicht die Trennung zwischen der Speicherung von verschlüsselten Daten und der Verwaltung von Schlüsseln.

Diagram that shows data storage and key management design.

Der grundlegende Flow einer Benutzeranfrage ist:

  • Das Benutzerdatenbankkonto wird bereitgestellt, und die Speicherschlüssel werden über eine Anforderung an den Ressourcenanbieter für den Verwaltungsdienst abgerufen.
  • Benutzer*innen stellen über HTTPS bzw. über den sicheren Transport eine Verbindung mit Azure Cosmos DB her. (Die Details werden in den SDKs zusammengefasst.)
  • Der Benutzer sendet ein zu speicherndes JSON-Dokument über die zuvor erstellte sichere Verbindung.
  • Das JSON-Dokument wird indiziert, sofern der Benutzer die Indizierung nicht deaktiviert hat.
  • Sowohl das JSON-Dokument als auch die Indexdaten werden in den sicheren Speicher geschrieben.
  • In regelmäßigen Abständen werden Daten aus dem sicheren Speicher gelesen und im verschlüsselten Azure Blob Storage gesichert.

Häufig gestellte Fragen

Finden Sie Antworten auf häufig gestellte Fragen zur Verschlüsselung.

Wie hoch sind die Mehrkosten für Azure Storage, wenn die Speicherdienstverschlüsselung aktiviert ist?

Es entstehen keine zusätzlichen Kosten.

Wer verwaltet die Verschlüsselungsschlüssel?

Die in Ihrem Azure Cosmos DB-Konto gespeicherten Daten werden automatisch und nahtlos mit von Microsoft verwalteten Schlüsseln verschlüsselt, indem die vom Dienst verwalteten Schlüssel verwendet werden. Optional können Sie eine zweite Verschlüsselungsebene mit Schlüsseln auswählen, die Sie mithilfe von kundenseitig verwalteten Schlüsseln (CMK) verwalten.

Wie oft werden die Verschlüsselungsschlüssel ausgetauscht?

Microsoft verfügt über mehrere interne Richtlinien für die Rotation der Verschlüsselungsschlüssel, die auch für Azure Cosmos DB gelten. Die spezifischen Richtlinien werden nicht veröffentlicht. Microsoft veröffentlicht den Security Development Lifecycle, der als eine Teilmenge der internen Richtlinien gilt und nützliche bewährte Methoden für Entwickler enthält.

Kann ich meine eigenen Verschlüsselungsschlüssel verwenden?

Ja, diese Funktion ist für neue Azure Cosmos DB-Konten verfügbar. Sie sollte zum Zeitpunkt der Kontoerstellung bereitgestellt werden. Weitere Informationen finden Sie im Dokument kundenseitig verwaltete Schlüssel.

Warnung

Die folgenden Feldnamen sind für Cassandra API-Tabellen in Konten reserviert, indem kundenseitig verwaltete Schlüssel verwendet werden:

  • id
  • ttl
  • _ts
  • _etag
  • _rid
  • _self
  • _attachments
  • _epk

Wenn kundenseitig verwaltete Schlüssel nicht aktiviert sind, werden nur Feldnamen reserviert, die mit __sys_ beginnen.

Für welche Regionen ist die Verschlüsselung aktiviert?

Die Verschlüsselung ist für alle Azure Cosmos DB-Regionen und für alle Benutzerdaten aktiviert.

Wirkt sich die Verschlüsselung auf die SLAs hinsichtlich Leistung, Wartezeit und Durchsatz aus?

Es gibt keine Auswirkungen oder Änderungen an den Leistungs-SLAs, da die Verschlüsselung im Ruhezustand jetzt für alle vorhandenen und neuen Konten aktiviert ist. Die neuesten Garantien finden Sie unter SLA für Azure Cosmos DB.

Unterstützt der lokale Emulator die Verschlüsselung ruhender Daten?

Der Emulator ist ein eigenständiges Entwicklungs-/Testtool und verwendet keine Schlüsselverwaltungsdienste, die vom verwalteten Azure Cosmos DB-Dienst verwendet werden. Es wird empfohlen, BitLocker auf Laufwerken zu aktivieren, auf denen Sie vertrauliche Emulatortestdaten speichern. Der Emulator unterstützt das Ändern des Standarddatenverzeichnisses sowie die Verwendung eines bekannten Speicherorts.

Nächste Schritte