Delen via


Vertrouwelijke containers (preview) in Azure Kubernetes Service

Dankzij de groei in cloudeigen toepassingsontwikkeling is er een grotere behoefte aan het beveiligen van de workloads die worden uitgevoerd in cloudomgevingen. Het containeriseren van de workload vormt een belangrijk onderdeel voor dit programmeermodel en vervolgens is het beveiligen van de container van cruciaal belang om vertrouwelijk in de cloud te worden uitgevoerd.

Confidential Containers in Azure Kubernetes Service (AKS) maken isolatie op containerniveau mogelijk in uw Kubernetes-workloads. Het is een aanvulling op de Azure-suite met confidential computing-producten en maakt gebruik van de AMD SEV-SNP-geheugenversleuteling om uw containers tijdens runtime te beveiligen.

Vertrouwelijke containers zijn aantrekkelijk voor implementatiescenario's waarbij gevoelige gegevens betrokken zijn (bijvoorbeeld persoonlijke gegevens of gegevens met sterke beveiliging die nodig zijn voor naleving van regelgeving).

Wat maakt een container vertrouwelijk?

In overeenstemming met de richtlijnen die zijn ingesteld door het Confidential Computing Consortium, dat Microsoft een van de oprichters is, moet Confidential Containers voldoen aan het volgende:

  • Transparantie: de vertrouwelijke containeromgeving waarin uw gevoelige toepassing wordt gedeeld, kunt u zien en controleren of deze veilig is. Alle onderdelen van de Trusted Computing Base (TCB) zijn open source.
  • Controlebaarheid: u hebt de mogelijkheid om te controleren welke versie van het CoCo-omgevingspakket, inclusief linux-gastbesturingssystemen en alle onderdelen actueel zijn. Microsoft meldt zich aan bij het gast-besturingssysteem en de runtime-omgeving van de container voor verificaties via attestation. Er wordt ook een beveiligd hash-algoritme (SHA) van gastbesturingssystemen uitgebracht voor het bouwen van een tekenreeks- en controleverhaal.
  • Volledige attestation: alles wat deel uitmaakt van het TEE, wordt volledig gemeten door de CPU met de mogelijkheid om extern te verifiëren. Het hardwarerapport van DE AMD SEV-SNP-processor weerspiegelt containerlagen en containerruntimeconfiguratie-hash via de attestation-claims. De toepassing kan het hardwarerapport lokaal ophalen, inclusief het rapport dat de installatiekopieën van het gastbesturingssystem en de containerruntime weerspiegelt.
  • Code-integriteit: runtime-afdwinging is altijd beschikbaar via door de klant gedefinieerde beleidsregels voor containers en containerconfiguratie, zoals onveranderbaar beleid en containerondertekening.
  • Isolatie van operator: Beveiligingsontwerpen die uitgaan van minimale bevoegdheden en de hoogste isolatieafscherming van alle niet-vertrouwde partijen, inclusief klant-/tenantbeheerders. Het omvat het beperken van bestaande Kubernetes-toegang tot besturingsvlak (kubelet) tot vertrouwelijke pods.

Maar met deze functies van vertrouwelijkheid moet het product het gebruiksgemak ervan toevoegen: het ondersteunt alle ongewijzigde Linux-containers met hoge Kubernetes-functieconformance. Daarnaast ondersteunt het heterogene knooppuntgroepen (GPU, algemene knooppunten) in één cluster om te optimaliseren voor kosten.

Wat zijn vertrouwelijke containers in AKS?

In overeenstemming met de toezegging van Microsoft voor de opensource-community gebruikt de onderliggende stack voor Vertrouwelijke containers de Kata CoCo-agent als de agent die wordt uitgevoerd in het knooppunt dat als host fungeert voor de pod waarop de vertrouwelijke workload wordt uitgevoerd. Met veel TEE-technologieën die een grens tussen de host en gast vereisen, vormen Kata Containers de basis voor het eerste kata CoCo-werk. Microsoft heeft ook bijgedragen aan de Kata Coco-community voor energiecontainers die worden uitgevoerd binnen een vm met vertrouwelijke hulpprogramma's.

De vertrouwelijke Kata-container bevindt zich in de Azure Linux AKS-containerhost. Azure Linux en de Cloud Hypervisor VMM (Virtual Machine Monitor) is de software voor eindgebruikers/gebruikersruimte die wordt gebruikt voor het maken en beheren van de levensduur van virtuele machines.

Isolatie op containerniveau in AKS

Standaard delen alle workloads van AKS dezelfde kernel en dezelfde clusterbeheerder. Met de preview van Pod Sandboxing op AKS groeide de isolatie een stuk hoger met de mogelijkheid om kernelisolatie te bieden voor workloads op hetzelfde AKS-knooppunt. Meer informatie over de functie vindt u hier. Vertrouwelijke containers zijn de volgende stap van deze isolatie en maakt gebruik van de geheugenversleutelingsmogelijkheden van de onderliggende grootten van de virtuele AMD SEV-SNP-machines. Deze virtuele machines zijn de DCa_cc en ECa_cc grootten met de mogelijkheid om de hoofdmap van de hardware van vertrouwen weer te geven aan de pods die erop zijn geïmplementeerd.

Diagram of various layers of the architecture forming Confidential Containers.

Aan de slag

Raadpleeg onze AKS-documentatie om aan de slag te gaan en meer te weten te komen over ondersteunde scenario's.

Volgende stap

Een vertrouwelijke container implementeren in AKS.