Modele szyfrowania danych

Zrozumienie różnych modeli szyfrowania i ich zalet i wad jest niezbędne do zrozumienia, jak różni dostawcy zasobów w usłudze Azure implementują szyfrowanie w spoczynku. Te definicje są współużytkowane przez wszystkich dostawców zasobów na platformie Azure w celu zapewnienia wspólnego języka i taksonomii.

Istnieją trzy scenariusze szyfrowania po stronie serwera:

  • Szyfrowanie po stronie serwera przy użyciu kluczy zarządzanych przez usługę

    • Dostawcy zasobów platformy Azure wykonują operacje szyfrowania i odszyfrowywania
    • Firma Microsoft zarządza kluczami
    • Pełna funkcjonalność chmury
  • Szyfrowanie po stronie serwera przy użyciu kluczy zarządzanych przez klienta w usłudze Azure Key Vault

    • Dostawcy zasobów platformy Azure wykonują operacje szyfrowania i odszyfrowywania
    • Klucze kontroli klienta za pośrednictwem usługi Azure Key Vault
    • Pełna funkcjonalność chmury
  • Szyfrowanie po stronie serwera przy użyciu kluczy zarządzanych przez klienta na sprzęcie kontrolowanym przez klienta

    • Dostawcy zasobów platformy Azure wykonują operacje szyfrowania i odszyfrowywania
    • Klucze kontroli klienta na sprzęcie kontrolowanym przez klienta
    • Pełna funkcjonalność chmury

Modele szyfrowania po stronie serwera odnoszą się do szyfrowania wykonywanego przez usługę platformy Azure. W tym modelu dostawca zasobów wykonuje operacje szyfrowania i odszyfrowywania. Na przykład usługa Azure Storage może odbierać dane w operacjach zwykłego tekstu i będzie wykonywać szyfrowanie i odszyfrowywanie wewnętrznie. Dostawca zasobów może używać kluczy szyfrowania zarządzanych przez firmę Microsoft lub przez klienta w zależności od podanej konfiguracji.

Server

Każde z modeli magazynowanych po stronie serwera oznacza charakterystyczne cechy zarządzania kluczami. Obejmuje to miejsce i sposób tworzenia kluczy szyfrowania oraz ich przechowywania, a także modeli dostępu i procedur rotacji kluczy.

W przypadku szyfrowania po stronie klienta należy wziąć pod uwagę następujące kwestie:

  • Usługi platformy Azure nie widzą odszyfrowanych danych
  • Klienci zarządzają kluczami i przechowują je lokalnie (lub w innych bezpiecznych magazynach). Klucze nie są dostępne dla usług platformy Azure
  • Zmniejszona funkcjonalność chmury

Obsługiwane modele szyfrowania na platformie Azure podzielone na dwie główne grupy: "Szyfrowanie klienta" i "Szyfrowanie po stronie serwera", jak wspomniano wcześniej. Niezależnie od używanego modelu szyfrowania magazynowanych usługi platformy Azure zawsze zaleca korzystanie z bezpiecznego transportu, takiego jak TLS lub HTTPS. W związku z tym szyfrowanie w transporcie powinno być rozwiązywane przez protokół transportowy i nie powinno być głównym czynnikiem w określaniu, który model szyfrowania magazynowanego ma być używany.

Model szyfrowania klienta

Model szyfrowania klienta odnosi się do szyfrowania wykonywanego poza dostawcą zasobów lub platformą Azure przez usługę lub wywołującą aplikację. Szyfrowanie może być wykonywane przez aplikację usługi na platformie Azure lub aplikację działającą w centrum danych klienta. W obu przypadkach podczas korzystania z tego modelu szyfrowania dostawca zasobów platformy Azure odbiera zaszyfrowany obiekt blob danych bez możliwości odszyfrowania danych w jakikolwiek sposób lub dostępu do kluczy szyfrowania. W tym modelu zarządzanie kluczami odbywa się przez wywołanie usługi/aplikacji i jest nieprzezroczyste w usłudze platformy Azure.

Client

Szyfrowanie po stronie serwera przy użyciu kluczy zarządzanych przez usługę

