Magazynowane dane usługi Azure Data Encryption

Platforma Microsoft Azure obejmuje narzędzia do ochrony danych zgodnie z potrzebami firmy w zakresie zabezpieczeń i zgodności. Ten dokument koncentruje się na:

  • Jak dane są chronione podczas magazynowania na platformie Microsoft Azure
  • Omówienie różnych składników biorących udział w implementacji ochrony danych,
  • Przegląd zalet i wad różnych podejść ochrony zarządzania kluczami.

Szyfrowanie w spoczynku jest typowym wymaganiem dotyczącym zabezpieczeń. Na platformie Azure organizacje mogą szyfrować dane magazynowane bez ryzyka lub kosztu niestandardowego rozwiązania do zarządzania kluczami. Organizacje mają możliwość całkowitego zarządzania szyfrowaniem w spoczynku platformy Azure. Ponadto organizacje mają różne opcje ścisłego zarządzania szyfrowaniem lub kluczami szyfrowania.

Co to jest szyfrowanie magazynowane?

Szyfrowanie to bezpieczne kodowanie danych używanych do ochrony poufności danych. Projekty szyfrowania w spoczynku na platformie Azure używają szyfrowania symetrycznego do szybkiego szyfrowania i odszyfrowywania dużych ilości danych zgodnie z prostym modelem koncepcyjnym:

  • Klucz szyfrowania symetrycznego służy do szyfrowania danych podczas zapisywania ich w magazynie.
  • Ten sam klucz szyfrowania służy do odszyfrowywania tych danych, które są odczytywane do użycia w pamięci.
  • Dane mogą być partycjonowane, a dla każdej partycji mogą być używane różne klucze.
  • Klucze muszą być przechowywane w bezpiecznej lokalizacji z zasadami kontroli dostępu i inspekcji opartymi na tożsamościach. Klucze szyfrowania danych przechowywane poza bezpiecznymi lokalizacjami są szyfrowane przy użyciu klucza szyfrowania klucza przechowywanego w bezpiecznej lokalizacji.

W praktyce scenariusze zarządzania kluczami i kontroli, a także zapewnienia skalowania i dostępności, wymagają dodatkowych konstrukcji. Poniżej opisano pojęcia i składniki usługi Microsoft Azure Encryption at Rest.

Cel szyfrowania magazynowanych

Szyfrowanie magazynowane zapewnia ochronę danych przechowywanych danych (magazynowanych). Ataki na dane magazynowane obejmują próby uzyskania fizycznego dostępu do sprzętu, na którym są przechowywane dane, a następnie naruszenie zawartych danych. W takim ataku dysk twardy serwera mógł zostać błędnie obsłużony podczas konserwacji, dzięki czemu osoba atakująca może usunąć dysk twardy. Później osoba atakująca umieści dysk twardy na komputerze pod kontrolą, aby spróbować uzyskać dostęp do danych.

Szyfrowanie magazynowane zostało zaprojektowane tak, aby uniemożliwić atakującemu uzyskanie dostępu do niezaszyfrowanych danych przez zapewnienie, że dane są szyfrowane podczas pracy na dysku. Jeśli osoba atakująca uzyska dysk twardy z zaszyfrowanymi danymi, ale nie kluczami szyfrowania, osoba atakująca musi pokonać szyfrowanie, aby odczytać dane. Ten atak jest znacznie bardziej złożony i zużywa zasoby niż uzyskiwanie dostępu do niezaszyfrowanych danych na dysku twardym. Z tego powodu szyfrowanie magazynowane jest zdecydowanie zalecane i jest wymaganiem o wysokim priorytcie dla wielu organizacji.

Szyfrowanie magazynowane może być również wymagane przez konieczność zapewnienia ładu i zgodności danych przez organizację. Przepisy branżowe i rządowe, takie jak HIPAA, PCI i FedRAMP, określają konkretne zabezpieczenia dotyczące ochrony danych i wymagań dotyczących szyfrowania. Szyfrowanie w spoczynku jest obowiązkowym środkiem wymaganym do zapewnienia zgodności z niektórymi z tych przepisów. Aby uzyskać więcej informacji na temat podejścia firmy Microsoft do weryfikacji standardu FIPS 140-2, zobacz Federal Information Processing Standard (FIPS) Publikacja 140-2.

Oprócz spełnienia wymagań dotyczących zgodności i przepisów szyfrowanie magazynowane zapewnia ochronę w głębi systemu. Platforma Microsoft Azure udostępnia zgodną platformę dla usług, aplikacji i danych. Zapewnia również kompleksowe zabezpieczenia i zabezpieczenia fizyczne, kontrolę dostępu do danych i inspekcję. Jednak ważne jest zapewnienie dodatkowych "nakładających się" środków zabezpieczeń w przypadku awarii jednego z innych środków zabezpieczeń, a szyfrowanie magazynowane zapewnia taki środek zabezpieczeń.

