Docker-Container werden häufig zur Bereitstellung von Anwendungen in der Cloud verwendet. Mit Gramine Shielded Containers (GSC) stellen wir die Infrastruktur für die Bereitstellung von Docker-Containern bereit, die durch Intel SGX-Enklaven unter Verwendung des Gramine Library OS geschützt sind.
Das GSC-Tool wandelt ein Docker-Image in ein neues Image um, das das Gramine Library-Betriebssystem, Manifestdateien und Intel SGX-bezogene Informationen enthält, und führt die Anwendung innerhalb einer Intel SGX-Enklave unter Verwendung des Gramine Library-Betriebssystems aus. Es folgt dem üblichen Docker-Ansatz, zunächst ein Image zu erstellen und dieses Image anschließend in einem Container auszuführen. Zunächst muss ein Docker-Image über den Befehl gsc build
graminisiert werden. Wenn das graminisierte Image innerhalb einer Intel SGX-Enklave ausgeführt werden soll, muss das Image über einen gsc sign-image
-Befehl signiert werden. Anschließend kann das Image mit docker run
ausgeführt werden.
HINWEIS : Als Teil des gsc build
-Schritts generiert GSC die Manifestdatei mit einer Liste vertrauenswürdiger Dateien (Dateien mit Integritätsschutz). Diese Liste enthält Hashes aller im ursprünglichen Docker-Image vorhandenen Dateien. Daher hängt die Manifesterstellungsfunktion von GSC von der Verpackung des ursprünglichen Docker-Images ab: Wenn das ursprüngliche Docker-Image aufgebläht ist (unnötige Dateien enthält), wird auch das generierte Manifest aufgebläht. Obwohl dies die Sicherheitsgarantien von Gramine/GSC nicht beeinträchtigt, kann es die Startleistung beeinträchtigen. Bitte achten Sie darauf, nur die Abhängigkeiten einzubinden, die für Ihr Docker-Image wirklich erforderlich sind.
Die offizielle Dokumentation des Betriebssystems Gramine Library finden Sie unter https://gramine.readthedocs.io.
Die offizielle GSC-Dokumentation finden Sie unter https://gramine-gsc.readthedocs.io.
Wir freuen uns über Beiträge über GitHub-Pull-Requests. Bitte beachten Sie, dass für sie die gleichen Regeln gelten wie für das Hauptprojekt.
Bei Fragen senden Sie bitte eine E-Mail an [email protected] (öffentliches Archiv).
Für Fehlerberichte posten Sie ein Problem in unserem GitHub-Repository: https://github.com/gramineproject/gsc/issues.