c2.3 Protege la integridad de los datos de entrenamiento con S3 Object Lock y versionado
Mantén los datasets de entrenamiento a prueba de manipulación y recuperables para que datos envenenados o alterados puedan detectarse y revertirse.
Guía de implementación
Cómo implementarlo en AWS
Almacena los datos de entrenamiento y validación en S3 con versionado y, donde corresponda, Object Lock, para que las modificaciones se rastreen y existan registros de auditoría inmutables. Restringe el acceso de escritura con políticas basadas en recursos y registra todo acceso.
Haz los datos de entrenamiento a prueba de manipulaciones y recuperables
Si un atacante (o un error) altera tu conjunto de entrenamiento, un modelo afinado sobre él hereda el daño: el envenenamiento de datos es difícil de detectar después del hecho. Dos funciones de S3 hacen defendible el conjunto de datos:
- El versionado conserva cada versión de un objeto, de modo que una sobrescritura o un borrado nunca destruye el original: puedes volver a una versión buena conocida.
- Object Lock impone escribir-una-vez-leer-muchas (WORM): una versión de objeto bloqueada no puede sobrescribirse ni borrarse hasta que expira su periodo de retención.
Object Lock solo funciona en un bucket versionado, y el versionado se habilita automáticamente al habilitar Object Lock.
Habilita el versionado y luego una retención predeterminada
Activa el versionado y establece una retención predeterminada de Object Lock para que los objetos de entrenamiento nuevos queden protegidos automáticamente:
# Primero el versionado (Object Lock lo requiere)
aws s3api put-bucket-versioning \
--bucket my-bedrock-training-data \
--versioning-configuration Status=Enabled
# Retención WORM predeterminada: 30 dias en modo GOVERNANCE
aws s3api put-object-lock-configuration \
--bucket my-bedrock-training-data \
--object-lock-configuration '{
"ObjectLockEnabled": "Enabled",
"Rule": { "DefaultRetention": { "Mode": "GOVERNANCE", "Days": 30 } }
}'
Elige el modo de retención correcto
- GOVERNANCE — los objetos están protegidos, pero los usuarios con el permiso
s3:BypassGovernanceRetentionaún pueden quitar el bloqueo. Buen valor predeterminado para tener evidencia de manipulación sin dejarte fuera a ti mismo. - COMPLIANCE — nadie, ni siquiera la cuenta root, puede acortar la retención ni borrar la versión hasta que expire. Úsalo solo cuando estés seguro del periodo de retención, ya que no se puede deshacer.
DefaultRetention acepta Days o Years, no ambos.
Combínalo con verificaciones de integridad
WORM protege contra manipulaciones después de la carga; registra además una suma de comprobación (por ejemplo, un checksum de S3 o un hash de manifiesto) al ingerir un conjunto de datos, para poder demostrar los bytes exactos con los que se entrenó una versión dada del modelo. Combínalo con el control de CMK de personalización para que los datos protegidos también estén cifrados bajo tu clave.
Nota de nomenclatura: reemplaza el nombre del bucket y ajusta la ventana de retención a tu política de gobernanza de datos. Prueba con GOVERNANCE antes de considerar COMPLIANCE.
Criterios de aceptación
Los buckets de entrenamiento tienen versionado (y Object Lock donde se requiera); el acceso está restringido y registrado; las versiones previas del dataset son recuperables.
Implementación práctica
Cómo se implementa este control en cada arquitectura de referencia:
Los datos de entrenamiento viven en buckets S3 versionados con Object Lock en la cuenta de IA generativa, con escrituras restringidas y cada acceso registrado en el Log archive.
- Habilita el versionado y, para datasets que deban ser inmutables, Object Lock en los buckets S3 de entrenamiento/validación de la cuenta de IA generativa.
- Restringe el acceso de escritura con una política de bucket basada en recursos solo al rol de curación de datos, y deniega los borrados al rol del job de personalización.
- Envía los logs de eventos de datos de acceso a S3 al Log archive central para que toda modificación quede registrada y sea atribuible.
Cómo validar: Los buckets de entrenamiento tienen versionado (y Object Lock donde se requiera); solo el rol de curación puede escribir; una versión previa del dataset es recuperable; el acceso se registra de forma central.
Evita: Sobrescribir datasets en el lugar sin versionado. Entonces no puedes detectar envenenamiento ni probar qué datos entrenaron un modelo; versiónalo y bloquéalo.
El versionado y Object Lock en los buckets de entrenamiento de la cuenta mantienen los datasets a prueba de manipulación y recuperables, con escrituras limitadas al rol de curación.
- Activa el versionado y Object Lock (donde se requiera) en los buckets de entrenamiento/validación.
- Limita las escrituras a un rol de curación de datos vía política de bucket; deniega los borrados al rol del job.
- Registra todo acceso en el bucket de logs con Object Lock de la cuenta para que las modificaciones sean atribuibles.
Cómo validar: Los buckets tienen versionado (y Object Lock donde se requiera); las escrituras están restringidas; una versión previa es recuperable; el acceso se registra.
Evita: Dejar que el rol del job de entrenamiento borre o sobrescriba los datos fuente. Separa la curación del consumo y conserva versiones inmutables.
Amenazas que atiende
- Modificación silenciosa o envenenamiento de los datos de entrenamiento.
- Sin registro inmutable de qué datos entrenaron un modelo.
Servicios AWS
Precios
El versionado y Object Lock no añaden cargo por función, pero pagas el almacenamiento de S3 por cada versión retenida: un conjunto de datos envenenado-y-luego-corregido mantiene ambas copias. Usa reglas de ciclo de vida para expirar las versiones no actuales tras tu ventana de retención y controlar el costo. Consulta Locking objects with S3 Object Lock.
Mapeos de frameworks
OWASP GenAI/LLM Top 10 (2026)
- LLM05 Data and Model Poisoning
NIST AI Risk Management Framework (AI 100-1)
- MANAGE.4 Risk treatments, monitoring and response are documented and applied
AWS Well-Architected Generative AI Lens (Security)
- GENSEC06-BP01 Implement data purification filters for model training workflows
Recursos de aprendizaje
- Uso de S3 Object Lock (doc)
Referencias
- AWS SRA para IA — Capacidad 2, Amazon S3
AI Security Maturity Model