Wie man den docker trust inspect-Befehl verwendet, um die Vertrauensinformationen von Images zu untersuchen

DockerDockerBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernen Sie, wie Sie den Befehl docker trust inspect verwenden, um die Vertrauensinformationen zu untersuchen, die mit Docker-Images verknüpft sind. Sie werden untersuchen, wie Sie die Vertrauensdaten für einzeln signierte und nicht signierte Image-Tags sowie für alle signierten Tags innerhalb eines Repositorys überprüfen können.

Durch praktische Übungen gewinnen Sie praktische Erfahrungen bei der Überprüfung der Integrität und des Herausgebers von Images, indem Sie deren digitale Signaturen untersuchen. Sie lernen, wie Sie die Ausgabe des Befehls docker trust inspect interpretieren und den Unterschied in den Vertrauensinformationen zwischen signierten und nicht signierten Images verstehen. Schließlich sehen Sie, wie Sie die Vertrauensinformationen für mehrere Images überprüfen und die Ausgabe in einem menschenlesbaren Format anzeigen können.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ImageOperationsGroup(["Image Operations"]) docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker/ContainerOperationsGroup -.-> docker/inspect("Inspect Container") docker/ImageOperationsGroup -.-> docker/pull("Pull Image from Repository") subgraph Lab Skills docker/inspect -.-> lab-555251{{"Wie man den docker trust inspect-Befehl verwendet, um die Vertrauensinformationen von Images zu untersuchen"}} docker/pull -.-> lab-555251{{"Wie man den docker trust inspect-Befehl verwendet, um die Vertrauensinformationen von Images zu untersuchen"}} end

Überprüfen der Vertrauensinformationen für ein einzelnes signiertes Image-Tag

In diesem Schritt lernen Sie, wie Sie die Vertrauensinformationen für ein einzelnes signiertes Image-Tag mithilfe des Befehls docker trust inspect überprüfen können. Docker Content Trust ermöglicht es Ihnen, die Integrität und den Herausgeber der Images zu überprüfen, die Sie aus einem Registry (Registrierungsserver) ziehen.

Zunächst laden wir ein signiertes Image herunter. Wir verwenden das docker/trusttest-Image, das speziell für das Testen von Docker Content Trust entwickelt wurde.

docker pull docker/trusttest:latest

Sie sollten eine Ausgabe sehen, die anzeigt, dass das Image heruntergeladen wird.

Jetzt können wir die Vertrauensinformationen für dieses spezifische Image-Tag überprüfen. Der Befehl docker trust inspect wird zu diesem Zweck verwendet.

docker trust inspect docker/trusttest:latest

Die Ausgabe dieses Befehls zeigt Ihnen Details zu den mit dem Image-Tag verknüpften Signaturen. Dies umfasst die Unterzeichner und ihre Schlüssel. Wenn das Image signiert ist, sehen Sie Informationen zu den Signaturen. Wenn es nicht signiert ist, gibt die Ausgabe an, dass keine Vertrauensdaten gefunden wurden.

Überprüfen der Vertrauensinformationen für ein nicht signiertes Image-Tag in einem signierten Repository

In diesem Schritt lernen Sie, wie Sie die Vertrauensinformationen für ein nicht signiertes Image-Tag in einem Repository überprüfen können, das signierte Images enthält. Dies zeigt, dass selbst wenn ein Repository signierte Tags hat, einzelne nicht signierte Tags keine Vertrauensinformationen aufweisen.

Wir verwenden weiterhin das docker/trusttest-Repository. Im vorherigen Schritt haben wir das latest-Tag überprüft, das signiert ist. Jetzt versuchen wir, ein Tag zu überprüfen, das in demselben Repository bekanntlich nicht signiert ist. Wir verwenden hierfür das unsigned-Tag.

Zunächst versuchen wir, das unsigned-Tag herunterzuladen.

docker pull docker/trusttest:unsigned

Sie sollten eine Ausgabe sehen, die anzeigt, dass das Image heruntergeladen wird.

Jetzt überprüfen wir die Vertrauensinformationen für das unsigned-Tag mithilfe des Befehls docker trust inspect.

docker trust inspect docker/trusttest:unsigned

Wenn Sie diesen Befehl ausführen, sehen Sie wahrscheinlich eine Ausgabe, die anzeigt, dass für dieses spezifische Tag keine Vertrauensdaten gefunden wurden. Dies liegt daran, dass das unsigned-Tag, obwohl es in einem Repository mit signierten Tags liegt, selbst keine gültige Signatur hat. Dies zeigt, dass Docker Content Trust auf Basis von einzelnen Tags funktioniert.

Überprüfen der Vertrauensinformationen für alle signierten Tags in einem Repository

In diesem Schritt lernen Sie, wie Sie die Vertrauensinformationen für alle signierten Image-Tags in einem bestimmten Repository überprüfen können. Dies ist nützlich, um einen Überblick darüber zu erhalten, welche Tags in einem Repository vertrauenswürdig sind.