Firma Microsoft zobowiązuje się do szyfrowania opcji magazynowanych w usługach w chmurze i zapewnia klientom kontrolę nad kluczami szyfrowania i dziennikami użycia klucza. Ponadto firma Microsoft domyślnie pracuje nad szyfrowaniem wszystkich danych klientów magazynowanych.

Usługa Azure Encryption w składnikach rest

Jak opisano wcześniej, celem szyfrowania magazynowanego jest to, że dane utrwalane na dysku są szyfrowane przy użyciu klucza szyfrowania tajnego. Aby osiągnąć ten cel, należy zapewnić bezpieczne tworzenie kluczy, magazyn, kontrolę dostępu i zarządzanie kluczami szyfrowania. Chociaż szczegóły mogą się różnić, implementacje usługi Azure Encryption at Rest można opisać w sposób przedstawiony na poniższym diagramie.

Components

Azure Key Vault

Lokalizacja magazynu kluczy szyfrowania i kontroli dostępu do tych kluczy jest kluczowa dla szyfrowania w modelu spoczynku. Klucze muszą być wysoce zabezpieczone, ale możliwe do zarządzania przez określonych użytkowników i dostępne dla określonych usług. W przypadku usług platformy Azure usługa Azure Key Vault jest zalecanym rozwiązaniem magazynu kluczy i zapewnia typowe środowisko zarządzania między usługami. Klucze są przechowywane i zarządzane w magazynach kluczy, a dostęp do magazynu kluczy może być udzielany użytkownikom lub usługom. Usługa Azure Key Vault obsługuje tworzenie kluczy lub importowanie kluczy klienta do użycia w scenariuszach klucza szyfrowania zarządzanego przez klienta.

Tożsamość Microsoft Entra

Uprawnienia do używania kluczy przechowywanych w usłudze Azure Key Vault do zarządzania nimi lub uzyskiwania do nich dostępu do szyfrowania w spoczynku i odszyfrowywania mogą być przekazywane do kont Microsoft Entra.

Szyfrowanie kopert z hierarchią kluczy

W implementacji spoczynku jest używany więcej niż jeden klucz szyfrowania. Przechowywanie klucza szyfrowania w usłudze Azure Key Vault zapewnia bezpieczny dostęp do klucza i centralne zarządzanie kluczami. Jednak lokalny dostęp do kluczy szyfrowania jest bardziej wydajny w przypadku szyfrowania zbiorczego i odszyfrowywania niż interakcja z usługą Key Vault dla każdej operacji danych, co pozwala na silniejsze szyfrowanie i lepszą wydajność. Ograniczenie użycia pojedynczego klucza szyfrowania zmniejsza ryzyko naruszenia bezpieczeństwa klucza i koszt ponownego szyfrowania po zastąpieniu klucza. Usługa Azure Encryption w modelach magazynowanych używa szyfrowania kopert, gdzie klucz szyfrowania klucza szyfruje klucz szyfrowania danych. Ten model stanowi kluczową hierarchię, która jest lepiej w stanie spełnić wymagania dotyczące wydajności i zabezpieczeń:

  • Klucz szyfrowania danych (DEK) — symetryczny klucz AES256 używany do szyfrowania partycji lub bloku danych, czasami nazywany po prostu kluczem danych. Pojedynczy zasób może mieć wiele partycji i wiele kluczy szyfrowania danych. Szyfrowanie każdego bloku danych przy użyciu innego klucza sprawia, że ataki analizy kryptograficznej są trudniejsze. I utrzymywanie lokalnych kluczy szyfrowania i odszyfrowywania danych w usłudze maksymalizuje wydajność.
  • Klucz szyfrowania kluczy (KEK) — klucz szyfrowania używany do szyfrowania kluczy szyfrowania danych przy użyciu szyfrowania koperty, nazywany również zawijaniem. Użycie klucza szyfrowania kluczy, który nigdy nie opuszcza usługi Key Vault, umożliwia szyfrowanie i kontrolowanie kluczy szyfrowania danych. Jednostka, która ma dostęp do klucza KEK, może być inna niż jednostka, która wymaga klucza szyfrowania danych. Jednostka może brokerować dostęp do klucza szyfrowania danych, aby ograniczyć dostęp każdego klucza szyfrowania danych do określonej partycji. Ponieważ klucz KEK jest wymagany do odszyfrowywania zestawów SZYFROWANIA, klienci mogą kryptograficznie wymazać klucze SZYFROWANIA i dane, wyłączając klucz KEK.

