Inventario Municipal

Problema
Operaciones basadas en papel causando cuellos de botella institucionales masivos y sin acceso público al fondo documental histórico.
Solución
Plataforma de gestión documental con catálogo público y panel de administración seguro, desplegada en producción para el Archivo Histórico Municipal.
Seguridad
Backend FastAPI sirviendo operaciones CRUD concurrentes con RBAC de 4 roles, sesiones HttpOnly, rate limiting y bloqueo automático de IPs.
Decisiones de Arquitectura
FastAPI sobre Django: rendimiento asíncrono para operaciones CRUD concurrentes y validación tipada con Pydantic. MySQL gestionado en Aiven Cloud (SSL obligatorio) sobre SQLite: concurrencia real para múltiples técnicos y backups automáticos. Autenticación por sesión con token opaco (secrets.token_urlsafe) en cookie HttpOnly en lugar de JWT — permite revocación inmediata de sesiones, imposible con JWT stateless. RBAC de 4 roles con verificación de permiso granular por endpoint. Despliegue desacoplado: frontend estático en Vercel (CDN), backend en Render, BD en Aiven.
Aprendizajes
Realicé una auditoría de seguridad propia con Kali Linux (análisis de endpoints, pruebas de SQLi, rate limiting) que reveló la exposición de la documentación OpenAPI en producción y un endpoint de búsqueda sin bloqueo de IP ante patrones de ataque — ambos corregidos. Confirmé que las consultas parametrizadas con SQLAlchemy resistían la inyección SQL. Aprendizaje clave: la seguridad por capas (WAF de infraestructura + lógica de aplicación) es más robusta que una única blacklist, y el cumplimiento RGPD (purga automática de datos) debe diseñarse desde el inicio, no añadirse después.
Impacto
Reducción del tiempo de procesamiento manual en un 90%, migración de 769 documentos y auditoría de seguridad completa (OWASP, Kali Linux) entregada al cliente.
Stack
¿Tienes un problema similar?
Cuéntame el problema. Analizo el flujo, estimo el ROI y propongo la arquitectura adecuada.