Transparent Data Encryption for Azure Synapse Analytics

Tip

Microsoft Fabric Data Warehouse is een relationeel warehouse op ondernemingsniveau op data lake-basis, met een architectuur die klaar is voor de toekomst, ingebouwde AI en nieuwe functies. Als u nieuw bent in gegevensopslag, begin dan met Fabric Data Warehouse. Bestaande dediceerde SQL-poolworkloads kunnen upgraden naar Fabric voor toegang tot nieuwe mogelijkheden in data science, realtime analyses en rapportage.

Van toepassing op: Toegewezen SQL-pools van Azure Synapse Analytics (voorheen SQL DW)

Transparent Data Encryption (TDE) beschermt een speciale SQL-pool tegen kwaadaardige offline activiteiten door databasebestanden, transactielogbestanden en back-ups in rust te versleutelen. Versleuteling en ontsleuteling vinden in realtime plaats en vereisen geen applicatiewijzigingen.

Je moet TDE handmatig inschakelen voor een Azure Synapse Analytics standalone dedicated SQL pool.

TDE voert realtime I/O-versleuteling en ontsleuteling van de gegevens op paginaniveau uit. Elke pagina wordt ontsleuteld wanneer deze in het geheugen wordt gelezen en vervolgens versleuteld voordat deze naar de schijf wordt geschreven. TDE versleutelt de opslag van een hele database met behulp van een symmetrische sleutel met de naam Database Encryption Key (DEK). Bij het opstarten van de database wordt de versleutelde DEK ontsleuteld en vervolgens gebruikt voor ontsleuteling en herversleuteling van de databasebestanden in het SQL Server-database-engineproces. De TDE-beschermer beschermt de DEK. De TDE-beschermer is ofwel een door de service beheerd certificaat (door de service beheerde transparante gegevensversleuteling).

Voor Azure Synapse stel je de TDE-beschermer in op serverniveau en alle databases die aan die server gekoppeld zijn, erven die.

Note

Dit artikel behandelt standalone dedicated SQL pools (voorheen SQL DW) die op een logische server worden gehost. Voor dedicated SQL pools in een Synapse workspace, zie Encryption for Azure Synapse Analytics workspaces.

Hoe TDE werkt

TDE versleutelt databasepagina's met behulp van een symmetrische database-encryptiesleutel (DEK). De DEK wordt opgeslagen in het databasebootrecord en de TDE-beschermer beschermt het. De beveiliging is een door de dienst beheerd certificaat.

Je configureert de TDE-beschermer op de logische server en de dedicated SQL-pools op die server erven die. Elke pagina wordt ontsleuteld wanneer deze in het geheugen wordt gelezen en versleuteld voordat deze naar opslag wordt geschreven.

Service-managed TDE

In Azure is de standaardinstelling voor TDE dat de DEK wordt beveiligd door een ingebouwd servercertificaat. Het ingebouwde servercertificaat is uniek voor elke server en het gebruikte versleutelingsalgoritme is AES 256 in Cipher Block Chaining (CBC)-modus. Als een database zich in een geo-replicatierelatie bevindt, worden zowel de primaire als de geo-secundaire databases beveiligd door de bovenliggende serversleutel van de primaire database. Als twee databases zijn verbonden met dezelfde server, delen ze ook hetzelfde ingebouwde certificaat. Microsoft roteert deze certificaten automatisch één keer per jaar, in overeenstemming met het interne beveiligingsbeleid en de hoofdsleutel wordt beveiligd door een intern geheimarchief van Microsoft. Klanten kunnen controleren of SQL Database en SQL Managed Instance voldoen aan het interne beveiligingsbeleid in onafhankelijke auditrapporten van derden die beschikbaar zijn in het Microsoft Trust Center. Microsoft verplaatst en beheert de sleutels ook naadloos, indien nodig voor geo-replicatie en herstelbewerkingen.

Door de klant beheerd TDE

Bij klantbeheerde TDE is de protector een asymmetrische sleutel die je beheert in Azure Key Vault of Azure Key Vault Managed HSM. Jij beheert het aanmaken van cryptografische sleutels, toegangsrechten, rotatie, back-up en verwijdering. De sleutel verlaat de sleutelopslag niet.

Het intrekken van de toegang van de logische server tot de sleutel maakt versleutelde dedicated SQL-pools ontoegankelijk. Bescherm de key store met soft delete, purge-protection, monitoring en least-privilege access.

Azure Synapse moet rechten krijgen voor de door de klant beheerde Key Vault om de DEK te ontsleutelen en te versleutelen. Als machtigingen van de server voor de sleutelkluis worden ingetrokken, is een database niet toegankelijk en worden alle gegevens versleuteld.

Voor vereisten en aanbevelingen, zie Customer-managed TDE for Azure Synapse Analytics.

Verplaats een database met Transparent Data Encryption