Dostawcy zasobów i wystąpienia aplikacji przechowują zaszyfrowane klucze szyfrowania danych jako metadane. Tylko jednostka z dostępem do klucza szyfrowania kluczy może odszyfrować te klucze szyfrowania danych. Obsługiwane są różne modele magazynu kluczy. Aby uzyskać więcej informacji, zobacz Modele szyfrowania danych.

Szyfrowanie magazynowane w usługach w chmurze firmy Microsoft

Usługi w chmurze firmy Microsoft są używane we wszystkich trzech modelach chmury: IaaS, PaaS, SaaS. Poniżej przedstawiono przykłady dopasowania ich do poszczególnych modeli:

  • Usługi oprogramowania nazywane oprogramowaniem jako usługa lub SaaS, które mają aplikacje udostępniane przez chmurę, takie jak Microsoft 365.
  • Usługi platformy, w których klienci korzystają z chmury do obsługi takich funkcji jak magazyn, analiza i usługa Service Bus w swoich aplikacjach.
  • Usługi infrastruktury lub infrastruktura jako usługa (IaaS), w których klient wdraża systemy operacyjne i aplikacje hostowane w chmurze i ewentualnie korzysta z innych usług w chmurze.

Szyfrowanie magazynowane dla klientów SaaS

Klienci oprogramowania jako usługi (SaaS) zwykle mają włączone szyfrowanie magazynowane lub dostępne w każdej usłudze. Platforma Microsoft 365 oferuje klientom kilka opcji weryfikowania lub włączania szyfrowania magazynowanych. Aby uzyskać informacje na temat usług Platformy Microsoft 365, zobacz Szyfrowanie na platformie Microsoft 365.

Szyfrowanie magazynowane dla klientów PaaS

Dane klienta platformy jako usługi (PaaS) zwykle znajdują się w usłudze magazynu, takiej jak Blob Storage, ale mogą być również buforowane lub przechowywane w środowisku wykonywania aplikacji, takim jak maszyna wirtualna. Aby wyświetlić dostępne opcje szyfrowania magazynowanych, zapoznaj się z modelami szyfrowania danych: tabelą usług pomocniczych dla używanych platform magazynu i aplikacji.

Szyfrowanie magazynowane dla klientów IaaS

Klienci infrastruktury jako usługi (IaaS) mogą korzystać z różnych usług i aplikacji. Usługi IaaS mogą włączyć szyfrowanie magazynowane na maszynach wirtualnych hostowanych na platformie Azure i wirtualnych dyskach twardych przy użyciu usługi Azure Disk Encryption.

Zaszyfrowany magazyn

Podobnie jak PaaS, rozwiązania IaaS mogą korzystać z innych usług platformy Azure, które przechowują dane zaszyfrowane w spoczynku. W takich przypadkach można włączyć obsługę szyfrowania w spoczynku zgodnie z każdą używaną usługą platformy Azure. Modele szyfrowania danych: tabela usług pomocniczych wylicza główne platformy magazynu, usług i aplikacji oraz model szyfrowania w spoczynku.

Zaszyfrowane obliczenia

Wszystkie Dyski zarządzane, migawki i obrazy są szyfrowane przy użyciu szyfrowania usługi Storage przy użyciu klucza zarządzanego przez usługę. Bardziej kompletne rozwiązanie szyfrowania w spoczynku gwarantuje, że dane nigdy nie są utrwalane w niezaszyfrowanym formularzu. Podczas przetwarzania danych na maszynie wirtualnej dane mogą być utrwalane w pliku stronicowania systemu Windows lub pliku zamiany systemu Linux, zrzutu awaryjnego lub dziennika aplikacji. Aby zapewnić szyfrowanie tych danych magazynowanych, aplikacje IaaS mogą używać usługi Azure Disk Encryption na maszynie wirtualnej IaaS platformy Azure (Windows lub Linux) i dysku wirtualnego.

Szyfrowanie niestandardowe magazynowane

Zaleca się, aby zawsze, gdy to możliwe, aplikacje IaaS korzystają z usługi Azure Disk Encryption i szyfrowania w spoczynku udostępnianych przez wszystkie używane usługi platformy Azure. W niektórych przypadkach, takich jak wymagania dotyczące nieregularnego szyfrowania lub magazyn nienależący do platformy Azure, deweloper aplikacji IaaS może wymagać samodzielnego zaimplementowania szyfrowania. Deweloperzy rozwiązań IaaS mogą lepiej zintegrować się z oczekiwaniami klientów i zarządzania platformą Azure dzięki wykorzystaniu niektórych składników platformy Azure. W szczególności deweloperzy powinni korzystać z usługi Azure Key Vault, aby zapewnić bezpieczny magazyn kluczy, a także zapewnić klientom spójne opcje zarządzania kluczami z większością usług platformy Azure. Ponadto rozwiązania niestandardowe powinny używać tożsamości usługi zarządzanej platformy Azure, aby umożliwić kontom usług dostęp do kluczy szyfrowania. Aby uzyskać informacje dla deweloperów dotyczące usługi Azure Key Vault i tożsamości usługi zarządzanej, zobacz odpowiednie zestawy SDK.

