Evidencias analisis seguridad S7 - JohannPaezU/MISW4501-MediSupply GitHub Wiki
Experimento de Seguridad – Evidencias, Análisis y Conclusiones
📋 Tabla de Contenidos
- 📌 Evidencias
- 📊 Análisis de Resultados
- 🎯 Cumplimiento de la hipótesis de diseño
- ✅ Conclusiones
- 🎥 Demostración
📌 Evidencias
El experimento de seguridad se validó mediante la interacción con los microservicios de Registro, Autorizador y Gestor de Inventario, tanto desde la documentación automática de FastAPI como desde Postman. Se recopiló evidencia gráfica para demostrar la efectividad de los mecanismos de autenticación y autorización.
🔹 Registro de usuarios
-
Registro exitoso: el sistema confirma cuando un nuevo usuario es creado correctamente.
-
Registro duplicado: cuando se intenta registrar un usuario ya existente, el sistema devuelve un mensaje de error.
🔹 Autenticación y OTP
-
Inicio de sesión correcto: credenciales válidas permiten acceder al flujo de autenticación.
-
Verificación OTP válida: el sistema genera un token JWT cuando el código OTP suministrado es correcto.
-
Verificación OTP inválida o inexistente: el sistema rechaza códigos erróneos o inexistentes.
🔹 Acceso al inventario protegido
-
Token válido: permite consultar el inventario y obtener los datos almacenados.
-
Token inválido o ausente: el sistema responde con error, impidiendo el acceso a la información sensible.
-
Creación de producto: utilizando un token válido, se puede añadir un producto al inventario.
-
Validación de integridad: tras crear un producto, la consulta al inventario muestra el nuevo registro, confirmando la correcta persistencia y seguridad de los datos.
📊 Análisis de Resultados
-
Autenticación robusta mediante OTP
- El uso de códigos de un solo uso (OTP) añade una capa adicional de seguridad frente a intentos de acceso no autorizado.
- Los tokens generados tras la validación OTP son temporales y permiten proteger los datos sensibles.
-
Seguridad en múltiples niveles
- Se validó que el acceso al inventario solo es posible con un token válido emitido por el Autorizador.
- Los intentos con credenciales inválidas o tokens incorrectos fueron bloqueados exitosamente.
-
Protección de la integridad de la información
- El sistema asegura que únicamente usuarios autenticados puedan crear y consultar productos en el inventario.
- Se verificó que los datos creados persisten de manera segura y solo son accesibles con autorización.
-
Arquitectura distribuida segura
- La separación de responsabilidades en tres microservicios (registro, autorizador e inventario) fortalece el principio de mínimo privilegio.
- Cada servicio cumple una función específica y depende de la validación de los demás para mantener la seguridad global.
🎯 Cumplimiento de la hipótesis de diseño
La hipótesis de diseño planteaba que, mediante un autorizador con OTP y JWT, únicamente los usuarios o servicios con los permisos adecuados podrían acceder al inventario de productos médicos, garantizando la confidencialidad e integridad de la información.
Con base en la evidencia recopilada durante las pruebas:
- El Registro permitió crear usuarios y almacenar credenciales encriptadas de forma confiable.
- El Autorizador gestionó correctamente la autenticación con OTP y la emisión de tokens JWT, rechazando intentos con credenciales inválidas o códigos OTP incorrectos.
- El Gestor de Inventario solo respondió a peticiones que incluyeran un token JWT válido y vigente, bloqueando accesos no autorizados o manipulados.
- Las pruebas de simulación de intrusiones (tokens caducados, modificados o credenciales inválidas) confirmaron que el sistema rechazó de forma adecuada dichos intentos.
✅ Conclusión: La hipótesis de diseño se cumplió.
El uso combinado de OTP, JWT y validación estricta en cada microservicio permitió garantizar la confidencialidad e integridad del inventario, asegurando que únicamente los usuarios autenticados y autorizados accedan a los datos sensibles.
✅ Conclusiones
- El sistema implementa de forma correcta la táctica de autenticación reforzada mediante OTP, mitigando riesgos de reutilización de credenciales y ataques de interceptación.
- La arquitectura distribuida con separación de servicios garantiza confidencialidad, integridad y control de acceso sobre la información sensible del inventario.
- El flujo de pruebas demostró que:
- Los usuarios deben autenticarse antes de acceder a datos sensibles.
- Los intentos no autorizados fueron correctamente bloqueados.
- El inventario mantiene la integridad de la información al validar estrictamente los tokens.
- Este enfoque aporta una base sólida para sistemas seguros en entornos distribuidos, reforzando la confianza en la protección de datos críticos.
🎥 Demostración
Se puede revisar la ejecución y explicación completa del experimento en el siguiente video:
📺 Video de demostración