Transparent Data Encryption for Azure Synapse Analytics

Wskazówka

Microsoft Fabric Data Warehouse to magazyn relacyjny w skali przedsiębiorstwa na podstawie bazy danych data lake z architekturą gotową do użycia w przyszłości, wbudowaną sztuczną inteligencją i nowymi funkcjami. Jeśli dopiero zaczynasz korzystać z magazynowania danych, zacznij od Fabric Data Warehouse. Istniejące obciążenia dedykowanej puli SQL mogą zostać zaktualizowane do Fabric, aby uzyskać dostęp do nowych możliwości w zakresie nauki o danych, analizy w czasie rzeczywistym i raportowania.

Dotyczy: Dedykowane pule SQL dla Azure Synapse Analytics (poprzednio SQL DW)

Transparent Data Encryption (TDE) chroni dedykowaną pulę SQL przed złośliwą aktywnością offline poprzez szyfrowanie plików bazy danych, plików dziennika transakcji oraz kopii zapasowych w spoczynku. Szyfrowanie i deszyfrowanie odbywają się w czasie rzeczywistym i nie wymagają zmian w aplikacji.

Musisz ręcznie włączyć TDE dla samodzielnej, dedykowanej puli SQL Azure Synapse Analytics.

Funkcja TDE wykonuje szyfrowanie we/wy w czasie rzeczywistym i odszyfrowywanie danych na poziomie strony. Każda strona jest odszyfrowywana podczas wczytywania do pamięci, a następnie szyfrowana przed zapisaniem na dysku. Funkcja TDE szyfruje magazyn całej bazy danych przy użyciu klucza symetrycznego o nazwie Klucz szyfrowania bazy danych (DEK). Podczas uruchamiania bazy danych zaszyfrowany klucz szyfrowania danych jest odszyfrowywany, a następnie używany do odszyfrowywania i ponownego szyfrowania plików bazy danych w procesie silnika bazy danych programu SQL Server. Osłona TDE chroni DEK. Ochrona TDE jest certyfikatem zarządzanym przez usługę (przezroczyste szyfrowanie danych zarządzane przez usługę).

W przypadku Azure Synapse ustawiasz protektor TDE na poziomie serwera i wszystkie bazy danych powiązane z tym serwerem go dziedziczą.

Note

Ten artykuł omawia samodzielne dedykowane pule SQL (dawniej SQL DW) hostowane na serwerze logicznym. Informacje o dedykowanych pulach SQL w obszarze roboczym Synapse można znaleźć w artykule Encryption for Azure Synapse Analytics workspaces.

Jak działa TDE

TDE szyfruje strony bazy danych za pomocą symetrycznego klucza szyfrowania bazy danych (DEK). DEK jest przechowywany w rekordzie rozruchowym bazy danych, a protektor TDE go chroni. Protektor to certyfikat zarządzany przez usługę.

Konfigurujesz ochronę TDE na serwerze logicznym, a dedykowane pule SQL na tym serwerze ją dziedziczą. Każda strona jest odszyfrowywana po odczytaniu do pamięci i szyfrowana przed zapisem do pamięci masowej.

TDE zarządzane przez usługę

W domyślnej konfiguracji szyfrowania TDE na platformie Azure klucz szyfrowania jest chroniony przez wbudowany certyfikat serwera. Wbudowany certyfikat serwera jest unikatowy dla każdego serwera, a używanym algorytmem szyfrowania jest AES 256 w trybie Cipher Block Chaining (CBC). Jeśli baza danych jest w relacji replikacji geograficznej, zarówno podstawowa, jak i pomocnicza baza danych z replikacją geograficzną są chronione przez klucz serwera nadrzędnego podstawowej bazy danych. Jeśli dwie bazy danych są połączone z tym samym serwerem, używają tego samego wbudowanego certyfikatu. Microsoft automatycznie obraca te certyfikaty raz w roku, zgodnie z wewnętrzną polityką bezpieczeństwa, a klucz główny jest chroniony przez wewnętrzne magazyn tajnych danych firmy Microsoft. Klienci mogą weryfikować zgodność usług SQL Database i SQL Managed Instance z wewnętrznymi zasadami zabezpieczeń w niezależnych raportach inspekcji innych firm dostępnych w Centrum zaufania firmy Microsoft. Firma Microsoft także bezproblemowo przenosi klucze i zarządza nimi w razie potrzeby na potrzeby replikacji geograficznej i przywracania.

TDE zarządzane przez klienta

W TDE zarządzanym przez klienta ochraniacz to asymetryczny klucz, którym sterujesz w Azure Key Vault lub Azure Key Vault Managed HSM. Kontrolujesz tworzenie kluczy, uprawnienia dostępu, rotację, kopię zapasową i usuwanie. Klucz nie opuszcza magazynu kluczy.

Cofnięcie dostępu serwera logicznego do klucza sprawia, że zaszyfrowane dedykowane pule SQL są niedostępne. Chroń magazyn kluczy poprzez miękkie usuwanie, ochronę przed trwałym usunięciem, monitorowanie oraz dostęp z najniższymi uprawnieniami.

Azure Synapse musi otrzymać uprawnienia do magazynu kluczy należącego do klienta, aby odszyfrować i zaszyfrować DEK. Jeśli uprawnienia serwera do magazynu kluczy zostaną odwołane, baza danych będzie niedostępna i wszystkie dane są szyfrowane.

Wymagania i rekomendacje można znaleźć w Customer-managed TDE for Azure Synapse Analytics.

