Azure Data Encryption i vila
Microsoft Azure innehåller verktyg för att skydda data enligt företagets säkerhets- och efterlevnadsbehov. Det här dokumentet fokuserar på:
- Hur data skyddas i vila i Microsoft Azure
- Beskriver de olika komponenter som deltar i implementeringen av dataskydd,
- Granskar för- och nackdelar med de olika metoderna för nyckelhanteringsskydd.
Kryptering i vila är ett vanligt säkerhetskrav. I Azure kan organisationer kryptera vilodata utan risk eller kostnad för en anpassad nyckelhanteringslösning. Organisationer har möjlighet att låta Azure hantera kryptering i vila helt. Dessutom har organisationer olika alternativ för att noggrant hantera krypterings- eller krypteringsnycklar.
Vad är kryptering i vila?
Kryptering är en säker kodning av data som används för att skydda data konfidentialitet. Kryptering i vila i Azure använder symmetrisk kryptering för att snabbt kryptera och dekryptera stora mängder data enligt en enkel konceptuell modell:
- En symmetrisk krypteringsnyckel används för att kryptera data när de skrivs till lagring.
- Samma krypteringsnyckel används för att dekryptera dessa data eftersom de är lätta att använda i minnet.
- Data kan partitioneras och olika nycklar kan användas för varje partition.
- Nycklar måste lagras på en säker plats med identitetsbaserad åtkomstkontroll och granskningsprinciper. Datakrypteringsnycklar som lagras utanför säkra platser krypteras med en nyckelkrypteringsnyckel på en säker plats.
I praktiken kräver nyckelhanterings- och kontrollscenarier, samt skalnings- och tillgänglighetskontroller, ytterligare konstruktioner. Microsoft Azure Begrepp och komponenter för kryptering i vila beskrivs nedan.
Syftet med kryptering i vila
Kryptering i vila ger dataskydd för lagrade data (i vila). Attacker mot vilodata omfattar försök att få fysisk åtkomst till maskinvaran där data lagras och sedan kompromettera inneslutna data. I en sådan attack kan en server hårddisk ha blivit felhanterad under underhållet, vilket gör att en angripare kan ta bort hårddisken. Senare skulle angriparen placera hårddisken i en dator under deras kontroll för att försöka komma åt data.
Kryptering i vila är utformat för att hindra angriparen från att komma åt okrypterade data genom att säkerställa att data krypteras på disk. Om en angripare får en hårddisk med krypterade data, men inte krypteringsnycklarna, måste angriparen motverka krypteringen för att läsa data. Den här attacken är mycket mer komplex och resurskrävande än att komma åt okrypterade data på en hårddisk. Därför rekommenderas kryptering i vila och är ett krav med hög prioritet för många organisationer.
Kryptering i vila kan också krävas av en organisations behov av datastyrning och efterlevnadsarbete. Bransch- och myndighetsregler som HIPAA, PCI och FedRAMP, fastställer specifika skydd vad gäller krav på dataskydd och kryptering. Kryptering i vila är en obligatorisk åtgärd som krävs för att uppfylla vissa av dessa föreskrifter. Mer information om Microsofts metod för FIPS 140-2-validering finns i Federal Information Processing Standard (FIPS) Publication 140-2.
Förutom att uppfylla efterlevnads- och regelkrav ger kryptering i vila skydd på djupet. Microsoft Azure en kompatibel plattform för tjänster, program och data. Det ger också omfattande anläggning och fysisk säkerhet, dataåtkomstkontroll och granskning. Det är dock viktigt att tillhandahålla ytterligare "överlappande" säkerhetsåtgärder om någon av de andra säkerhetsåtgärder misslyckas och kryptering i vila ger en sådan säkerhetsåtgärd.
Microsoft arbetar för kryptering i vila mellan molntjänster och ger kunderna kontroll över krypteringsnycklar och loggar för nyckelanvändning. Dessutom arbetar Microsoft med att kryptera alla kunddata i vila som standard.
Azure Encryption at Rest Components
Som tidigare beskrivits är målet med kryptering i vila att data som bevaras på disken krypteras med en hemlig krypteringsnyckel. För att uppnå det målet måste du tillhandahålla säker nyckelgenerering, lagring, åtkomstkontroll och hantering av krypteringsnycklarna. Även om informationen kan variera kan implementeringar av Kryptering i vila för Azure-tjänster beskrivas i termer som illustreras i följande diagram.

