Configurar el cifrado del lado del servidor para los artefactos almacenados en Amazon S3 para CodePipeline - AWS CodePipeline

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.

Configurar el cifrado del lado del servidor para los artefactos almacenados en Amazon S3 para CodePipeline

Hay dos formas de configurar el cifrado del lado servidor para los artefactos de Amazon S3:

  • CodePipeline crea un depósito de artefactos de S3 y lo establece de forma predeterminada Clave administrada de AWS al crear una canalización mediante el asistente Crear canalización. Clave administrada de AWS Se cifra junto con los datos del objeto y se gestiona mediante AWS.

  • Puede crear y administrar su propia clave administrada por el cliente.

importante

CodePipeline solo admite KMS claves simétricas. No utilice una KMS clave asimétrica para cifrar los datos de su bucket de S3.

Si utiliza la clave de S3 predeterminada, no podrá cambiar ni eliminar esta Clave administrada de AWS. Si utiliza una clave administrada por el cliente AWS KMS para cifrar o descifrar los artefactos del depósito de S3, puede cambiar o rotar esta clave administrada por el cliente según sea necesario.

Amazon S3 admite políticas de bucket que podrá usar si requiere cifrado del lado del servidor para todos los objetos almacenados en un bucket. Por ejemplo, la siguiente política de bucket deniega el permiso de carga del objeto (s3:PutObject) a todo el mundo si la solicitud no incluye el x-amz-server-side-encryption encabezado que solicita el cifrado del lado del servidor con un signo -. SSE KMS

{ "Version": "2012-10-17", "Id": "SSEAndSSLPolicy", "Statement": [ { "Sid": "DenyUnEncryptedObjectUploads", "Effect": "Deny", "Principal": "*", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::codepipeline-us-west-2-89050EXAMPLE/*", "Condition": { "StringNotEquals": { "s3:x-amz-server-side-encryption": "aws:kms" } } }, { "Sid": "DenyInsecureConnections", "Effect": "Deny", "Principal": "*", "Action": "s3:*", "Resource": "arn:aws:s3:::codepipeline-us-west-2-89050EXAMPLE/*", "Condition": { "Bool": { "aws:SecureTransport": "false" } } } ] }

Para obtener más información sobre el cifrado del lado del servidor AWS KMS, consulte Protección de datos mediante el cifrado del lado del servidor y Protección de los datos mediante el cifrado del lado del servidor con claves almacenadas en (-). KMS AWS Key Management Service SSE KMS

Para obtener más información al respecto AWS KMS, consulte la Guía para desarrolladores.AWS Key Management Service

Vea su Clave administrada de AWS

Cuando se usa el asistente Create Pipeline (Crear canalización) para crear la primera canalización, se crea un bucket de S3 automáticamente en la misma región en la que se creó la canalización. El bucket se utiliza para almacenar artefactos de canalización. Cuando se ejecuta una canalización, los artefactos se colocan y se recuperan en el bucket de S3. De forma predeterminada, CodePipeline utiliza el cifrado del lado del servidor con el AWS KMS uso Clave administrada de AWS de Amazon S3 (la aws/s3 clave). Clave administrada de AWS Se crea y almacena en su cuenta. AWS Cuando se recuperan los artefactos del depósito S3, se CodePipeline utiliza el mismo SSE KMS proceso para descifrar el artefacto.

Para ver información sobre su Clave administrada de AWS
  1. Inicie sesión en la AWS KMS consola AWS Management Console y ábrala.

  2. Si aparece una página de bienvenida, elija Empezar ahora.

  3. En el panel de navegación, elija Claves administradas de AWS .

  4. En Filtrar, elija la región de la canalización. Por ejemplo, si la canalización se creó en us-east-2, asegúrese de que el filtro esté establecido en Este de EE. UU. (Ohio).

    Para obtener más información sobre las regiones y los puntos de conexión disponibles CodePipeline, consulta los puntos de conexión y las AWS CodePipeline cuotas.

  5. En la lista de claves de cifrado, elija la clave con el alias usado para su canalización (de forma predeterminada, aws/s3). Se mostrará información básica acerca de la clave.

Configure el cifrado del lado del servidor para los buckets de S3 mediante o el AWS CloudFormationAWS CLI

Al utilizar AWS CloudFormation o AWS CLI para crear una canalización, debe configurar el cifrado del lado del servidor manualmente. Utilice la política del bucket de ejemplo anterior y cree su propia clave administrada por el cliente. También puede usar sus propias claves en lugar de la clave predeterminada de Clave administrada de AWS. Algunas de las razones para elegir su propia clave son las siguientes:

  • Desea rotar la clave según una programación para satisfacer los requisitos de negocio o de seguridad de la organización.

  • Desea crear una canalización que use los recursos asociados a otra cuenta de AWS . Esto requiere el uso de una clave administrada por el cliente. Para obtener más información, consulte Crea una canalización CodePipeline que utilice recursos de otra AWS cuenta.

Las prácticas criptográficas recomendadas desaconsejan la reutilización generalizada de claves de cifrado. Es recomendable que rote la clave con regularidad. Para crear nuevo material criptográfico para sus AWS KMS claves, puede crear una clave gestionada por el cliente y, a continuación, cambiar las aplicaciones o los alias para utilizar la nueva clave gestionada por el cliente. También puede habilitar la rotación automática de claves para una clave administrada por el cliente existente.

Para rotar la clave gestionada por el cliente, consulte Rotación de claves.

importante

CodePipeline solo admite claves simétricasKMS. No utilice una KMS clave asimétrica para cifrar los datos de su bucket de S3.