Przenieś bazę danych chronioną przez Transparent Data Encryption

Nie musisz odszyfrowywać baz danych na potrzeby operacji na platformie Azure. Ustawienia funkcji TDE w głównej bazie danych są automatycznie dziedziczone na obiekcie docelowym. Operacje, które są uwzględnione, obejmują:

  • Przywracanie geograficzne danych
  • Samoobsługowe przywracanie danych do wybranego momentu w czasie
  • Przywracanie usuniętej bazy danych
  • Aktywna replikacja geograficzna
  • Tworzenie kopii bazy danych

Podczas eksportowania bazy danych chronionej przez funkcję TDE do pliku BACPAC wyeksportowana zawartość bazy danych nie jest szyfrowana. Jeśli importujesz do istniejącej pustej bazy danych, szyfrowanie zależy od tego, czy funkcja TDE jest włączona dla tej bazy danych, czy nie.

Zarządzanie funkcją Transparent Data Encryption

Azure Portal

Aby włączyć lub wyłączyć TDE, otwórz dedykowaną pulę SQL w portalu Azure, wybierz Transparent data encryption i zapisz wymagany stan. Aby skonfigurować protektor zarządzany przez klienta, otwórz Transparent Data Encryption na serwerze logicznym i wybierz klucz z Azure Key Vault. Znajdź ustawienia TDE w bazie danych użytkownika. Domyślnie używany jest klucz szyfrowania na poziomie serwera. Certyfikat TDE jest generowany automatycznie dla serwera zawierającego bazę danych.

PowerShell

Zarządzaj TDE za pomocą PowerShell.

Important

Moduł Az zastępuje AzureRM. Cały przyszły rozwój jest przeznaczony dla modułu Az.Sql.

Aby skonfigurować funkcję TDE za pomocą programu PowerShell, musisz mieć połączenie jako właściciel, współautor platformy Azure lub menedżer zabezpieczeń SQL.

Użyj następujących cmdletów Az.SQL:

cmdlet Purpose
Set-AzSqlDatabaseTransparentDataEncryption Włącz lub wyłącz TDE dla dedykowanej puli SQL.
Get-AzSqlDatabaseTransparentDataEncryption Pobierz aktualny stan TDE.
Add-AzSqlServerKeyVaultKey Dodaj klucz do serwera logicznego.
Get-AzSqlServerKeyVaultKey Wyświetl klucze dostępne dla serwera logicznego.
Set-AzSqlServerTransparentDataEncryptionProtector Ustaw protektor TDE serwera.
Get-AzSqlServerTransparentDataEncryptionProtector Pobierz bieżący protektor TDE.
Remove-AzSqlServerKeyVaultKey Usuń klucz z serwera logicznego.

Transact-SQL

Zarządzanie szyfrowaniem TDE przy użyciu języka Transact-SQL.

Nawiąż połączenie z bazą danych używając loginu, który jest administratorem lub członkiem roli dbmanager w master bazie danych.

Command Description
ALTER DATABASE (Azure SQL Database) SET ENCRYPTION ON/OFF szyfruje lub odszyfrowuje bazę danych
sys.dm_database_encryption_keys Zwraca informacje o stanie szyfrowania bazy danych i skojarzonych z nią kluczach szyfrowania bazy danych
sys.dm_pdw_nodes_database_encryption_keys Zwraca informacje o stanie szyfrowania każdego węzła usługi Azure Synapse i skojarzonych z nim kluczy szyfrowania bazy danych

Nie można przełączyć ochrony TDE na klucz z Azure Key Vault, używając Transact-SQL. Użyj programu PowerShell lub witryny Azure Portal.

interfejs API REST

Poniższe zasoby zarządzania SQL dotyczą serwera logicznego oraz dedykowanej puli SQL.

Aby skonfigurować funkcję TDE za pośrednictwem interfejsu API REST, musisz mieć połączenie jako właściciel, współautor platformy Azure lub menedżer zabezpieczeń SQL.

Użyj następującego zestawu poleceń dla samodzielnych dedykowanych pul SQL w Azure Synapse Analytics:

Command Description
Tworzenie lub aktualizowanie serwera Dodaje tożsamość z usługi Microsoft Entra ID (dawniej Azure Active Directory) do serwera. (służy do udzielania dostępu do usługi Azure Key Vault)
Tworzenie lub aktualizowanie klucza serwera Dodaje klucz usługi Azure Key Vault do serwera.
Usuwanie klucza serwera Usuwa klucz usługi Azure Key Vault z serwera.
Uzyskiwanie kluczy serwera Pobiera określony klucz usługi Azure Key Vault z serwera.
Lista kluczy serwerowych według serwera Pobiera klucze usługi Azure Key Vault dla serwera.
Tworzenie lub aktualizowanie funkcji ochrony szyfrowania Ustawia funkcję ochrony TDE dla serwera.
Pobierz Ochraniacz Szyfrowania Pobiera osłonę TDE dla serwera.
Wyświetlanie listy funkcji ochrony szyfrowania według serwera Pobiera zabezpieczenia TDE dla serwera.
Tworzenie lub aktualizowanie konfiguracji przezroczystego szyfrowania danych Włącza lub wyłącza funkcję TDE dla bazy danych.
Uzyskiwanie konfiguracji funkcji Transparent Data Encryption Pobiera konfigurację TDE dla bazy danych.
Wypisz wyniki konfiguracji transparentnego szyfrowania danych Pobiera wynik szyfrowania bazy danych.