Dela via


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.

Bild av AKS Confidential Compute Node som visar konfidentiella containrar med kod och data som skyddas inuti.

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