Prácticas recomendadas de seguridad para buckets de directorio
Hay un número de características de seguridad que debe tener en cuenta al trabajar con buckets de directorio. Las siguientes prácticas recomendadas son directrices generales y no suponen una solución de seguridad completa. Puesto que es posible que estas prácticas recomendadas no sean adecuadas o suficientes para su entorno, considérelas como recomendaciones útiles en lugar de como normas.
Configuración predeterminada de Bloqueo de acceso público y Propiedad de objetos
Los buckets de directorio admiten S3 Block Public Access y S3 Object Ownership. Estas características de S3 se utilizan para auditar y administrar el acceso a sus buckets y objetos.
De forma predeterminada, todas las configuraciones de Bloqueo de acceso público estarán activas para los buckets de directorio. Además, la Propiedad de objetos está configurada como aplicada al propietario del bucket, lo que significa que las listas de control de acceso (ACL) están deshabilitadas. Esta configuración no se puede modificar. Para obtener más información sobre el uso de estas características, consulte Bloquear el acceso público a su almacenamiento de Amazon S3 y Control de la propiedad de los objetos y desactivación de las ACL del bucket.
nota
No puede conceder acceso a objetos almacenados en buckets de directorio. Solo puede conceder acceso a sus buckets de directorio. El modelo de autorización de S3 Express One Zone es diferente del modelo de autorización de Amazon S3. Para obtener más información, consulte Autorización de operaciones de la API de puntos de conexión zonales con CreateSession.
Autenticación y autorización
Los mecanismos de autenticación y autorización de los buckets de directorio varían en función de si realiza solicitudes a las operaciones de la API de puntos de conexión zonales o a las operaciones de la API de puntos de conexión regionales. Las operaciones de la API zonales son operaciones de nivel de objeto (plano de datos). Las operaciones de la API regionales son operaciones de nivel de bucket (plano de control).
Autentica y autoriza las solicitudes a las operaciones de la API de puntos de conexión zonales mediante un nuevo mecanismo basado en sesiones que está optimizado para brindar la latencia más baja. Con la autenticación basada en sesiones, los SDK de AWS utilizan la operación de la operación de la API
CreateSession
para solicitar credenciales temporales que otorgan acceso de baja latencia a su bucket de directorio. Estas credenciales temporales se asignan a un bucket de directorio específico y caducan a los 5 minutos. Puede usar estas credenciales temporales para firmar llamadas a la API zonal (de nivel de objeto). Para obtener más información, consulte Autorización de operaciones de la API de puntos de conexión zonales con CreateSession.
Firma de las solicitudes con credenciales para la administración de buckets de directorio
Utiliza las credenciales para firmar las solicitudes de API de puntos de conexión zonales (nivel de objeto) con AWS Signature Version 4, con s3express
como el nombre del servicio. Al firmar las solicitudes, utilice la clave secreta que se devuelve de CreateSession
y proporcione también el token de sesión junto con x-amzn-s3session-token header
. Para obtener más información, consulte CreateSession.
Los SDK de AWS compatibles administran las credenciales y la firma en su nombre. Le recomendamos que utilice los SDK de AWS para actualizar las credenciales y firmar las solicitudes por usted.
Firma de las solicitudes con credenciales de IAM
Todas las llamadas a la API regionales (de nivel de bucket) deben autenticarse y firmarse con credenciales de AWS Identity and Access Management (IAM) en lugar de con credenciales de sesión temporales. Las credenciales de IAM se componen del ID de clave de acceso y la clave de acceso secreta de las identidades de IAM. Todas las solicitudes CopyObject
y HeadBucket
también deben autenticarse y firmarse con credenciales de IAM.
Para lograr la latencia más baja en las llamadas a operaciones zonales (nivel de objeto), recomendamos utilizar las credenciales obtenidas al llamar a CreateSession
para firmar las solicitudes, excepto las solicitudes dirigidas a CopyObject
y HeadBucket
.
Uso de AWS CloudTrail
AWS CloudTrail proporciona un registro de las medidas adoptadas por un usuario, un rol o un Servicio de AWS en Amazon S3. Puede utilizar la información recopilada por CloudTrail para determinar lo siguiente:
-
La solicitud que se realizó a Amazon S3
-
La dirección IP desde la que se realizó la solicitud
-
Quién realizó la solicitud
-
La hora a la que se realizó la solicitud
-
Detalles adicionales sobre la solicitud
Cuando se configura una Cuenta de AWS, los eventos de administración de CloudTrail se activan de forma predeterminada. Las siguientes operaciones de la API de puntos de conexión regionales (operaciones de API de nivel de bucket o plano de control) se registran en CloudTrail.
nota
ListMultipartUploads
es una operación de la API de puntos de conexión zonales. Sin embargo, se registra en CloudTrail como un evento de administración. Para obtener más información, consulte ListMultipartUploads en la Referencia de la API de Amazon Simple Storage Service.
De forma predeterminada, los registros de seguimiento de CloudTrail no registran eventos de datos, pero pueden configurarse para los buckets de directorio que usted especifique o para que registren eventos de datos para todos los buckets de directorio incluidos en la cuenta de AWS. Las siguientes operaciones de la API de puntos de conexión zonales (operaciones de API de objeto o plano de datos) se registran en CloudTrail.
Para obtener más información sobre el uso de AWS CloudTrail con buckets de directorio, consulte Registro con AWS CloudTrail para buckets de directorio.
Implementación de la monitorización mediante las herramientas de supervisión de AWS
La monitorización es una parte importante del mantenimiento de la fiabilidad, la seguridad, la disponibilidad y el rendimiento de Amazon S3 y las soluciones de AWS. AWS brinda herramientas y servicios para ayudarlo a monitorizar Amazon S3 y los otros servicios de Servicios de AWS. Por ejemplo, puede monitorizar métricas de Amazon CloudWatch para Amazon S3, concretamente las métricas de almacenamiento BucketSizeBytes
y NumberOfObjects
.
Los objetos almacenados en buckets de directorio no se reflejarán en las métricas de almacenamiento BucketSizeBytes
y NumberOfObjects
para Amazon S3. Sin embargo, las métricas de almacenamiento BucketSizeBytes
y NumberOfObjects
son compatibles con los buckets de directorio. Para ver las métricas que elija, puede diferenciar entre las clases de almacenamiento de Amazon S3 mediante la especificación de una dimensión StorageType
. Para obtener más información, consulte Monitorización de métricas con Amazon CloudWatch.
Para obtener más información, consulte Monitorización de métricas con Amazon CloudWatch y Registro y monitoreo en Amazon S3.