Azure Key Vault
Lagringsplatsen för krypteringsnycklarna och åtkomstkontrollen till dessa nycklar är central för en kryptering i vila-modellen. Nycklarna måste vara mycket säkra men hanterbara av angivna användare och tillgängliga för specifika tjänster. För Azure-tjänster Azure Key Vault den rekommenderade nyckellagringslösningen och ger en gemensam hanteringsupplevelse för alla tjänster. Nycklar lagras och hanteras i nyckelvalv, och åtkomst till ett nyckelvalv kan ges till användare eller tjänster. Azure Key Vault har stöd för kundskapande av nycklar eller import av kundnycklar för användning i kundbaserade krypteringsnyckelscenarier.
Azure Active Directory
Behörighet att använda nycklar som lagras i Azure Key Vault, antingen för att hantera eller komma åt dem för kryptering i vila och dekryptering, kan ges till Azure Active Directory konton.
Kuvertkryptering med en nyckelhierarki
Mer än en krypteringsnyckel används i en implementering av kryptering i vila. Lagring av en krypteringsnyckel i Azure Key Vault säker nyckelåtkomst och central hantering av nycklar. Tjänstens lokala åtkomst till krypteringsnycklar är dock effektivare för masskryptering och dekryptering än att interagera med Key Vault för varje dataåtgärd, vilket ger bättre kryptering och bättre prestanda. Om du begränsar användningen av en enda krypteringsnyckel minskar risken för att nyckeln komprometteras och kostnaden för omkryptering när en nyckel måste ersättas. Azure-modeller för kryptering i vila använder kuvertkryptering, där en nyckelkrypteringsnyckel krypterar en datakrypteringsnyckel. Den här modellen utgör en nyckelhierarki som bättre kan hantera prestanda- och säkerhetskrav:
- Datakrypteringsnyckel (DEK) – en symmetrisk AES256-nyckel som används för att kryptera en partition eller ett block med data, vilket ibland även kallas för en datanyckel. En enskild resurs kan ha många partitioner och många datakrypteringsnycklar. Kryptering av varje datablock med en annan nyckel gör krypteringsanalysattacker svårare. Och genom att hålla DEK:erna lokala för tjänsten kan du maximera prestandan genom att kryptera och dekryptera data.
- Nyckelkrypteringsnyckel (KEK) – en krypteringsnyckel som används för att kryptera datakrypteringsnycklarna med hjälp av kuvertkryptering, vilket även kallas omser. Användning av en nyckelkrypteringsnyckel som aldrig lämnar Key Vault själva datakrypteringsnycklarna kan krypteras och kontrolleras. Entiteten som har åtkomst till kek kan vara en annan än den entitet som kräver DEK. En entitet kan koordinatoråtkomst till DEK begränsa åtkomsten för varje DEK till en specifik partition. Eftersom KEK krävs för att dekryptera DEK:erna kan kunder radera DEK:er och data kryptografiskt genom att inaktivera KEK.
Resursproviders och programinstanser lagrar krypterade datakrypteringsnycklar som metadata. Endast en entitet med åtkomst till nyckelkrypteringsnyckeln kan dekryptera dessa datakrypteringsnycklar. Olika modeller av nyckellagring stöds. Mer information finns i datakrypteringsmodeller.
Kryptering i vila i Microsofts molntjänster
Microsoft Cloud-tjänster används i alla tre molnmodeller: IaaS, PaaS och SaaS. Nedan visas exempel på hur de passar in på varje modell:
- Programvarutjänster, som kallas programvara som en server eller SaaS, som har program som tillhandahålls av molnet, till exempel Microsoft 365.
- Plattformstjänster där kunder använder molnet för sådant som lagrings-, analys- och Service Bus-funktioner i sina program.
- Infrastrukturtjänster eller IaaS (Infrastruktur som en tjänst) där kunden distribuerar operativsystem och program som finns i molnet och eventuellt använder andra molntjänster.
Kryptering i vila för SaaS-kunder
SaaS-kunder (Programvara som en tjänst) har vanligtvis kryptering i vila aktiverat eller tillgängligt i varje tjänst. Microsoft 365 har flera alternativ för kunder att verifiera eller aktivera kryptering i vila. Information om hur Microsoft 365 tjänster finns i Kryptering i Microsoft 365.
Kryptering i vila för PaaS-kunder
PaaS-kundens data finns vanligtvis i en lagringstjänst, till exempel Blob Storage, men kan också cachelagras eller lagras i programkörningsmiljön, till exempel en virtuell dator. Om du vill se de tillgängliga alternativen för kryptering i vila undersöker du tabellen Datakrypteringsmodeller: stödtjänster för de lagrings- och programplattformar som du använder.
Kryptering i vila för IaaS-kunder
Kunder med infrastruktur som en tjänst (IaaS) kan ha en mängd olika tjänster och program som används. IaaS-tjänster kan aktivera kryptering i vila på virtuella Azure-datorer och virtuella hårddiskar i Azure med hjälp av Azure Disk Encryption.
Krypterad lagring
Precis som PaaS kan IaaS-lösningar utnyttja andra Azure-tjänster som lagrar data som krypteras i vila. I dessa fall kan du aktivera stöd för kryptering i vila som tillhandahålls av varje förbrukad Azure-tjänst. Datakrypteringsmodellerna: Stödtabellen för tjänster räknar upp de viktigaste lagrings-, tjänst- och programplattformarna och modellen för kryptering i vila som stöds.
Krypterad beräkning
Alla Managed Disks, ögonblicksbilder och avbildningar krypteras med hjälp Storage Service Encryption med hjälp av en tjänst hanterad nyckel. En mer fullständig kryptering i vila-lösning säkerställer att data aldrig bevaras i okrypterad form. När data bearbetas på en virtuell dator kan data bevaras i Windows växlingsfil eller Linux-växlingsfil, en kraschdump eller i en programlogg. För att säkerställa att dessa data krypteras i vila kan IaaS-program använda Azure Disk Encryption på en virtuell Azure IaaS-dator (Windows eller Linux) och en virtuell disk.
Anpassad kryptering i vila
Vi rekommenderar att IaaS-program använder Azure Disk Encryption och kryptering i vila som tillhandahålls av alla förbrukade Azure-tjänster när det är möjligt. I vissa fall, till exempel oregelbundna krypteringskrav eller icke-Azure-baserad lagring, kan utvecklare av ett IaaS-program behöva implementera kryptering i vila själva. Utvecklare av IaaS-lösningar kan bättre integrera med Azure-hantering och kundförväntningar genom att utnyttja vissa Azure-komponenter. Mer specifikt bör utvecklare använda tjänsten Azure Key Vault för att tillhandahålla säker nyckellagring samt ge sina kunder konsekventa alternativ för nyckelhantering med de flesta Azure-plattformstjänster. Dessutom bör anpassade lösningar använda Azure-Managed för att ge tjänstkonton åtkomst till krypteringsnycklar. Utvecklarinformation om Azure Key Vault och hanterade tjänstidentiteter finns i deras respektive SDK:er.
Stöd för krypteringsmodell för Azure-resursproviders
Microsoft Azure Tjänsterna stöder var och en av krypteringen i vila. För vissa tjänster kanske dock en eller flera av krypteringsmodellerna inte är tillämpliga. För tjänster som stöder kund hanterade nyckelscenarier kanske de endast stöder en delmängd av de nyckeltyper som Azure Key Vault stöder för nyckelkrypteringsnycklar. Dessutom kan tjänster släppa stöd för dessa scenarier och nyckeltyper enligt olika scheman. I det här avsnittet beskrivs stödet för kryptering i vila när detta skrivs för var och en av de viktigaste Azure-datalagringstjänsterna.
Azure-diskkryptering
Alla kunder som använder Azure IaaS-funktioner (Infrastruktur som en tjänst) kan få kryptering i vila för sina virtuella IaaS-datorer och diskar via Azure Disk Encryption. Mer information om Azure Disk Encryption finns i dokumentationen Azure Disk Encryption .
Azure-lagring
Alla Azure Storage (Blob Storage, Queue Storage, Table Storage och Azure Files) stöder kryptering på serversidan i vila. Vissa tjänster stöder dessutom kund hanterade nycklar och kryptering på klientsidan.
- Serversidan: Alla Azure Storage Services aktiverar kryptering på serversidan som standard med hjälp av tjänst hanterade nycklar, vilket är transparent för programmet. Mer information finns i Azure Storage-tjänstens kryptering för vilodata. Azure Blob Storage och Azure Files också stöd för RSA 2048-bitars kundbaserade nycklar i Azure Key Vault. Mer information finns i Storage Service Encryption using customer-managed keys in Azure Key Vault.
- Klientsidan: Azure-blobar, tabeller och köer stöder kryptering på klientsidan. När kunderna använder kryptering på klientsidan krypterar de data och laddar upp dem som en krypterad blob. Nyckelhanteringen utförs av kunden. Mer information finns i Kryptering på klientsidan och Azure Key Vault för Microsoft Azure Storage.
Azure SQL Database
Azure SQL Database för närvarande stöd för kryptering i vila för Microsoft-hanterade scenarier på tjänstsidan och kryptering på klientsidan.
Stöd för serverkryptering tillhandahålls för närvarande via funktionen SQL som kallas transparent datakryptering. När en Azure SQL Database kund aktiverar TDE-nyckeln skapas och hanteras den automatiskt för dem. Kryptering i vila kan aktiveras på databas- och servernivå. Från och med juni 2017 är transparent datakryptering (TDE) aktiverat som standard på nyligen skapade databaser. Azure SQL Database har stöd för RSA 2048-bitars kundbaserade nycklar i Azure Key Vault. Mer information finns i transparent datakryptering med Bring Your Own Key för Azure SQL Database och Data Warehouse.
Kryptering på klientsidan av Azure SQL Database data stöds via Always Encrypted funktion. Always Encrypted använder en nyckel som skapats och lagrats av klienten. Kunder kan lagra huvudnyckeln i ett Windows certifikatarkiv, Azure Key Vault eller en lokal maskinvarusäkerhetsmodul. Med SQL Server Management Studio kan SQL användarna välja vilken nyckel de vill använda för att kryptera vilken kolumn.
Slutsats
Skydd av kunddata som lagras i Azure-tjänster är av högsta vikt för Microsoft. Alla Azure-värdtjänster strävar efter att tillhandahålla alternativ för kryptering i vila. Azure-tjänster stöder antingen tjänst hanterade nycklar, kund hanterade nycklar eller kryptering på klientsidan. Azure-tjänsterna förbättrar i stort krypteringen i vila och nya alternativ planeras för förhandsversion och allmän tillgänglighet under de kommande månaderna.
Nästa steg
- I datakrypteringsmodeller kan du läsa mer om tjänst-hanterade nycklar och kund hanterade nycklar.
- Lär dig hur Azure använder dubbel kryptering för att minimera hot som kommer med kryptering av data.
- Lär dig vad Microsoft gör för att säkerställa plattformsintegritet och säkerhet för värdar som bläddrar i bygg-, integrations-, drift- och reparationspipelines för maskinvara och inbyggd programvara.