U hoeft databases niet te ontsleutelen voor bewerkingen in Azure. De TDE-instellingen voor de brondatabase of primaire database worden transparant overgenomen op het doel. Bewerkingen die zijn opgenomen, omvatten:

  • Geo-herstel
  • Selfservice voor herstel op een specifiek tijdstip
  • Herstel van een verwijderde database
  • Actieve geo-replicatie
  • Een databasekopie maken

Wanneer u een met TDE beveiligde database exporteert naar een BACPAC-bestand, wordt de geëxporteerde inhoud van de database niet versleuteld. Als u in een bestaande lege database importeert, is de versleuteling afhankelijk van of TDE is ingeschakeld voor die database of niet.

Beheer Transparent Data Encryption

Azure portal

Om TDE in of uit te schakelen, open je de speciale SQL-pool in het Azure-portaal, selecteer je Transparante gegevensversleuteling en sla je de vereiste status op. Om een door klanten beheerde beveiligingsfunctie te configureren, open je Transparent data-encryptie op de logische server en selecteer je de sleutel uit Azure Key Vault. Zoek de TDE-instellingen onder uw gebruikersdatabase. Standaard wordt versleutelingssleutel op serverniveau gebruikt. Er wordt automatisch een TDE-certificaat gegenereerd voor de server die de database bevat.

PowerShell

TDE beheren met behulp van PowerShell.

Important

De Az-module vervangt AzureRM. Alle toekomstige ontwikkeling is voor de Az.Sql module.

Als u TDE wilt configureren via PowerShell, moet u zijn verbonden als Azure-eigenaar, -inzender of SQL Security Manager.

Gebruik de volgende Az.Sql cmdlets:

Cmdlet Purpose
Set-AzSqlDatabaseTransparentDataEncryption Schakel TDE in of uit voor een dedicated SQL-pool.
Get-AzSqlDatabaseTransparentDataEncryption Haal de huidige TDE-status op.
Add-AzSqlServerKeyVaultKey Voeg een sleutel toe aan de logische server.
Get-AzSqlServerKeyVaultKey Toon de sleutels die beschikbaar zijn voor de logische server.
Set-AzSqlServerTransparentDataEncryptionProtector Stel de TDE-beschermer van de server in.
Get-AzSqlServerTransparentDataEncryptionProtector Haal de huidige TDE-beveiliging.
Remove-AzSqlServerKeyVaultKey Verwijder een sleutel van de logische server.

Transact-SQL

TDE beheren met behulp van Transact-SQL.

Maak verbinding met de database met behulp van een aanmelding die een beheerder of lid is van de dbmanager- rol in de master-database.

Command Description
ALTER DATABASE (Azure SQL Database) SET ENCRYPTION ON/OFF versleutelt of ontsleutelt een database
sys.dm_database_encryption_keys Retourneert informatie over de versleutelingsstatus van een database en de bijbehorende databaseversleutelingssleutels
sys.dm_pdw_nodes_database_encryption_keys Retourneert informatie over de versleutelingsstatus van elk Azure Synapse-knooppunt en de bijbehorende databaseversleutelingssleutels

Je kunt de TDE-beschermer niet overschakelen naar een sleutel van Azure Key Vault door Transact-SQL te gebruiken. Gebruik PowerShell of Azure Portal.

REST API

De volgende SQL-beheerbronnen zijn van toepassing op de logische server en de dedicated SQL-pool.

Als u TDE wilt configureren via de REST API, moet u zijn verbonden als azure-eigenaar, -inzender of SQL Security Manager.

Gebruik de volgende set commando's voor Azure Synapse Analytics standalone dedicated SQL pools:

Command Description
Server- maken of bijwerken Voegt een identiteit van Microsoft Entra ID (voorheen Azure Active Directory) toe aan een server. (wordt gebruikt om toegang te verlenen tot Azure Key Vault)
Serversleutel maken of bijwerken Voegt een Azure Key Vault-sleutel toe aan een server.
Serversleutel verwijderen Hiermee verwijdert u een Azure Key Vault-sleutel van een server.
Serversleutels ophalen Hiermee haalt u een specifieke Azure Key Vault-sleutel op van een server.
Serversleutels per server weergeven Hiermee haalt u de Azure Key Vault-sleutels voor een server op.
versleutelingsbeveiliging maken of bijwerken Hiermee stelt u de TDE-beveiliging voor een server in.
Versleutelingsbeveiliging ophalen Verkrijgt de TDE-bescherming voor een server.
Versleutelingsbeveiligingen per server weergeven Hiermee haal je de TDE-beveiligingen voor een server op.
Configuratie van Transparente Gegevensversleuteling maken of bijwerken Hiermee schakelt u TDE in of uit voor een database.
Transparante gegevensversleutelingsconfiguratie ophalen Hiermee haalt u de TDE-configuratie voor een database op.
Lijst van resultaten van transparante data-encryptieconfiguratie Hiermee haalt u het versleutelingsresultaat voor een database op.