W przypadku wielu klientów podstawowym wymaganiem jest zapewnienie, że dane są szyfrowane za każdym razem, gdy są magazynowane. Szyfrowanie po stronie serwera przy użyciu kluczy zarządzanych przez usługę umożliwia klientom oznaczenie określonego zasobu (konta magazynu, bazy danych SQL itp.) na potrzeby szyfrowania i pozostawienia wszystkich aspektów zarządzania kluczami, takich jak wystawianie kluczy, rotacja i tworzenie kopii zapasowych firmie Microsoft. Większość usług platformy Azure, które obsługują szyfrowanie magazynowane, zwykle obsługuje ten model odciążania zarządzania kluczami szyfrowania na platformie Azure. Dostawca zasobów platformy Azure tworzy klucze, umieszcza je w bezpiecznym magazynie i pobiera je w razie potrzeby. Oznacza to, że usługa ma pełny dostęp do kluczy, a usługa ma pełną kontrolę nad zarządzaniem cyklem życia poświadczeń.

managed

Szyfrowanie po stronie serwera przy użyciu kluczy zarządzanych przez usługę szybko eliminuje konieczność szyfrowania magazynowanych z niskim obciążeniem dla klienta. Gdy klient zazwyczaj otwiera witrynę Azure Portal dla subskrypcji docelowej i dostawcy zasobów i sprawdza pole wskazujące, że dane mają być szyfrowane. W niektórych menedżerach zasobów szyfrowanie po stronie serwera z kluczami zarządzanymi przez usługę jest domyślnie włączone.

Szyfrowanie po stronie serwera za pomocą kluczy zarządzanych przez firmę Microsoft oznacza, że usługa ma pełny dostęp do przechowywania kluczy i zarządzania nimi. Chociaż niektórzy klienci mogą chcieć zarządzać kluczami, ponieważ czują, że zyskują większe bezpieczeństwo, podczas oceniania tego modelu należy rozważyć koszt i ryzyko związane z niestandardowym rozwiązaniem magazynu kluczy. W wielu przypadkach organizacja może określić, że ograniczenia zasobów lub zagrożenia związane z rozwiązaniem lokalnym mogą być większe niż ryzyko zarządzania chmurą szyfrowania w kluczach magazynowanych. Jednak ten model może nie być wystarczający dla organizacji, które mają wymagania dotyczące kontrolowania tworzenia lub cyklu życia kluczy szyfrowania lub zarządzania kluczami szyfrowania przez inny personel niż osoby zarządzające usługą (czyli segregacja zarządzania kluczami z ogólnego modelu zarządzania dla usługi).

Dostęp do klucza

W przypadku użycia szyfrowania po stronie serwera za pomocą kluczy zarządzanych przez usługę wszystkie klucze tworzenia kluczy, magazynu i dostępu do usługi są zarządzane przez usługę. Zazwyczaj podstawowi dostawcy zasobów platformy Azure będą przechowywać klucze szyfrowania danych w magazynie, który znajduje się blisko danych i jest szybko dostępny, gdy klucze szyfrowania kluczy są przechowywane w bezpiecznym magazynie wewnętrznym.

Zalety

  • Konfiguracja prosta
  • Firma Microsoft zarządza rotacją kluczy, tworzeniem kopii zapasowych i nadmiarowością
  • Klient nie ma kosztów związanych z implementacją ani ryzykiem niestandardowego schematu zarządzania kluczami.

Wady

  • Brak kontroli klienta nad kluczami szyfrowania (specyfikacja klucza, cykl życia, odwołanie itp.)
  • Brak możliwości segregowania zarządzania kluczami z ogólnego modelu zarządzania dla usługi

Szyfrowanie po stronie serwera przy użyciu kluczy zarządzanych przez klienta w usłudze Azure Key Vault

W scenariuszach, w których wymagane jest szyfrowanie danych magazynowanych i kontrolowanie kluczy szyfrowania, klienci mogą używać szyfrowania po stronie serwera przy użyciu kluczy zarządzanych przez klienta w usłudze Key Vault. Niektóre usługi mogą przechowywać tylko klucz główny szyfrowania kluczy w usłudze Azure Key Vault i przechowywać zaszyfrowany klucz szyfrowania danych w lokalizacji wewnętrznej bliżej danych. W tym scenariuszu klienci mogą przenieść własne klucze do usługi Key Vault (BYOK — Bring Your Own Key) lub wygenerować nowe i użyć ich do szyfrowania żądanych zasobów. Podczas gdy dostawca zasobów wykonuje operacje szyfrowania i odszyfrowywania, używa skonfigurowanego klucza szyfrowania klucza jako klucza głównego dla wszystkich operacji szyfrowania.

