POLITICA DE COOKIES

Q2BSTUDIO.COM utiliza cookies técnicas, analíticas, de sesión y de publicidad con la finalidad de prestar un mejor servicio. No obstante, necesitamos su consentimiento explícito para poder utilizarlas. Así mismo puede cambiar la configuración de las cookies u obtener más información aquí .

Recursos Personalizados de CloudFormation en Español Sencillo

Recursos Personalizados de CloudFormation en Español Sencillo

Publicado el 30/08/2025

Hola comunidad,

En este artículo explico de forma clara y práctica cómo usar Custom Resources en CloudFormation para cubrir escenarios que los recursos nativos no resuelven, por ejemplo habilitar S3 Block Public Access a nivel de cuenta. También comparto cómo el enfoque de desarrollo guiado por especificaciones spec driven development me ayudó a ordenar el proyecto y a reducir iteraciones innecesarias.

Qué son las Custom Resources en CloudFormation y por qué usarlas: las Custom Resources permiten extender CloudFormation mediante una función Lambda que se invoca en las operaciones CREATE, UPDATE y DELETE del stack. Esto es ideal cuando necesitas ejecutar lógica, consultar o ajustar configuraciones a nivel de cuenta o coordinar acciones que no se modelan como recursos por defecto. Documentacion oficial AWS https://docs.aws.amazon.com/es_es/AWSCloudFormation/latest/TemplateReference/aws-resource-cloudformation-customresource.html

Mi necesidad concreta en este proyecto fue sencilla y habitual: consultar y habilitar el Bloqueo de Acceso Publico en S3 a nivel de cuenta y opcionalmente notificar el cambio via SNS.

Resumen del flujo de un Custom Resource implementado para S3 BPA: 1 Despliegue CloudFormation crea el stack y envía evento CREATE a la Lambda 2 La Lambda consulta la configuracion actual de S3 BPA usando boto3 3 Si BPA no esta habilitado, la Lambda lo habilita 4 La Lambda puede publicar un mensaje en SNS con el resultado 5 La Lambda responde a CloudFormation con SUCCESS o FAILED

Desarrollo guiado por especificaciones spec driven development: para este proyecto utilice Kiro como asistente que me ayudo a estructurar requerimientos, definir un diseno tecnico y generar tareas iterativas. En lugar de dar un unico prompt masivo, dividir el trabajo en requerimientos, diseno y tareas permite menos revisiones y un proceso reproducible.

Pasos generales seguidos: 1 Definicion de requerimientos claves como habilitar S3 Block Public Access a nivel de cuenta, manejo de CREATE UPDATE DELETE, envio opcional de notificaciones SNS y manejo robusto de errores 2 Diseno tecnico con Lambda como cerebro del Custom Resource, plantilla CloudFormation para desplegar todo y pruebas unitarias para la logica 3 Ejecucion iterativa por tareas verificando cada componente antes de avanzar

Detalles de la implementacion: la Lambda utiliza boto3 para leer la configuracion de account level block public access y aplica cambios solo cuando es necesario para evitar churn. Se implemento manejo de errores y reintentos prudentes, logs estructurados y opcion de enviar notificacion a un topico SNS tras la accion. Al actualizar el stack la Lambda compara el estado deseado con el actual y toma las acciones necesarias. En delete se puede optar por dejar la configuracion tal cual o revertir segun la politica definida en la especificacion.

Beneficios de usar Custom Resources: permite aplicar cambios que solo se pueden hacer por API pero que forman parte de la infraestructura como codigo, mantener trazabilidad en CloudFormation, automatizar ajustes de seguridad a nivel de cuenta y coordinar notificaciones o auditorias.

Repositorio con codigo y documentos: he publicado la implementacion completa en GitHub incluyendo plantilla CloudFormation, codigo de la Lambda con pruebas y documentos de requirements diseno y tareas. Enlace https://github.com/pangoro24/aws-cloudformation-custom-resource-bpa-account/

Sobre Q2BSTUDIO: Q2BSTUDIO es una empresa de desarrollo de software que crea aplicaciones a medida y software a medida para clientes de distintos sectores. Somos especialistas en inteligencia artificial e ia para empresas, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio y agentes IA. Tambien trabajamos con Power BI para visualizacion y analitica avanzada. Si buscas aplicar agentes IA en tus procesos, mejorar seguridad o desplegar soluciones en la nube, en Q2BSTUDIO ofrecemos servicios integrales desde el diseno hasta la operacion.

Palabras clave y areas de expertise: aplicaciones a medida software a medida inteligencia artificial ciberseguridad servicios cloud aws y azure servicios inteligencia de negocio ia para empresas agentes IA power bi

Conclusiones: los Custom Resources son una herramienta potente para extender CloudFormation y automatizar configuraciones a nivel de cuenta que no vienen cubiertas por recursos nativos. Seguir un enfoque spec driven development ayuda a reducir iteraciones y a clarificar requisitos desde el inicio. En Q2BSTUDIO podemos ayudarte a implementar estas soluciones y a integrarlas con tus procesos de desarrollo y operaciones.

Te invito a dejar preguntas o proponer casos de uso que te interese que profundice, como ejemplos practicos de plantillas, manejo de errores avanzados o integracion con servicios de monitoreo y seguridad.

Gracias por leer.

Fin del artículo, inicio de la diversión
Construyendo software juntos

Dando vida a tus ideas desde 2008

Diseñamos aplicaciones móviles y de escritorio innovadoras que cumplen con tus requisitos específicos y mejoran la eficiencia operativa.
Más info
Cuéntanos tu visión
Sea cual sea el alcance, podemos convertir tu idea en realidad. Envíanosla y charlemos sobre tu proyecto o una colaboración futura.
Contáctanos
artículos destacados
Live Chat
Enviado correctamente.

Gracias por confiar en Q2BStudio