Signature d'une image stockée dans un référentiel ECR privé Amazon - Amazon ECR

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Signature d'une image stockée dans un référentiel ECR privé Amazon

Amazon ECR s'intègre AWS Signer pour vous permettre de signer les images de vos conteneurs. Vous pouvez stocker à la fois les images de vos conteneurs et les signatures dans vos référentiels privés.

Considérations

Les points suivants doivent être pris en compte lors de l'utilisation de la signature ECR d'images Amazon.

  • Les signatures stockées dans votre référentiel sont prises en compte dans les quotas de service correspondant au nombre maximum d'images par référentiel. Pour de plus amples informations, veuillez consulter Quotas ECR de service Amazon.

  • Lorsque des artefacts de référence sont présents dans un référentiel, les politiques de ECR cycle de vie d'Amazon nettoient automatiquement ces artefacts dans les 24 heures suivant la suppression de l'image d'objet.

Prérequis

Avant de commencer, les prérequis suivants doivent être respectés.

Configuration de l'authentification pour le client Notary

Avant de créer une signature à l'aide de la notationCLI, vous devez configurer le client afin qu'il puisse s'authentifier auprès d'AmazonECR. Si Docker est installé sur le même hôte que le client Notation, ce dernier réutilisera la même méthode d'authentification que celle utilisée pour le client Docker. Les commandes Docker login et logout permettront aux commandes Notation sign et verify d'utiliser ces mêmes informations d'identification, sans que vous ayez à authentifier Notation séparément. Pour plus d'informations sur la configuration de votre client Notation pour l'authentification, voir Authentifier avec des registres OCI conformes dans la documentation du projet Notary.

Si vous n'utilisez pas Docker ou un autre outil utilisant les informations d'identification Docker, nous vous recommandons d'utiliser Amazon ECR Docker Credential Helper comme magasin d'informations d'identification. Pour plus d'informations sur l'installation et la configuration ECR d'Amazon Credential Helper, consultez Amazon ECR Docker Credential Helper.

Signature d'une image

Les étapes suivantes peuvent être utilisées pour créer les ressources nécessaires pour signer une image de conteneur et stocker la signature dans un référentiel ECR privé Amazon. Notation signe les images à l'aide du hachage.

Pour signer une image
  1. Créez un profil de AWS Signer signature à l'aide de la plateforme de Notation-OCI-SHA384-ECDSA signature. Vous pouvez spécifier une période de validité de signature à l'aide du paramètre --signature-validity-period. Cette valeur peut être spécifiée à l'aide de DAYS, MONTHS ou YEARS. Si aucune période de validité n'est spécifiée, la valeur par défaut de 135 mois est utilisée.

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

    Le nom du profil de signature ne prend en charge que les caractères alphanumériques et le trait de soulignement (_).

  2. Authentifiez le client Notation auprès de votre registre par défaut. L'exemple suivant utilise le AWS CLI pour authentifier la notation auprès CLI d'un registre ECR privé Amazon.

    aws ecr get-login-password --region region | notation login --username AWS --password-stdin 111122223333.dkr.ecr.region.amazonaws.com
  3. Utilisez la notation CLI pour signer l'image, en spécifiant l'image à l'aide du nom du référentiel et du SHA résumé. Cela crée la signature et l'envoie vers le même référentiel ECR privé Amazon dans lequel se trouve l'image en cours de signature.

    Dans l'exemple suivant, nous signons une image dans le curl référentiel avec un SHA condensé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"

Étapes suivantes

Après avoir signé l'image de votre conteneur, vous pouvez vérifier la signature localement. Pour obtenir des instructions sur la vérification d'une image, voir Vérifier une image localement après signature dans le Guide du AWS Signer développeur.