Uso del cifrado del servidor con claves administradas por Amazon S3 (SSE-S3)
importante
Amazon S3 aplica ahora el cifrado del servidor con claves administradas por Amazon S3 (SSE-S3) como el nivel básico de cifrado para cada bucket de Amazon S3. Desde el 5 de enero de 2023, todas las cargas de objetos nuevos a Amazon S3 se cifran automáticamente sin costo adicional y sin afectar al rendimiento. El estado de cifrado automático para la configuración de cifrado predeterminada en el bucket de S3 y para cargas de objetos nuevos está disponible en registros de AWS CloudTrail, Inventario de S3, Lente de almacenamiento de S3, la consola de Amazon S3 y como encabezado de respuesta a la API de Amazon S3 adicional en AWS Command Line Interface y los SDK de AWS. Para obtener más información, consulte Preguntas frecuentes del cifrado predeterminado.
Todas las cargas de objetos nuevos en los buckets de Amazon S3 se cifran de forma predeterminada con cifrado del lado del servidor con claves administradas de Amazon S3 (SSE-S3).
El cifrado de lado de servidor protege los datos en reposo. Amazon S3 cifra cada objeto con una clave única. Como medida de seguridad adicional, cifra la propia clave con una clave que rota regularmente. El cifrado del servidor de Amazon S3 utiliza el modo Galois/Counter Mode (AES-GCM) estándar de cifrado avanzado de 256 bits para cifrar todos los objetos cargados.
No se aplican cargos adicionales por usar el cifrado del lado del servidor con claves administradas de Amazon S3 (SSE-S3). Sin embargo, las solicitudes para configurar la característica de cifrado predeterminadas generan cargos por solicitudes de Amazon S3 estándar. Para obtener información acerca de los precios, consulte Precios de Amazon S3
Si necesita que las cargas de datos se cifren únicamente con claves administradas de Amazon S3, puede utilizar la siguiente política de buckets. Por ejemplo, en la siguiente política de bucket se deniega el permiso para cargar un objeto a menos que la solicitud incluya el encabezado x-amz-server-side-encryption
para solicitar el cifrado del lado del servidor:
{ "Version": "2012-10-17", "Id": "PutObjectPolicy", "Statement": [ { "Sid": "DenyObjectsThatAreNotSSES3", "Effect": "Deny", "Principal": "*", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::
amzn-s3-demo-bucket
/*", "Condition": { "StringNotEquals": { "s3:x-amz-server-side-encryption": "AES256" } } } ] }
nota
El cifrado en el servidor solo cifra los datos de objetos, no los metadatos de objetos.
Compatibilidad con API para el cifrado del lado del servidor
Todos los buckets de Amazon S3 tienen el cifrado configurado de forma predeterminada y todos los objetos nuevos cargados en un bucket de S3 se cifran automáticamente en reposo. El cifrado del lado del servidor con claves administradas de Amazon S3 (SSE-S3) es la configuración de cifrado predeterminada para cada bucket de Amazon S3. Para usar otro tipo de cifrado, puede especificar el tipo de cifrado del servidor que se utilizará en las solicitudes PUT
de S3 o puede establecer la configuración de cifrado predeterminada en el bucket de destino.
Si desea especificar un tipo de cifrado diferente en sus solicitudes PUT
, puede utilizar el cifrado del servidor con claves de AWS Key Management Service (AWS KMS) (SSE-KMS), el cifrado del servidor de doble capa con claves de AWS KMS (DSSE-KMS) o el cifrado del servidor con claves proporcionadas por el cliente (SSE-C). Si desea establecer una configuración de cifrado predeterminada diferente en el bucket de destino, puede usar SSE-KMS o DSSE-KMS.
Para configurar el cifrado del lado del servidor con las API de REST de creación de objetos, debe proporcionar el encabezado de solicitud x-amz-server-side-encryption
. Para obtener más información acerca de las API de REST, consulte Uso de la API de REST.
Las siguientes API de Amazon S3 admiten este encabezado:
-
Operaciones PUT: especifique el encabezado de solicitud al cargar datos con la API
PUT
. Para obtener más información, consulte PUT Object. -
Iniciar carga multiparte: especifique el encabezado en la solicitud de inicio cuando cargue objetos grandes mediante la API de carga multiparte. Para obtener más información, consulte la sección sobre Cómo iniciar la carga multiparte.
-
Operaciones COPY: cuando copia un objeto, tiene un objeto de origen y otro de destino. Para obtener más información, consulte Objeto PUT - Copia.
nota
Cuando utilice una operación POST
para cargar un objeto, en vez de proporcionar el encabezado de solicitud, debe proporcionar la misma información en los campos del formulario. Para obtener más información, consulte POST Object.
Los AWS SDK también proporcionan API de encapsulamiento que puede utilizar para solicitar el cifrado del lado del servidor. También puede usar la AWS Management Console para cargar objetos y solicitar el cifrado del lado del servidor.
Para obtener más información, consulte Conceptos de AWS KMS en la Guía para desarrolladores de AWS Key Management Service.