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.
-
Installazione e configurazione della versione più recente di AWS CLI. Per ulteriori informazioni, consulta Installazione o aggiornamento della versione più recente della AWS CLI nella Guida per l'utente di AWS Command Line Interface .
-
Installa la Notation CLI e AWS Signer il plugin per Notation. Per ulteriori informazioni, consulta Prerequisiti per la firma delle immagini di container nella Guida per gli sviluppatori di AWS Signer .
-
Conserva un'immagine del container da firmare in un repository privato Amazon ECR. Per ulteriori informazioni, consulta Invio di un'immagine a un repository privato Amazon ECR.
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
-
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 utilizzandoDAYS
,MONTHS
oYEARS
. 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-ECDSANota
Il nome del profilo di firma supporta solo caratteri alfanumerici e il trattino basso (
_
). -
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-stdin111122223333
.dkr.ecr.region
.amazonaws.com -
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 SHAsha256: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.