Control centralizado de S3 Block Public Access a nivel organizacional (en español sencillo)
Source: Dev.to
¡Hola comunidad! 👋
Quiero compartirles una nueva funcionalidad de seguridad en AWS que me parece interesante pero he visto que se ha mencionado muy poco en las redes: el bloqueo público de los buckets de S3 desde AWS Organizations.
Si quieres leer el anuncio oficial de esta funcionalidad, puedes verla aquí:
¿Por qué me llamó la atención esto?
La razón principal es simple: control centralizado desde la cuenta administradora de la organización.
La vieja solución
Antes (todavía el presente para muchos) teníamos básicamente dos opciones para asegurar que los objetos de los buckets no se expusieran públicamente:
Opción 1: Bloqueo a nivel de cuenta
Tenías que ir cuenta por cuenta dentro de tu organización, activando manualmente (o con scripts) el Block Public Access en cada una. Esto significa:
- Configuración repetitiva en múltiples cuentas
- Mayor probabilidad de error humano
- Necesidad de monitorear cada cuenta individualmente
- Complejidad al escalar
Opción 2: Bloqueo a nivel de bucket
Aún peor. Esto implicaba configurar cada bucket individual con Block Public Access activado:
- Trabajo manual exhaustivo
- Imposible de escalar en organizaciones grandes
- Fácil olvidar un bucket nuevo
- Pesadilla operativa para auditorías
Ambas opciones requerían vigilancia constante y eran propensas a errores.
La nueva solución
Política a nivel organizacional.
¿Qué significa esto en la práctica?
Con un control preventivo habilitado en la cuenta de gestión de tu organización, obtienes:
- ✅ Control centralizado: Todo se gestiona desde un solo lugar
- ✅ Aplicación automática: Se aplica a todas las cuentas de la organización
- ✅ Menos vigilancia: Ya no necesitas monitorear cada cuenta o cada bucket
Es elegante, es simple, es efectivo.
Cómo se implementa
-
Activar el tipo de política S3
aws organizations enable-policy-type \ --root-id r-1234 \ --policy-type S3_POLICY -
Verificar que la política quedó habilitada
{ "PolicyTypes": [ { "Type": "S3_POLICY", "Status": "ENABLED" } ] } -
Crear la política en la consola

Esto significa que ya puedes crear la política, pero no implica que el bloqueo público ya esté activo.
-
Validar el comportamiento
- Creé un sitio web alojado en S3.
- Quité el bloqueo público a nivel de bucket y a nivel de cuenta.
- Configuré una política de recurso muy permisiva en el bucket para poder ver el sitio web desde Internet.

-
Desplegar la política usando infraestructura como código

-
Comprobar que el bloqueo público está activo
Después de activar la política para toda la organización, el sitio web muestra un error, confirmando que el bloqueo público quedó habilitado.

Demo
Acabo de publicar la plantilla de despliegue de la política de S3 usando CloudFormation en mi GitHub:
Para cerrar
Esta implementación es perfecta si:
- Gestionas múltiples cuentas de AWS en una organización
- Quieres reforzar la seguridad sin aumentar la carga operativa
- Buscas cumplir con políticas de seguridad de manera escalable
- Prefieres la prevención sobre la detección
Sugerencia adicional: Si ya habías activado el bloqueo públi
A nivel de cuenta, manténla y así tendrás una capa adicional de seguridad (defense in depth).
¿Preguntas? ¿Sugerencias? ¡Los leo en los comentarios! 💬
Tags: #aws #cloudformation #security #devops #s3 #organizations