Signieren eines in einem privaten Amazon ECR-Repository gespeicherten Bildes - Amazon ECR

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Signieren eines in einem privaten Amazon ECR-Repository gespeicherten Bildes

Amazon ECR lässt sich integrieren AWS Signer , um Ihnen die Möglichkeit zu bieten, Ihre Container-Images zu signieren. Sie können sowohl Ihre Container-Images als auch die Signaturen in Ihren privaten Repositorys speichern.

Überlegungen

Bei der Verwendung des Image-Signierens von Amazon ECR sollte Folgendes berücksichtigt werden.

  • In Ihrem Repository gespeicherte Signaturen werden auf die Service Quota für die maximale Anzahl von Images pro Repository angerechnet. Weitere Informationen finden Sie unter Amazon ECR Service Quotas.

  • Wenn Referenzartefakte in einem Repository vorhanden sind, bereinigen die Amazon ECR-Lebenszyklusrichtlinien diese Artefakte innerhalb von 24 Stunden nach dem Löschen des betreffenden Bilds automatisch.

Voraussetzungen

Bevor Sie beginnen, müssen die folgenden Voraussetzungen erfüllt sein.

Konfiguration der Authentifizierung für Notarkunden

Bevor Sie mit der Notation CLI eine Signatur erstellen können, müssen Sie den Client so konfigurieren, dass er sich mit Amazon ECR authentifizieren kann. Wenn Sie Docker auf demselben Host installiert haben, auf dem Sie den Notation-Client installieren, verwendet Notation dieselbe Authentifizierungsmethode, die Sie für den Docker-Client verwenden. Der Docker login und die logout-Befehle ermöglichen es der Notation sign und den verify-Befehlen, dieselben Anmeldeinformationen zu verwenden und Sie müssen Notation nicht separat authentifizieren. Weitere Informationen zur Konfiguration Ihres Notation-Clients für die Authentifizierung finden Sie unter Authentifizieren mit OCI-konformen Registern in der Notary Project-Dokumentation.

Wenn Sie Docker oder ein anderes Tool, das Docker-Anmeldeinformationen verwendet, nicht verwenden, empfehlen wir, das Amazon ECR Docker Credential Helper als Speicher für Anmeldeinformation zu verwenden. Weitere Informationen zur Installation und Konfiguration des Amazon ECR Hilfsprogramm für Anmeldeinformationen finden Sie unter ECR Docker Credential Helper.

Signieren eines Images

Die folgenden Schritte können verwendet werden, um die Ressourcen zu erstellen, die zum Signieren eines Container-Images und zum Speichern der Signatur in einem privaten Amazon-ECR-Repository erforderlich sind. Die Notation signiert Images mithilfe des Digest.

So signieren Sie ein Image
  1. Erstellen Sie mithilfe der AWS Signer Signaturplattform ein Signaturprofil. Notation-OCI-SHA384-ECDSA Sie können optional eine Gültigkeitsdauer der Signatur mithilfe des Parameters --signature-validity-period angeben. Dieser Wert kann mit DAYSMONTHS oder YEARS angegeben werden. Wenn kein Wert für den Gültigkeitszeitraum angegeben wird, wird der Standardwert 135 Monate verwendet.

    aws signer put-signing-profile --profile-name ecr_signing_profile --platform-id Notation-OCI-SHA384-ECDSA
    Anmerkung

    Der Name des Signaturprofils unterstützt nur alphanumerische Zeichen und den Unterstrich (_).

  2. Authentifizieren Sie den Notation-Client bei Ihrem Standard-Registry. Das folgende Beispiel verwendet die AWS CLI , um die Notation CLI bei einer privaten Amazon ECR-Registrierung zu authentifizieren.

    aws ecr get-login-password --region region | notation login --username AWS --password-stdin 111122223333.dkr.ecr.region.amazonaws.com
  3. Verwenden Sie die Notation CLI, um das Image zu signieren, und geben Sie das Image mithilfe des Repository-Namens und des SHA-Digest an. Dadurch wird die Signatur erstellt und an dasselbe private Amazon-ECR-Repository übertragen, in dem sich das signierte Image befindet.

    Im folgenden Beispiel signieren wir ein Image im curlRepository mit SHA-Digestsha256:ca78e5f730f9a789ef8c63bb55275ac12dfb9e8099e6EXAMPLE.

    notation sign 111122223333.dkr.ecr.region.amazonaws.com/curl@sha256:ca78e5f730f9a789ef8c63bb55275ac12dfb9e8099e6EXAMPLE --plugin "com.amazonaws.signer.notation.plugin" --id "arn:aws:signer:region:111122223333:/signing-profiles/ecrSigningProfileName"

Nächste Schritte

Nachdem Sie Ihr Container-Image signiert haben, können Sie die Signatur lokal überprüfen. Anweisungen zur Überprüfung eines Images finden Sie unter Lokales Überprüfen eines Images nach dem Signieren im AWS Signer Entwicklerhandbuch.