Implementar una aplicación que haga uso del paradigma DevSecOps, tomando en consideración.
-
Toda la documentacón se desarrollará sobre el repositorio del curso.
-
Objetivos del proyecto: Debe establecerse claramente los objetivos del proyecto, como el desarrollo de una aplicación software segura, la implementación de prácticas de seguridad y la adopción de un enfoque de colaboración entre los equipos de desarrollo, seguridad y operaciones.
-
Integración de seguridad desde el inicio: El proyecto debe asegurarse de que la seguridad se integre desde las etapas iniciales del ciclo de desarrollo de software. Esto implica identificar y evaluar los posibles riesgos y amenazas de seguridad, y definir los controles y medidas necesarias para mitigarlos.
-
Automatización de pruebas de seguridad: Se deben implementar herramientas y procesos automatizados para realizar pruebas de seguridad de forma continua durante el ciclo de vida del desarrollo del software. Esto incluye pruebas de vulnerabilidades, análisis estático y dinámico del código fuente, pruebas de penetración y evaluaciones de configuración segura.
-
Integración continua y entrega continua (CI/CD): El proyecto debe incluir prácticas de integración continua y entrega continua, lo que implica la automatización de la construcción, pruebas y despliegue del software. Esto garantiza que los cambios se implementen de manera rápida y segura, y permite identificar problemas de seguridad en etapas tempranas.
-
Colaboración entre equipos: El proyecto debe fomentar la colaboración entre los equipos de desarrollo, seguridad y operaciones. Esto implica la comunicación continua, la compartición de conocimientos y la colaboración en la planificación, diseño y pruebas de seguridad.
-
Monitoreo y respuesta continua: El proyecto debe implementar mecanismos de monitoreo y respuesta continua para detectar y responder a posibles incidentes de seguridad en tiempo real. Esto incluye la implementación de sistemas de detección de intrusiones, registro y análisis de eventos de seguridad, y la adopción de un enfoque proactivo para la gestión de incidentes.
Documento arquitectural.
- Descripción funcional.
- Requerimientos.
- Casos de uso - historias de usuario.
- Diagrama de despliegue.
- Diagrama de secuencia.
- Modelo capa de persistencia.
- Manual de administración.
- Manuales de usuario.
- Contenedores sobre github.
- Docker compose.
- Orquestación.
- Script de pruebas de seguridad y despliegue.