Konfidentiella containrar på Azure Container Instances
Den här artikeln beskriver hur konfidentiella containrar på Azure Container Instances (ACI) kan göra det möjligt för dig att skydda dina arbetsbelastningar som körs i molnet. Den här artikeln innehåller bakgrund om funktionsuppsättningen, scenarier, begränsningar och resurser.
Konfidentiella containrar i Azure Container Instances gör det möjligt för kunder att köra Linux-containrar i en maskinvarubaserad och intygad betrodd körningsmiljö (TEE). Kunder kan lyfta och flytta sina containerbaserade Linux-program eller skapa nya program för konfidentiell databehandling utan att behöva använda några specialiserade programmeringsmodeller för att uppnå fördelarna med konfidentialitet i en TEE. Konfidentiella containrar på Azure Container Instances skyddar data som används och krypterar data som används i minnet. Azure Container Instances utökar den här funktionen genom verifierbara körningsprinciper och verifierbar maskinvarurot för förtroendegarantier via gästattestering.
Funktioner i konfidentiella containrar på Azure Container Instances
Lift- och skiftprogram
Kunder kan lyfta och flytta sina containerbaserade Linux-program eller skapa nya program för konfidentiell databehandling utan att behöva använda specialiserade programmeringsmodeller för att uppnå fördelarna med konfidentialitet i en TEE.
Maskinvarubaserad betrodd körningsmiljö
Konfidentiella containrar på Azure Container Instances distribueras i en containergrupp med en Isolerad Tee för Hyper-V, som innehåller en minneskrypteringsnyckel som genereras och hanteras av en AMD SEV-SNP-kompatibel processor. Data som används i minnet krypteras med den här nyckeln för att skydda mot datareplikering, skada, ommappning och aliasbaserade attacker.
Verifierbara körningsprinciper
Konfidentiella containrar på Azure Container Instances kan köras med verifierbara körningsprinciper som gör det möjligt för kunder att ha kontroll över vilka program och åtgärder som tillåts köras i TEE. Dessa körningsprinciper hjälper till att skydda mot dåliga aktörer som skapar oväntade programändringar som potentiellt kan läcka känsliga data. Kunder skapar körningsprinciper via tillhandahållna verktyg och kryptografiska bevis verifierar principerna.
Fjärrgästattestering
Konfidentiella containrar på ACI ger stöd för fjärrgästattestering, som används för att verifiera containergruppens tillförlitlighet innan du skapar en säker kanal med en förlitande part. Containergrupper kan generera en SNP-maskinvaruattesteringsrapport, som maskinvaruskyltarna och som innehåller information om maskinvaran och programvaran. Microsoft Azure Attestation-tjänsten kan sedan verifiera den genererade maskinvaruattesteringen via ett sidovagnsprogram med öppen källkod eller av en annan attesteringstjänst innan känsliga data släpps till TEE.
Principer för efterlevnad av konfidentiell databehandling
Konfidentiella containrar stöder integritet och attestering på containernivå via cce-principer (confidential computing enforcement). Principer för tillämpning av konfidentiell databehandling föreskriver de komponenter som tillåts köras i containergruppen, som containerkörningen tillämpar.
Azure CLI-konfigurationstillägg
Azure CLI confcom-tillägget gör det möjligt för kunder att generera principer för efterlevnad av konfidentiell databehandling med hjälp av en ARM-mall som indata och tillhandahålla en grundläggande 64-strängprincip som utdata. Dessa utdata ingår i definitionen av containergruppen för att framtvinga vilka komponenter som tillåts köras. Mer information om hur du redigerar principer för körning av konfidentiell databehandling finns i Azure CLI confcom-tillägget.
Säker nyckelutgivning och krypterade filsystems sidovagnar
Konfidentiella containrar på Azure Container Instances integreras med två sidovagnar med öppen källkod för att stödja konfidentiella funktioner i containergruppen. Du hittar dessa sidovagnar och mer information på den konfidentiella sidovagnslagringsplatsen.
Säker nyckelfrisättnings sidovagn
Konfidentiella containrar på Azure Container Instances tillhandahåller en container med öppen källkod för attestering och säker nyckelutgivning. Den här sidovagnen instansierar en webbserver, som exponerar ett REST-API så att andra containrar kan hämta en maskinvaruattesteringsrapport eller en Microsoft Azure Attestation-token via POST-metoden. Sidovagnen integreras med Azure Key Vault för att frigöra en nyckel till containergruppen när verifieringen har slutförts.
Sidovagn för krypterat filsystem
Konfidentiella containrar på Azure Container Instances tillhandahåller en sidovagnscontainer för att montera ett fjärrkrypterat filsystem som tidigare laddats upp till Azure Blob Storage. Sidovagnscontainern hämtar transparent maskinvaruattestering och certifikatkedjan som har stöd för attesteringens signeringsnyckel. Den begär sedan att Microsoft Azure Attestation ska auktorisera en attesteringstoken, vilket krävs för att på ett säkert sätt frigöra filsystemets krypteringsnyckel från den hanterade HSM:en. Nyckeln släpps endast till sidovagnscontainern om den förväntade utfärdaren signerade attesteringstoken och attesteringsanspråken matchar nyckelns versionsprincip. Sidovagnscontainern använder transparent nyckeln för att montera det fjärranslutna krypterade filsystemet. Den här processen bevarar filsystemets konfidentialitet och integritet vid alla åtgärder från en container som körs i containergruppen.
Scenarier
Datarengöringsrum för dataanalys och maskininlärningsträning med flera parter
Affärstransaktioner och projektsamarbeten kräver ofta att konfidentiella data delas mellan flera parter. Dessa data kan omfatta personlig information, ekonomisk information och medicinska journaler, som måste skyddas från obehörig åtkomst. Konfidentiella containrar på Azure Container Instances tillhandahåller nödvändiga funktioner (maskinvarubaserade TEE:er, fjärrattestering) för kunder för att bearbeta träningsdata från flera källor utan att exponera indata för andra parter. Dessa funktioner gör det möjligt för organisationer att få mer värde från sina eller sina partners datauppsättningar samtidigt som de behåller kontrollen över åtkomsten till känslig information. Det här erbjudandet gör konfidentiella containrar på Azure Container Instances idealiska för scenarier med dataanalys från flera parter, till exempel konfidentiell maskininlärning.
Konfidentiell slutsatsdragning
ACI tillhandahåller snabba och enkla distributioner, flexibel resursallokering och prissättning per användning, vilket placerar det som en bra plattform för konfidentiella slutsatsdragningsarbetsbelastningar. Med konfidentiella containrar på Azure Container Instances kan modellutvecklare och dataägare samarbeta samtidigt som de skyddar modellutvecklarens immateriella egendom och håller de data som används för att dra slutsatser säkra och privata. Kolla in en exempeldistribution av konfidentiell slutsatsdragning med hjälp av konfidentiella containrar på Azure Container Instances.
Scenarier som inte stöds
- Azure CLI-konfigurationstillägget måste generera principer för efterlevnad av konfidentiell databehandling.
- Det går inte att skapa principer för efterlevnad av konfidentiell databehandling manuellt.
Resurser
- Azure CLI-konfigurationstillägg
- Konfidentiella sidovagnscontainrar
- Konfidentiellt hello world-program
- Demonstration av maskininlärningsinferens
Nästa steg
- Ett distributionsexempel finns i Distribuera en konfidentiell containergrupp med Azure Resource Manager