S3 Encription:

Para encriptar objetos en Buckets se puede usar 4 métodos:

Existe también la encripción en tránsito:

—> HTTP Endpoint: No encriptado.

—> HTTPS Endpoints: Encriptado en tránsito.

Se recomienda bastante usar HTTPS y es mandatorio para SSE-C. La mayoría de clientes usará el HTTPS endpoint por defecto.

Sin embargo, Se puede forzar la encripción en tránsito:

image.png

S3 Encryption Hands On Notes:

—> Se debe tener versioning activado ya que el encriptado crea una nueva versión del objeto.

El SSE-C debe ser hecho a través de CLI, mientras que el CSE, debido a que es del lado del cliente, no hay necesidad de decirle nada a AWS.

S3 Default Encryption:

Por defecto, a todos los objetos se les aplica un encriptado de SSE-S3, pero se podría cambiar a SSE-KMS por ejemplo.

Opcionalmente, se puede forzar encription usando una bucket policy para que se rechace cualquier llamada a la API para crear un objeto sin headers de encriptado (SSE-KMS o SSE-C).

image.png

Nota: Las bucket policies son evaluadas antes del encriptado por defecto.