Utrata kluczy szyfrowania kluczy oznacza utratę danych. Z tego powodu klucze nie powinny być usuwane. Kopie zapasowe kluczy powinny być tworzone zawsze po utworzeniu lub rotacji. Ochrona przed usuwaniem nietrwałym i przeczyszczaniem musi być włączona w dowolnym magazynie przechowującym klucze szyfrowania kluczy w celu ochrony przed przypadkowym lub złośliwym wymazywaniem kryptograficznym. Zamiast usuwać klucz, zaleca się ustawienie wartości false dla klucza szyfrowania klucza. Użyj kontroli dostępu, aby odwołać dostęp do poszczególnych użytkowników lub usług w usłudze Azure Key Vault lub zarządzanym module HSM.

Dostęp do klucza

Model szyfrowania po stronie serwera z kluczami zarządzanymi przez klienta w usłudze Azure Key Vault obejmuje dostęp do kluczy w celu szyfrowania i odszyfrowania zgodnie z potrzebami. Szyfrowanie kluczy magazynowanych jest dostępne dla usługi za pośrednictwem zasad kontroli dostępu. Te zasady udzielają dostępu tożsamości usługi do odbierania klucza. Usługę platformy Azure działającą w imieniu skojarzonej subskrypcji można skonfigurować przy użyciu tożsamości w tej subskrypcji. Usługa może przeprowadzić uwierzytelnianie firmy Microsoft Entra i otrzymać token uwierzytelniania identyfikujący się jako ta usługa działająca w imieniu subskrypcji. Ten token można następnie przedstawić usłudze Key Vault, aby uzyskać klucz, do którego udzielono mu dostępu.

W przypadku operacji korzystających z kluczy szyfrowania można udzielić tożsamości usługi dostępu do dowolnej z następujących operacji: odszyfrowywania, szyfrowania, odpakowywaniakey, zawijaniakey, weryfikowania, podpisywania, pobierania, wyświetlania, aktualizowania, tworzenia, importowania, usuwania, tworzenia kopii zapasowej i przywracania.

Aby uzyskać klucz do użycia w szyfrowaniu lub odszyfrowywaniu danych magazynowanych, tożsamość usługi uruchomiona przez wystąpienie usługi Resource Manager musi mieć klucz UnwrapKey (aby uzyskać klucz do odszyfrowywania) i WrapKey (aby wstawić klucz do magazynu kluczy podczas tworzenia nowego klucza).

Uwaga

Aby uzyskać więcej informacji na temat autoryzacji usługi Key Vault, zobacz stronę Zabezpieczanie magazynu kluczy w dokumentacji usługi Azure Key Vault.

Zalety

  • Pełna kontrola nad używanymi kluczami — klucze szyfrowania są zarządzane w usłudze Key Vault klienta pod kontrolą klienta.
  • Możliwość szyfrowania wielu usług do jednego wzorca
  • Może segregować zarządzanie kluczami z ogólnego modelu zarządzania dla usługi
  • Może definiować usługę i lokalizację klucza w różnych regionach

Wady

  • Klient ponosi pełną odpowiedzialność za zarządzanie dostępem do kluczy
  • Klient ponosi pełną odpowiedzialność za zarządzanie cyklem życia kluczy
  • Dodatkowe obciążenie związane z konfiguracją i konfiguracją

Szyfrowanie po stronie serwera przy użyciu kluczy zarządzanych przez klienta w sprzęcie kontrolowanym przez klienta

