Firma de una imagen almacenada en un repositorio privado de Amazon ECR - Amazon ECR

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Firma de una imagen almacenada en un repositorio privado de Amazon ECR

Amazon ECR se integra AWS Signer para proporcionarle una forma de firmar las imágenes de sus contenedores. Puede almacenar tanto las imágenes de contenedor como las firmas en sus repositorios privados.

Consideraciones

Se debe tener en cuenta lo siguiente al utilizar la firma de imágenes de Amazon ECR.

  • Las firmas almacenadas en el repositorio se incluyen en la cuota de servicio para el número máximo de imágenes por repositorio. Para obtener más información, consulte Cuotas de servicio de Amazon ECR.

  • Cuando hay artefactos de referencia en un repositorio, las políticas del ciclo de vida de Amazon ECR los limpiarán automáticamente en un plazo de 24 horas a partir de la eliminación de la imagen en cuestión.

Requisitos previos

Antes de comenzar, se deben cumplir los siguientes requisitos previos.

Configurar la autenticación para el cliente Notary

Antes de poder crear una firma mediante la CLI de Notation, debe configurar el cliente para que pueda autenticarse en Amazon ECR. Si tiene Docker instalado en el mismo host en el que instaló el cliente de Notation, Notation reutilizará el mismo método de autenticación que utiliza para el cliente de Docker. Los comandos login y logout del Docker permitirán que los comandos sign y verify de Notation usen esas mismas credenciales y no tendrá que autenticar Notation por separado. Para obtener más información acerca de la configuración de su cliente de Notation para la autenticación, consulte Autenticar con registros compatibles con OCI en la documentación de Notary Project.

Si no utiliza Docker u otra herramienta que utilice credenciales de Docker, le recomendamos que utilice el Asistente de credenciales de Docker de Amazon ECR como almacén de credenciales. Para obtener más información sobre cómo instalar y configurar el asistente de credenciales de Amazon ECR, consulte el Asistente de credenciales de Amazon ECR Docker.

Firma de una imagen

Los siguientes pasos se pueden emplear para crear los recursos necesarios para firmar una imagen de contenedor y almacenar la firma en un repositorio privado de Amazon ECR. Notation firma las imágenes mediante el resumen.

Para firmar una imagen
  1. Cree un perfil de AWS Signer firma mediante la plataforma de Notation-OCI-SHA384-ECDSA firma. Si lo desea, puede especificar un período de validez de la firma mediante el parámetro --signature-validity-period. Este valor puede especificarse utilizando DAYSMONTHS o YEARS. Si no se especifica ningún periodo de validez, se utiliza el valor predeterminado de 135 meses.

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

    El nombre del perfil de firma solo admite caracteres alfanuméricos y el guion bajo (_).

  2. Autentique el cliente de Notation en el registro predeterminado. En el siguiente ejemplo, se utiliza AWS CLI para autenticar la CLI de Notation en un registro privado de Amazon ECR.

    aws ecr get-login-password --region region | notation login --username AWS --password-stdin 111122223333.dkr.ecr.region.amazonaws.com
  3. Utilice la CLI de Notation para firmar la imagen y especifíquela mediante el nombre del repositorio y el resumen de SHA. Esto crea la firma y la envía al mismo repositorio privado de Amazon ECR donde se encuentre la imagen que se está firmando.

    En el siguiente ejemplo, se firma una imagen en el repositorio curl con el resumen de 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"

Pasos a seguir a continuación

Luego de firmar la imagen de contenedor, puede verificar la firma localmente. Para obtener instrucciones acerca de cómo verificar una imagen, consulte Verificar una imagen localmente después de firmar en la Guía para desarrolladores de AWS Signer .