Wir verwenden weiterhin das docker/trusttest-Repository. In den vorherigen Schritten haben wir uns einzelne Tags angesehen. Jetzt werden wir das gesamte Repository überprüfen, um alle signierten Tags zu sehen.

Um alle signierten Tags in einem Repository zu überprüfen, verwenden Sie den Befehl docker trust inspect gefolgt vom Repository-Namen ohne ein spezifisches Tag.

docker trust inspect docker/trusttest

Wenn Sie diesen Befehl ausführen, wird die Ausgabe alle Tags im docker/trusttest-Repository auflisten, die gültige Vertrauensdaten zugeordnet haben. Sie sollten Informationen für das latest-Tag sehen (das wir im Schritt 1 als signiert verifiziert haben) und möglicherweise auch für andere signierte Tags, wenn sie in diesem Repository vorhanden sind. Nicht signierte Tags, wie das unsigned-Tag, das wir im Schritt 2 untersucht haben, werden in dieser Ausgabe nicht erscheinen.

Dieser Befehl bietet eine bequeme Möglichkeit, schnell zu sehen, welche Versionen eines Images in einem Repository gemäß Docker Content Trust als vertrauenswürdig angesehen werden.

Überprüfen der Vertrauensinformationen für mehrere Images

In diesem Schritt lernen Sie, wie Sie die Vertrauensinformationen für mehrere Image-Tags mit einem einzigen docker trust inspect-Befehl überprüfen können. Dies ist nützlich, wenn Sie den Vertrauensstatus mehrerer spezifischer Images auf einmal prüfen möchten.

Wir werden die Vertrauensinformationen sowohl für das signierte latest-Tag als auch für das nicht signierte unsigned-Tag aus dem docker/trusttest-Repository mit einem einzigen Befehl überprüfen.

Um mehrere Images zu überprüfen, listen Sie einfach die Image-Namen (einschließlich des Tags) nach dem docker trust inspect-Befehl auf, getrennt durch Leerzeichen.

docker trust inspect docker/trusttest:latest docker/trusttest:unsigned

Wenn Sie diesen Befehl ausführen, zeigt die Ausgabe die Vertrauensinformationen für jedes angegebene Image-Tag an. Sie sollten die Signaturdetails für docker/trusttest:latest sehen und eine Angabe, dass für docker/trusttest:unsigned keine Vertrauensdaten gefunden wurden. Dies bestätigt, dass Sie den Vertrauensstatus mehrerer Images effizient in einem einzigen Vorgang prüfen können.

Überprüfen der Vertrauensinformationen in einem menschenlesbaren Format

In diesem Schritt lernen Sie, wie Sie die Vertrauensinformationen in einem menschenlesbareren Format anzeigen können, indem Sie die Option --pretty mit dem Befehl docker trust inspect verwenden. Standardmäßig wird die Ausgabe im JSON-Format angezeigt, was für Skripte nützlich ist, aber weniger für eine schnelle manuelle Überprüfung.

Wir werden erneut die Vertrauensinformationen für das signierte Image docker/trusttest:latest überprüfen, aber diesmal fügen wir die Option --pretty hinzu.

docker trust inspect --pretty docker/trusttest:latest

Wenn Sie diesen Befehl ausführen, wird die Ausgabe in einem Format angezeigt, das einfacher zu lesen und zu verstehen ist. Typischerweise wird die Information in einer tabellenähnlichen Struktur dargestellt, die Details über das Image, die Unterzeichner und ihre Schlüssel in einer klaren Anordnung zeigt.

Wenn Sie diese Ausgabe mit der Standard-JSON-Ausgabe aus Schritt 1 vergleichen, können Sie sehen, wie die Option --pretty die Vertrauensinformationen für die manuelle Überprüfung leichter zugänglich macht. Dies ist besonders hilfreich, wenn Sie manuell den Vertrauensstatus eines Images prüfen.

Zusammenfassung

In diesem Lab haben wir gelernt, wie man den Befehl docker trust inspect verwendet, um die Vertrauensinformationen von Images zu untersuchen. Wir begannen damit, die Vertrauensdaten für ein einzelnes signiertes Image-Tag zu überprüfen und beobachteten die Details der zugehörigen Signaturen und Unterzeichner. Anschließend haben wir untersucht, dass das Überprüfen eines nicht signierten Image-Tags in einem signierten Repository zeigt, dass nur signierte Tags Vertrauensinformationen besitzen.

Wir haben unser Verständnis erweitert, indem wir die Vertrauensinformationen für alle signierten Tags in einem Repository und für mehrere Images gleichzeitig überprüft haben. Schließlich haben wir gelernt, wie man die Vertrauensinformationen in einem menschenlesbareren Format anzeigt, was es einfacher macht, die Signaturdetails zu interpretieren. Diese Schritte haben uns praktische Erfahrungen in der Überprüfung der Integrität und des Herausgebers von Docker-Images mithilfe von Docker Content Trust vermittelt.