Udostępnij za pośrednictwem


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 wykona 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.

Zrzut ekranu przedstawiający serwer.

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.

Zrzut ekranu przedstawiający klienta.

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ń.

Zrzut ekranu przedstawiający zarządzaną.

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. Podczas gdy 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 obsługujące klucze zarządzane przez klienta (CMKs)

Oto usługi, które obsługują szyfrowanie po stronie serwera przy użyciu kluczy zarządzanych przez klienta:

Produkt, funkcja lub usługa Key Vault Zarządzany moduł HSM Dokumentacja
Sztuczna inteligencja i uczenie maszynowe
Azure AI Search Tak
Usługi sztucznej inteligencji platformy Azure Tak Tak
Azure AI Studio Tak Zestawy CMKs na potrzeby szyfrowania
Azure Machine Learning Tak
Azure OpenAI Tak Tak
Content Moderator Tak Tak
Dataverse Tak Tak
Dynamics 365 Tak Tak
Rozpoznawanie twarzy Tak Tak
Usługa Language Understanding Tak Tak
Usługa Personalizer Tak Tak
Power Platform Tak Tak
QnA Maker Tak Tak
Usługi mowy Tak Tak
Tłumaczenie tekstu w usłudze Translator Tak Tak
Analiza
Azure Data Explorer Tak
Azure Data Factory Tak Tak
Azure Data Lake Store Tak, RSA 2048-bitowy
Azure HDInsight Tak
Azure Monitor Application Insights Tak
Azure Monitor Log Analytics Tak Tak
Azure Stream Analytics Tak** Tak
Event Hubs Tak
Funkcje Tak
Microsoft Fabric Tak Szyfrowanie CMK
Usługa Power BI Embedded Tak BYOK dla usługi Power BI
Kontenery
Konfiguracja aplikacji Tak Szyfrowanie danych usługi App Configuration za pomocą zestawów CMKs
Azure Kubernetes Service Tak Tak
Azure Red Hat OpenShift Tak Szyfrowanie CMK
Container Instances Tak
Container Registry Tak
Środowisko obliczeniowe
App Service Tak** Tak
Automatyzacja Tak
Azure Functions Tak** Tak
Witryna Azure Portal Tak** Tak
Azure VMware Solution Tak Tak
Aplikacje zarządzane przez platformę Azure Tak** Tak
Batch Tak Konfigurowanie zestawów cmks
Logic Apps Tak
SAP HANA Tak
Service Bus Tak
Site Recovery Tak
Zestaw skalowania maszyn wirtualnych Tak Tak
Virtual Machines Tak Tak
Bazy danych
Azure Cosmos DB Tak Tak Konfigurowanie zestawów CMKs (Key Vault) i konfigurowanie zestawów CMKs (zarządzany moduł HSM)
Azure Database for MySQL Tak Tak
Azure Database for PostgreSQL Tak Tak
Azure Database Migration Service Nie dotyczy*
Azure Databricks Tak Tak
Azure Managed Instance for Apache Cassandra Tak Zestawy cmks
Azure SQL Database Tak, RSA 3072-bitowy Tak
Wystąpienie zarządzane Azure SQL Tak, RSA 3072-bitowy Tak
Azure Synapse Analytics (dedykowana pula SQL (wcześniej tylko usługa SQL DW) Tak, RSA 3072-bitowy Tak
Program SQL Server w usłudze Virtual Machines Tak
SQL Server Stretch Database Tak, RSA 3072-bitowy
Table Storage Tak
Hybrydowe i wielochmurowe
Azure Stack Edge Tak Azure Stack Edge: punkt odniesienia zabezpieczeń
Tożsamość
Usługi domenowe Microsoft Entra Tak
Integracja aplikacji
Azure Health Data Services Tak Konfigurowanie zestawów CMKs dla programu DICOM, konfigurowanie zestawów CMKs for FHIR
Service Bus Tak
Usługi IoT
IoT Hub Tak
Aprowizowanie urządzeń w usłudze IoT Hub Tak
Zarządzanie i ład
Azure Migrate Tak
Azure Monitor Tak Zestawy cmks
Multimedia
Media Services Tak
Bezpieczeństwo
Microsoft Defender dla Chmury Tak Punkt odniesienia zabezpieczeń: cmks
Usługa Microsoft Defender dla IoT Tak
Microsoft Sentinel Tak Tak
Storage
Magazyn archiwum Tak
Azure Backup Tak Tak
Azure Cache for Redis Tak** Tak
Azure Managed Lustre Tak Zestawy cmks
Azure NetApp Files Tak Tak
Azure Stack Edge Tak
Blob Storage Yes Tak
Data Lake Storage Gen2 Tak Tak
Disk Storage Tak Tak
File Premium Storage Tak Tak
File Storage Yes Tak
File Sync Tak Tak
Magazyn dysków zarządzanych Tak Tak
Premium Blob Storage Tak Tak
Queue Storage Tak Tak
StorSimple Tak
Magazyn w warstwie Ultra Disk Tak Tak
Inne
Azure Data Manager for Energy 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.

Wszystkie przejściowe dane przechowywane tymczasowo na dysku, takie jak pliki stronicowania lub pliki wymiany, są szyfrowane przy użyciu klucza firmy Microsoft (wszystkie warstwy) lub klucza zarządzanego przez klienta (przy użyciu warstw Flash przedsiębiorstwa i przedsiębiorstwa). Aby uzyskać więcej informacji, zobacz Konfigurowanie szyfrowania dysków w usłudze Azure Cache for Redis.