Parte 11 — Operación, seguridad y gobierno
Lo que separa un ejercicio de un sistema: restauración probada, migraciones sin caída, control de acceso, observabilidad y privacidad.
6 clases · 19 horas ·
24 conceptos · 17 fuentes
Antes de esta parte
Esta parte se apoya en lo trabajado antes. Si vienes de fuera del programa, revisa al menos el vocabulario de:
De qué trata esta parte
Lo que separa un ejercicio de un sistema. Seis clases sobre las tareas que no aparecen en ningún tutorial de SQL y que son las que deciden si el sistema sobrevive a su segundo año: restaurar, migrar sin caída, controlar el acceso, no ser vulnerable, medir lo que los usuarios notan y tratar el dato personal como una obligación de diseño.
El orden es el de la gravedad de las consecuencias. Primero el respaldo, con la afirmación más incómoda del programa: solo cuenta lo que se ha restaurado. Después las migraciones evolutivas con expandir y contraer, que es el patrón que permite desplegar esquema y código por separado. Luego el control de acceso, con una comprobación que suele salir mal: si la aplicación se conecta como propietaria del esquema, no hay privilegio mínimo. Después la inyección SQL, explicada por su causa y con su solución completa. Luego la observabilidad, donde la media oculta y el p99 enseña. Y al final privacidad, retención y gobierno.
La clase 061 está clasificada como fundamentos a propósito, aunque esté en una parte avanzada: no hay nivel de experiencia en el que la parametrización sea opcional.
Al terminar esta parte podrás
- Declarar RPO y RTO en números y demostrarlos con una restauración cronometrada.
- Ejecutar una migración de esquema sin ventana de caída usando expandir y contraer.
- Configurar roles con privilegio mínimo y seguridad por fila, y comprobar que el filtro no se puede eludir.
- Escribir código inmune a inyección y validar los identificadores dinámicos con lista blanca.
- Definir objetivos de servicio por percentil y usar el presupuesto de error para decidir.
- Diseñar retención y supresión de datos personales incluyendo respaldos y réplicas.
Las clases, una por una
Intermedio · 4 h ·
3 fuentes · requiere 046
La clase que convierte una intención en una garantía medida. RPO y RTO se declaran en números, la recuperación a un punto en el tiempo se demuestra restaurando de verdad, y la conclusión es incómoda a propósito: un respaldo que nunca se ha restaurado no es un respaldo, es un fichero con nombre esperanzador.
RPO RTO recuperación a un punto en el tiempo prueba de restauración
Avanzado · 3 h ·
3 fuentes · requiere 013, 024
Cambiar el esquema con el sistema en marcha, usando expandir y contraer: primero añadir sin quitar, después trasladar el tráfico y rellenar el histórico por lotes reanudables, y solo al final eliminar lo viejo. La compatibilidad hacia atrás deja de ser una buena práctica y pasa a ser obligatoria en cuanto el despliegue es gradual.
expandir y contraer doble escritura relleno compatibilidad hacia atras
Intermedio · 3 h ·
4 fuentes · requiere 013, 024
El control de acceso con una comprobación incómoda como punto de partida: si la aplicación se conecta como propietaria del esquema, no hay privilegio mínimo. Trata roles, separación de funciones y seguridad por fila, cuya ventaja sobre filtrar en la aplicación es que no hay consulta que se pueda olvidar del filtro.
privilegio mínimo rol seguridad por fila separación de funciones
Fundamentos · 3 h ·
4 fuentes · requiere 003, 024
La inyección SQL explicada por su causa —mezclar código y datos en la misma cadena— y su solución completa: la consulta parametrizada, que no es una mitigación sino una defensa total. Cubre además el caso que los parámetros no resuelven, los identificadores dinámicos, que solo se validan con lista blanca.
consulta parametrizada identificador dinamico lista blanca defensa en profundidad
Avanzado · 3 h ·
3 fuentes · requiere 052, 058
Medir lo que los usuarios notan. La media oculta y el p99 enseña; con veinte consultas por petición, casi todo el mundo toca la cola lenta. Une objetivos de servicio, presupuesto de error, saturación como señal anticipada y el registro de consultas lentas ordenado por tiempo total, no por la peor.
percentil presupuesto de error saturación consulta lenta
Intermedio · 3 h ·
3 fuentes · requiere 058, 060
El dato personal como una obligación de diseño y no como un anexo legal. Minimización, limitación de finalidad, seudonimización y derecho de supresión, con el choque que hay que resolver antes de que llegue la solicitud: los respaldos, las réplicas y los registros de auditoría también contienen ese dato.
minimización limitación de finalidad seudonimización derecho de supresión
Errores frecuentes en esta parte
Cada uno de estos es una creencia habitual y su corrección.
- «Tengo respaldos automáticos.» Tienes ficheros. Hasta que no se restaura uno en un entorno limpio y se cronometra, el RTO real es desconocido.
- «Escapo las comillas y ya estoy protegido.» Escapar a mano falla; parametrizar no. Y para identificadores dinámicos ni una cosa ni la otra: lista blanca.
- «La latencia media está bien.» La media oculta la cola. Con veinte consultas por petición, casi todos los usuarios tocan al menos una lenta.
- «Borro al usuario de la tabla y cumplo.» Sigue estando en los respaldos, en las réplicas y probablemente en el registro de auditoría.
Vocabulario de la parte
Los 24 términos que esta parte introduce. Todos están también
en el glosario del programa con sus términos
relacionados.
Fuentes usadas en esta parte
17 obras distintas sostienen lo que se afirma en estas
6 clases.
Otras partes