Applikationsenklaver

Important

För de flesta nya arbetsbelastningar för konfidentiell databehandling, börja med alternativ för konfidentiella Azure-VM:ar och konfidentiella containrar. Den här artikeln fokuserar på specialiserad enklavmedveten utveckling.

Program enklaver, till exempel Intel SGX, är isolerade miljöer som skyddar specifik kod och data. När du skapar enklaver måste du bestämma vilken del av programmet som körs i enklaven. När du skapar eller hanterar enklaver bör du använda kompatibla SDK:er och ramverk för den valda distributionsstacken.

Anmärkning

Om du inte redan har läst introduktionen till Intel SGX-VM:ar och enklaver, läs den innan du fortsätter.

Microsoft Mechanics

Utveckla program

En applikation byggd med enclaves har två partitioner.

Värden är komponenten "otillförlitlig". Ditt enklavprogram körs ovanpå värdsystemet. Värdmiljön är en miljö som inte är betrodd. När enklavkod distribueras på värdsystemet kan värdsystemet inte komma åt den koden.

Enklaven är den "betrodda" komponenten. Programkoden och dess cachelagrade data och minne körs i enklaven. Enklavermiljön skyddar dina hemligheter och känsliga data. Kontrollera att dina säkra beräkningar sker i en enklav.

Diagram över ett program som visar värd- och enklaverpartitionerna. Inuti enklaven finns data- och programkodkomponenterna.

Om du vill använda kraften hos enklaver och isolerade miljöer väljer du verktyg som stöder konfidentiell databehandling. Olika verktyg stöder utveckling av enklaver. Du kan till exempel använda dessa ramverk med öppen källkod:

När du designar en applikation, identifiera och bestäm vilken del som behöver köras i enclaves. Koden i den betrodda komponenten är isolerad från resten av programmet. När enklaven har initierats och koden har lästs in till minnet kan ej betrodda komponenter inte läsa eller ändra koden.

Nästa steg