Transparent datakryptering för SQL Database, SQL Managed Instance och Azure Synapse Analytics
GÄLLER FÖR:
Azure SQL Database Azure SQL Managed Instance
Azure Synapse Analytics
Transparent datakryptering (TDE) hjälper till att skydda Azure SQL Database, Azure SQL Managed Instance och Azure Synapse Analytics mot hot om skadlig offlineaktivitet genom att kryptera vilodata. TDE utför realtidskryptering och realtidsdekryptering av databasen, tillhörande säkerhetskopior och transaktionsloggfiler i vila, utan att några ändringar krävs i programmet. Som standard är TDE aktiverat för alla nyligen distribuerade Azure SQL-databaser och måste aktiveras manuellt för äldre databaser Azure SQL Database. För Azure SQL Managed Instance är TDE aktiverat på instansnivå och nyligen skapade databaser. TDE måste aktiveras manuellt för Azure Synapse Analytics.
Anteckning
Den här artikeln gäller Azure SQL Database, Azure SQL Managed Instance och Azure Synapse Analytics (dedikerade SQL-pooler (tidigare SQL DW)). Dokumentation om hur transparent datakryptering dedikerade SQL i Synapse-arbetsytor finns i Azure Synapse Analytics kryptering.
TDE utför I/O-kryptering i realtid och dekryptering av data på sidnivå. Varje sida dekrypteras när de läses in i minnet och krypteras sedan innan de skrivs tillbaka till disken. TDE krypterar lagringen av en hel databas med hjälp av en symmetrisk nyckel som kallas databaskrypteringsnyckel (DEK). Vid databasstart dekrypteras den krypterade DEK:n och används sedan för dekryptering och omkryptering av databasfilerna SQL Server databasmotorn. DEK skyddas av TDE-skyddet. TDE-skydd är antingen ett tjänst hanterat certifikat (tjänst-hanterad transparent datakryptering) eller en asymmetrisk nyckel som lagras i Azure Key Vault (kund-hanterad transparent datakryptering).
För Azure SQL Database och Azure Synapse anges TDE-skyddet på servernivå och ärvs av alla databaser som är associerade med den servern. För Azure SQL Managed Instance anges TDE-skyddet på instansnivå och ärvs av alla krypterade databaser på den instansen. Termen server refererar både till server och instans i hela det här dokumentet, om inget annat anges.
Viktigt
Alla nyligen skapade databaser i SQL Database krypteras som standard med hjälp av tjänsthanterad transparent datakryptering. Befintliga SQL databaser som skapats före maj 2017 och SQL-databaser som skapats via återställning, geo-replikering och databaskopiering krypteras inte som standard. Befintliga SQL Managed Instance-databaser som skapats före februari 2019 krypteras inte som standard. SQL Managed Instance-databaser som skapats via återställning ärver krypteringsstatus från källan. Om du vill återställa en befintlig TDE-krypterad databas måste det nödvändiga TDE-certifikatet först importeras till SQL Managed Instance.
Anteckning
TDE kan inte användas för att kryptera systemdatabaser, till exempel huvuddatabasen, i Azure SQL Database och Azure SQL Managed Instance. Huvuddatabasen innehåller objekt som behövs för att utföra TDE-åtgärderna på användardatabaserna. Vi rekommenderar att du inte lagrar känsliga data i systemdatabaserna. Infrastrukturkryptering distribueras nu, vilket krypterar systemdatabaserna, inklusive huvuddatabaserna.
Tjänst hanterad transparent datakryptering
I Azure är standardinställningen för TDE att DEK skyddas av ett inbyggt servercertifikat. Det inbyggda servercertifikatet är unikt för varje server. Den krypteringsalgoritm som används är AES 256. Om en databas finns i en geo-replikeringsrelation skyddas både den primära och den geo-sekundära databasen av den primära databasens överordnade servernyckel. Om två databaser är anslutna till samma server delar de även samma inbyggda certifikat. Microsoft roterar automatiskt dessa certifikat i enlighet med den interna säkerhetsprincipen och rotnyckeln skyddas av ett internt Microsoft-hemlighetsarkiv. Kunder kan kontrollera SQL Database och SQL hanterad instans följer interna säkerhetsprinciper i oberoende granskningsrapporter från tredje part som är tillgängliga i Microsoft Trust Center.
Microsoft flyttar och hanterar även sömlöst nycklarna efter behov för geo-replikering och återställningar.
Kundstyrd transparent datakryptering – Bring Your Own Key
Kund-hanterad TDE kallas även för byok-stöd (Bring Your Own Key) för TDE. I det här scenariot är TDE-skyddet som krypterar DEK en kund hanterad asymmetrisk nyckel som lagras i en kundägd och hanterad Azure Key Vault (Azures molnbaserade externa nyckelhanteringssystem) och lämnar aldrig nyckelvalvet. TDE-skyddet kan genereras av nyckelvalvet eller överföras till nyckelvalvet från en lokal maskinvarusäkerhetsmodul (HSM). SQL Database, SQL Managed Instance och Azure Synapse måste beviljas behörigheter till det kundägda nyckelvalvet för att dekryptera och kryptera DEK. Om serverns behörigheter till nyckelvalvet återkallas är en databas otillgänglig och alla data krypteras
Med TDE med Azure Key Vault-integrering kan användare styra nyckelhanteringsuppgifter som nyckelrotation, behörigheter för nyckelvalv, nyckelsäkerhetskopior och aktivera granskning/rapportering av alla TDE-skydd med hjälp Azure Key Vault funktioner. Key Vault tillhandahåller central nyckelhantering, utnyttjar noggrant övervakade HSM:er och möjliggör uppdelning av uppgifter mellan hantering av nycklar och data för att uppfylla efterlevnad av säkerhetsprinciper. Mer information om BYOK för Azure SQL Database och Azure Synapse finns i Transparent datakryptering med Azure Key Vault integrering.
Om du vill börja använda transparent datakryptering Azure Key Vault integreringen kan du gå till guiden Aktivera transparent datakryptering med hjälp av din egen nyckel från Key Vault.
Flytta en transparent datakrypteringsskyddad databas
Du behöver inte dekryptera databaser för åtgärder i Azure. TDE-inställningarna för källdatabasen eller den primära databasen ärvs transparent på målet. Åtgärder som ingår omfattar:
- Geo-återställning
- Återställning till tidpunkt med självbetjäning
- Återställning av en borttagna databas
- Aktiv geo-replikering
- Skapa en databaskopia
- Återställa en säkerhetskopia till Azure SQL Managed Instance
Viktigt
Det går inte att ta manuell säkerhetskopiering med ENDAST kopiering av en databas som krypterats av tjänst-hanterad TDE i Azure SQL Managed Instance, eftersom det certifikat som används för kryptering inte är tillgängligt. Använd funktionen för återställning till tidpunkt för att flytta den här typen av databas till en annan SQL hanterad instans eller växla till kund hanterad nyckel.
När du exporterar en TDE-skyddad databas krypteras inte det exporterade innehållet i databasen. Det här exporterade innehållet lagras i okrypterade BACPAC-filer. Se till att skydda BACPAC-filerna på rätt sätt och aktivera TDE när importen av den nya databasen är klar.
Om BACPAC-filen till exempel exporteras från en SQL Server-instans krypteras inte det importerade innehållet i den nya databasen automatiskt. Om BACPAC-filen importeras till en SQL Server-instans krypteras inte heller den nya databasen automatiskt.
Det enda undantaget är när du exporterar en databas till och från SQL Database. TDE är aktiverat på den nya databasen, men själva BACPAC-filen är fortfarande inte krypterad.
Hantera transparent datakryptering
Hantera TDE i Azure Portal.
Om du vill konfigurera TDE via Azure Portal måste du vara ansluten som Azure-ägare, deltagare eller SQL Security Manager.
Aktivera och inaktivera TDE på databasnivå. För Azure SQL Managed Instance använder du Transact-SQL (T-SQL) för att aktivera och inaktivera TDE på en databas. För Azure SQL Database och Azure Synapse kan du hantera TDE för databasen i Azure Portal när du har loggat in med Azure-administratörs- eller deltagarkontot. Hitta TDE-inställningarna under användardatabasen. Som standard används tjänst-hanterad transparent datakryptering. Ett TDE-certifikat genereras automatiskt för den server som innehåller databasen.

Du anger TDE-huvudnyckeln, som kallas TDE-skydd, på server- eller instansnivå. Om du vill använda TDE med BYOK-stöd och skydda dina databaser med en nyckel från Key Vault öppnar du TDE-inställningarna under servern.
