Firma di un'immagine archiviata in un repository privato Amazon ECR - Amazon ECR

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Firma di un'immagine archiviata in un repository privato Amazon ECR

Amazon ECR si integra con AWS Signer per fornirti un modo per firmare le immagini dei contenitori. Puoi archiviare sia le immagini del container sia le firme nei tuoi repository privati.

Considerazioni

Quando usi la firma di immagini Amazon ECR, tieni in considerazione quanto riportato di seguito.

  • Le firme archiviate nel repository vengono conteggiate nella quota di servizio relativa al numero massimo di immagini per repository. Per ulteriori informazioni, consulta Service Quotas di Amazon ECR..

  • Quando in un repository sono presenti elementi di riferimento, le policy del ciclo di vita di Amazon ECR li elimineranno automaticamente entro 24 ore dall'eliminazione dell'immagine oggetto.

Prerequisiti

Prima di iniziare, verifica che siano stati soddisfatti i seguenti requisiti preliminari.

Configurazione dell'autenticazione per il client Notary

Prima di poter creare una firma utilizzando l'interfaccia a riga di comando di Notation, devi configurare il client in modo che possa autenticarsi su Amazon ECR. Se hai installato Docker sullo stesso host in cui installi il client Notation, Notation riutilizzerà lo stesso metodo di autenticazione utilizzato per il client Docker. Il comandi del Docker login e logout consentiranno ai comandi sign e verify di Notation di utilizzare le stesse credenziali e non sarà necessario autenticare Notation separatamente. Per ulteriori informazioni sulla configurazione del client Notation per l'autenticazione, consulta Autenticazione con registri conformi a OCI nella documentazione di Notary Project.

Se non utilizzi Docker o un altro strumento che utilizza le credenziali Docker, ti consigliamo di utilizzare l'assistente di gestione credenziali Docker di Amazon ECR come archivio di credenziali. Per ulteriori informazioni su come installare e configurare l'assistente credenziali di Amazon ECR, consulta Assistente di gestione credenziali Docker di Amazon ECR.

Firma di un'immagine

I passaggi seguenti possono essere utilizzati per creare le risorse necessarie per firmare un'immagine di container e archiviare la firma in un repository privato Amazon ECR. Notation firma le immagini utilizzando il digest.

Per firmare un'immagine
  1. AWS Signer Crea un Notation-OCI-SHA384-ECDSA profilo di firma utilizzando la piattaforma di firma. Facoltativamente, puoi specificare un periodo di validità della firma utilizzando il parametro --signature-validity-period. Questo valore può essere specificato utilizzando DAYSMONTHS o YEARS. Se non viene specificato alcun periodo di validità, sarà utilizzato il valore predefinito 135 mesi.

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

    Il nome del profilo di firma supporta solo caratteri alfanumerici e il trattino basso (_).

  2. Autentica il client Notation nel tuo registro predefinito. L'esempio seguente utilizza AWS CLI per autenticare la CLI di Notation in un registro privato Amazon ECR.

    aws ecr get-login-password --region region | notation login --username AWS --password-stdin 111122223333.dkr.ecr.region.amazonaws.com
  3. Usa la CLI di Notation per firmare l'immagine, specificando l'immagine utilizzando il nome del repository e il digest SHA. Così la firma viene creata e inviata allo stesso repository privato Amazon ECR in cui si trova l'immagine da firmare.

    Nell'esempio seguente, stiamo firmando un'immagine nel repository curl con il digest SHA sha256: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"

Passaggi successivi

Dopo aver firmato l'immagine del contenitore, puoi verificare la firma localmente. Per istruzioni sulla verifica di un'immagine, consulta Verificare un'immagine localmente dopo l'accesso alla Guida per gli AWS Signer sviluppatori.