Niektóre usługi platformy Azure umożliwiają model zarządzania kluczami hosta własnego klucza (HYOK). Ten tryb zarządzania jest przydatny w scenariuszach, w których istnieje potrzeba zaszyfrowania danych magazynowanych i zarządzania kluczami w zastrzeżonym repozytorium poza kontrolą firmy Microsoft. W tym modelu usługa musi użyć klucza z lokacji zewnętrznej, aby odszyfrować klucz szyfrowania danych (DEK). Ma to wpływ na gwarancje dotyczące wydajności i dostępności, a konfiguracja jest bardziej złożona. Ponadto, ponieważ usługa ma dostęp do klucza szyfrowania i odszyfrowywania podczas operacji szyfrowania i odszyfrowywania, ogólne gwarancje zabezpieczeń tego modelu są podobne do kluczy zarządzanych przez klienta w usłudze Azure Key Vault. W związku z tym ten model nie jest odpowiedni dla większości organizacji, chyba że mają określone wymagania dotyczące zarządzania kluczami. Ze względu na te ograniczenia większość usług platformy Azure nie obsługuje szyfrowania po stronie serwera przy użyciu kluczy zarządzanych przez klienta na sprzęcie kontrolowanym przez klienta. Jeden z dwóch kluczy w usłudze Double Key Encryption jest zgodny z tym modelem.

Dostęp do klucza

Gdy używane jest szyfrowanie po stronie serwera przy użyciu kluczy zarządzanych przez klienta na sprzęcie kontrolowanym przez klienta, klucze szyfrowania kluczy są przechowywane w systemie skonfigurowanym przez klienta. Usługi platformy Azure, które obsługują ten model, zapewniają sposób ustanawiania bezpiecznego połączenia z magazynem kluczy dostarczonym przez klienta.

Zalety

  • Pełna kontrola nad używanym kluczem głównym — klucze szyfrowania są zarządzane przez magazyn dostarczony przez klienta
  • Możliwość szyfrowania wielu usług do jednego wzorca
  • Może segregować zarządzanie kluczami z ogólnego modelu zarządzania dla usługi
  • Może definiować usługę i lokalizację klucza w różnych regionach

Wady

  • Pełna odpowiedzialność za magazyn kluczy, zabezpieczenia, wydajność i dostępność
  • Pełna odpowiedzialność za zarządzanie dostępem do kluczy
  • Pełna odpowiedzialność za zarządzanie cyklem życia kluczy
  • Znaczne koszty instalacji, konfiguracji i bieżącej konserwacji
  • Zwiększona zależność od dostępności sieci między centrum danych klienta i centrami danych platformy Azure.

Usługi pomocnicze

Usługi platformy Azure, które obsługują każdy model szyfrowania:

