Stöd för programklav med Intel SGX-baserade konfidentiella beräkningsnoder i Azure Kubernetes Service
Med konfidentiell databehandling i Azure kan du skydda känsliga data när de används. Intel SGX-baserade enklaver tillåter körning av program som paketeras som en container i AKS. Containrar som körs i en betrodd körningsmiljö (TEE) hämtar isolering från andra containrar, nodkärnan i en maskinvaruskyddad, integritetsskyddad attesterbar miljö.
Översikt
Azure Kubernetes Service (AKS) har stöd för att lägga till Intel SGX-noder för konfidentiell databehandling av virtuella datorer som agentpooler i ett kluster. Med dessa noder kan du köra känsliga arbetsbelastningar i en maskinvarubaserad TEE. Tees tillåter att kod på användarnivå från containrar allokerar privata minnesregioner för att köra koden med CPU direkt. Dessa privata minnesregioner som körs direkt med CPU kallas enklaver. Enklaver hjälper till att skydda datasekretess, dataintegritet och kodintegritet från andra processer som körs på samma noder samt Azure-operatör. Intel SGX-körningsmodellen tar också bort de mellanliggande lagren för gästoperativsystem, värdoperativsystem och Hypervisor vilket minskar attackytan. Den maskinvarubaserade modellen för isolerad körning per container i en nod gör att program kan köras direkt med processorn, samtidigt som det särskilda blocket med minne krypteras per container. Konfidentiala databehandlingsnoder med konfidentiella containrar är ett bra komplement till din strategi för nollförtroende, säkerhetsplanering och skydd på djupet.
Intel SGX-funktionen för konfidentiella beräkningsnoder
- Maskinvarubaserad containerisolering på processnivå via Intel SGX trusted execution environment (TEE)
- Heterogena nodpoolskluster (blanda konfidentiella och icke-konfidentiella nodpooler)
- Minnesbaserad schemaläggning av krypterad sidcache (EPC) via AKS-tillägget "confcom"
- Intel SGX DCAP-drivrutin förinstallerad och kernelberoende installerat
- Cpu-förbrukningsbaserad horisontell autoskalning av poddar och automatisk skalning av kluster
- Stöd för Linux-containrar via Ubuntu 18.04 Gen 2 VM-arbetsnoder
Tillägg för konfidentiell databehandling för AKS
Tilläggsfunktionen möjliggör extra funktioner på AKS när du kör intel SGX-kompatibla intel SGX-kompatibla nodpooler i klustret. Med tillägget "confcom" på AKS kan du använda funktionerna nedan.
Plugin-program för Azure-enheter för Intel SGX
Plugin-programmet för enheten implementerar Kubernetes-enhetens plugin-gränssnitt för EPC-minne (Encrypted Page Cache) och exponerar enhetsdrivrutinerna från noderna. I själva verket gör det här plugin-programmet EPC-minnet till en annan resurstyp i Kubernetes. Användare kan ange gränser för den här resursen precis som andra resurser. Förutom schemaläggningsfunktionen hjälper enhets-plugin-programmet till att tilldela Intel SGX-enhetsdrivrutinsbehörigheter till konfidentiella containerdistributioner. Med den här plugin-utvecklaren kan du undvika att montera Intel SGX-drivrutinsvolymerna i distributionsfilerna. Det här tillägget på AKS-kluster körs som en daemonset per VM-nod som har Intel SGX-kapacitet. En exempelimplementering av exemplet på EPC-minnesbaserad distribution (kubernetes.azure.com/sgx_epc_mem_in_MiB
) finns här
Intel SGX-offerthjälp med plattformsprogramvarakomponenter
Som en del av plugin-programmet distribueras en annan daemonset per VM-nod som är av Intel SGX som kan användas i AKS-klustret. Den här daemonseten hjälper dina konfidentiella containerappar när en fjärransluten attesteringsbegäran anropas.
Enklaverprogram som utför fjärrattestering måste generera en offert. Offerten innehåller kryptografiska bevis på programmets identitet och tillstånd, tillsammans med enklavens värdmiljö. Offertgenereringen förlitar sig på vissa betrodda programvarukomponenter från Intel, som ingår i SGX Platform Software Components (PSW/DCAP). Denna PSW paketeras som en daemonuppsättning som körs per nod. Du kan använda PSW när du begär attesteringsoffert från enklaverappar. Med hjälp av den AKS-tillhandahållna tjänsten kan du bättre upprätthålla kompatibiliteten mellan PSW- och andra SW-komponenter i värden med Intel SGX-drivrutiner som ingår i AKS VM-noderna. Läs mer om hur dina appar kan använda den här daemonseten utan att behöva paketera attesteringens primitiver som en del av dina containerdistributioner Mer här
Programmeringsmodeller
Konfidentiella containrar via partner och OSS
Konfidentiella containrar hjälper dig att köra befintliga oförändrade containerprogram för de vanligaste programmeringsspråken (Python, Node, Java osv.) konfidentiellt. Den här paketeringsmodellen behöver inga ändringar eller omkompilering av källkod och är den snabbaste metoden att köra i en Intel SGX-enklaver som uppnås genom att paketera dina standard docker-containrar med Projekt med öppen källkod eller Azure Partner Solutions. I den här paketerings- och körningsmodellen läses alla delar av containerprogrammet in i den betrodda gränsen (enklaven). Den här modellen fungerar bra för containerprogram utanför hyllan som är tillgängliga på marknaden eller anpassade appar som för närvarande körs på noder för generell användning. Läs mer om förberedelse- och distributionsprocessen här
Enklavermedvetna containrar
Konfidentiella beräkningsnoder på AKS stöder också containrar som är programmerade att köras i en enklav för att använda särskilda instruktionsuppsättningar som är tillgängliga från processorn. Den här programmeringsmodellen ger en striktare kontroll över ditt körningsflöde och kräver användning av särskilda SDK:er och ramverk. Den här programmeringsmodellen ger mest kontroll över programflödet med en lägsta TCB (Trusted Computing Base). Enklavmedveten containerutveckling omfattar ej betrodda och betrodda delar till containerprogrammet så att du kan hantera det vanliga minnet och EPC-minnet (Encrypted Page Cache) där enklaven körs. Läs mer om enklavermedvetna containrar.
Vanliga frågor och svar
Här hittar du svar på några vanliga frågor om stöd för Azure Kubernetes Service -nodpooler (AKS) för Intel SGX-baserade konfidentiella beräkningsnoder här
Nästa steg
Distribuera AKS-kluster med konfidentiella beräkningsnoder
Exempel på konfidentiella containrar i Snabbstart
Intel SGX Konfidentiella virtuella datorer – SKU-lista för DCsv2
Intel SGX Konfidentiella virtuella datorer – DCsv3 SKU-lista
Skydd på djupet med webbseminarier för konfidentiella containrar