Obsługa modelu szyfrowania dostawców zasobów platformy Azure

Usługi platformy Microsoft Azure obsługują co najmniej jeden model szyfrowania magazynowanych. Jednak w przypadku niektórych usług jeden lub więcej modeli szyfrowania może nie mieć zastosowania. W przypadku usług obsługujących scenariusze kluczy zarządzanych przez klienta mogą obsługiwać tylko podzestaw typów kluczy obsługiwanych przez usługę Azure Key Vault dla kluczy szyfrowania kluczy. Ponadto usługi mogą zwalniać obsługę tych scenariuszy i typów kluczy w różnych harmonogramach. W tej sekcji opisano obsługę szyfrowania magazynowanych w momencie pisania dla każdej z głównych usług magazynu danych platformy Azure.

Szyfrowanie dysków platformy Azure

Każdy klient korzystający z funkcji IaaS (Azure Infrastructure as a Service) może osiągnąć szyfrowanie magazynowanych maszyn wirtualnych i dysków IaaS za pośrednictwem usługi Azure Disk Encryption. Aby uzyskać więcej informacji na temat usługi Azure Disk Encryption, zobacz Usługa Azure Disk Encryption dla maszyn wirtualnych z systemem Linux lub Usługa Azure Disk Encryption dla maszyn wirtualnych z systemem Windows.

Magazyn platformy Azure

Wszystkie usługi Azure Storage (Blob Storage, Queue Storage, Table Storage i Azure Files) obsługują szyfrowanie magazynowane po stronie serwera; niektóre usługi dodatkowo obsługują klucze zarządzane przez klienta i szyfrowanie po stronie klienta.

Azure SQL Database

Usługa Azure SQL Database obecnie obsługuje szyfrowanie magazynowane dla scenariuszy szyfrowania po stronie usługi zarządzanej przez firmę Microsoft i szyfrowania po stronie klienta.

Obsługa szyfrowania serwera jest obecnie zapewniana za pośrednictwem funkcji SQL o nazwie Transparent Data Encryption. Gdy klient usługi Azure SQL Database włączy funkcję TDE, klucze są automatycznie tworzone i zarządzane dla nich. Szyfrowanie magazynowane można włączyć na poziomach bazy danych i serwera. Od czerwca 2017 r. funkcja Transparent Data Encryption (TDE) jest domyślnie włączona w nowo utworzonych bazach danych. Usługa Azure SQL Database obsługuje klucze zarządzane przez klienta RSA 2048-bitowe w usłudze Azure Key Vault. Aby uzyskać więcej informacji, zobacz Transparent Data Encryption with Bring Your Own Key support for Azure SQL Database and Data Warehouse (Transparent Data Encryption with Bring Your Own Key support for Azure SQL Database and Data Warehouse).

Szyfrowanie danych usługi Azure SQL Database po stronie klienta jest obsługiwane za pośrednictwem funkcji Always Encrypted . Funkcja Always Encrypted używa klucza, który jest tworzony i przechowywany przez klienta. Klienci mogą przechowywać klucz główny w magazynie certyfikatów systemu Windows, usłudze Azure Key Vault lub lokalnym module zabezpieczeń sprzętu. Korzystając z programu SQL Server Management Studio, użytkownicy sql wybierają klucz, którego chcesz użyć do zaszyfrowania kolumny.

Podsumowanie

Ochrona danych klientów przechowywanych w ramach usług platformy Azure ma kluczowe znaczenie dla firmy Microsoft. Wszystkie usługi hostowane na platformie Azure są zobowiązane do udostępniania opcji szyfrowania w spoczynku. Usługi platformy Azure obsługują klucze zarządzane przez usługę, klucze zarządzane przez klienta lub szyfrowanie po stronie klienta. Usługi platformy Azure zasadniczo zwiększają dostępność szyfrowania w spoczynku, a nowe opcje są planowane w wersji zapoznawczej i ogólnie dostępne w nadchodzących miesiącach.

Następne kroki

  • Zobacz modele szyfrowania danych, aby dowiedzieć się więcej na temat kluczy zarządzanych przez usługę i kluczy zarządzanych przez klienta.
  • Dowiedz się, jak platforma Azure używa podwójnego szyfrowania w celu wyeliminowania zagrożeń, które są dostarczane z szyfrowaniem danych.
  • Dowiedz się, co firma Microsoft robi, aby zapewnić integralność platformy i bezpieczeństwo hostów przechodzących przez kompilowanie sprzętu i oprogramowania układowego, integrację, operacjonalizacja i naprawianie potoków.