Produkt, funkcja lub usługa Po stronie serwera przy użyciu klucza zarządzanego przez usługę Po stronie serwera przy użyciu klucza zarządzanego przez klienta Po stronie klienta przy użyciu klucza zarządzanego przez klienta
Edukacja sztucznej inteligencji i maszyny
Azure AI Search Tak Tak -
Usługi sztucznej inteligencji platformy Azure Tak Tak, w tym zarządzany moduł HSM -
Uczenie maszynowe Azure Tak Tak -
Content Moderator Tak Tak, w tym zarządzany moduł HSM -
Rozpoznawanie twarzy Tak Tak, w tym zarządzany moduł HSM -
Language Understanding Tak Tak, w tym zarządzany moduł HSM -
Azure OpenAI Tak Tak, w tym zarządzany moduł HSM -
Personalizacja Tak Tak, w tym zarządzany moduł HSM -
QnA Maker Tak Tak, w tym zarządzany moduł HSM -
Usługi mowy Tak Tak, w tym zarządzany moduł HSM -
Tłumaczenie tekstu w usłudze Translator Tak Tak, w tym zarządzany moduł HSM -
Power BI Tak Tak, RSA 4096-bitowy -
Analiza
Azure Stream Analytics Tak Tak**, w tym zarządzany moduł HSM -
Event Hubs Tak Tak -
Funkcje Tak Tak -
Azure Analysis Services Tak - -
Azure Data Catalog Tak - -
Azure HDInsight Tak Tak -
Azure Monitor Application Insights Tak Tak -
Azure Monitor Log Analytics Tak Tak, w tym zarządzany moduł HSM -
Azure Data Explorer Tak Tak -
Azure Data Factory Tak Tak, w tym zarządzany moduł HSM -
Azure Data Lake Store Tak Tak, RSA 2048-bitowy -
Kontenery
Azure Kubernetes Service Tak Tak, w tym zarządzany moduł HSM -
Container Instances Tak Tak -
Container Registry Tak Tak -
Środowisko obliczeniowe
Virtual Machines Tak Tak, w tym zarządzany moduł HSM -
Zestaw skalowania maszyn wirtualnych Tak Tak, w tym zarządzany moduł HSM -
SAP HANA Tak Tak -
App Service Tak Tak**, w tym zarządzany moduł HSM -
Automatyzacja Tak Tak -
Azure Functions Tak Tak**, w tym zarządzany moduł HSM -
Azure Portal Tak Tak**, w tym zarządzany moduł HSM -
Rozwiązanie Azure VMware Tak Tak, w tym zarządzany moduł HSM -
Logic Apps Tak Tak -
Aplikacje zarządzane przez platformę Azure Tak Tak**, w tym zarządzany moduł HSM -
Service Bus Tak Tak -
Site Recovery Tak Tak -
Bazy danych
Program SQL Server w usłudze Virtual Machines Tak Tak Tak
Azure SQL Database Tak Tak, RSA 3072-bitowy, w tym zarządzany moduł HSM Tak
Wystąpienie zarządzane Azure SQL Tak Tak, RSA 3072-bitowy, w tym zarządzany moduł HSM Tak
Azure SQL Database for MariaDB Tak - -
Azure SQL Database for MySQL Tak Tak -
Azure SQL Database for PostgreSQL Tak Tak, w tym zarządzany moduł HSM -
Azure Synapse Analytics (dedykowana pula SQL (wcześniej tylko usługa SQL DW) Tak Tak, RSA 3072-bitowy, w tym zarządzany moduł HSM -
SQL Server Stretch Database Tak Tak, RSA 3072-bitowy Tak
Table Storage Tak Tak Tak
Azure Cosmos DB Tak (dowiedz się więcej) Tak, w tym zarządzany moduł HSM (dowiedz się więcej i dowiedz się więcej) -
Azure Databricks Tak Tak, w tym zarządzany moduł HSM -
Usługa Azure Database Migration Service Tak Nie dotyczy* -
Tożsamość
Tożsamość Microsoft Entra Tak - -
Usługi domenowe Microsoft Entra Tak Tak -
Integracja aplikacji
Service Bus Tak Tak -
Event Grid Tak - -
API Management Tak - -
Usługi IoT
IoT Hub Tak Tak Tak
Aprowizowanie urządzeń w usłudze IoT Hub Tak Tak -
Zarządzanie i ład
Azure Managed Grafana Tak - Nie dotyczy
Azure Site Recovery Tak - -
Azure Migrate Tak Tak -
Multimedia
Media Services Tak Tak Tak
Bezpieczeństwo
Microsoft Defender for IoT Tak Tak -
Microsoft Sentinel Tak Tak, w tym zarządzany moduł HSM -
Storage
Blob Storage Tak Tak, w tym zarządzany moduł HSM Tak
Usługa Blob Storage w warstwie Premium Tak Tak, w tym zarządzany moduł HSM Tak
Disk Storage Tak Tak, w tym zarządzany moduł HSM -
Ultra Disk Storage Tak Tak, w tym zarządzany moduł HSM -
Managed Disk Storage Tak Tak, w tym zarządzany moduł HSM -
File Storage Tak Tak, w tym zarządzany moduł HSM -
File Premium Storage Tak Tak, w tym zarządzany moduł HSM -
File Sync Tak Tak, w tym zarządzany moduł HSM -
Queue Storage Tak Tak, w tym zarządzany moduł HSM Tak
Usługa Data Lake Storage 2. generacji Tak Tak, w tym zarządzany moduł HSM Tak
Avere vFXT Tak - -
Azure Cache for Redis Tak Nie dotyczy* -
Azure NetApp Files Tak Tak Tak
Archive Storage Tak Tak -
Magazyn StorSimple Tak Tak Tak
Azure Backup Tak Tak, w tym zarządzany moduł HSM Tak
Data Box Tak - Tak
Data Box Edge Tak Tak -
Inne
Usługa Azure Data Manager for Energy (wersja zapoznawcza) Tak - Tak

* Ta usługa nie utrzymuje danych. Przejściowe pamięci podręczne, jeśli istnieją, są szyfrowane przy użyciu klucza firmy Microsoft.

** Ta usługa obsługuje przechowywanie danych we własnym magazynie Key Vault, koncie magazynu lub innej usłudze utrwalania danych, która obsługuje już szyfrowanie po stronie serwera za pomocą klucza zarządzanego przez klienta.

Następne kroki