Skip to content

CU03 completo y base de CU01: servicio de usuarios, seguridad y cambios en la base

martin.mislej requested to merge martin_branch into develop

Se completa la lógica del CU03 (Gestión de usuarios y credenciales iniciales) y se agrega la base del CU01 (sesión, permisos por rol y recuperación de contraseña). También se agregan a la base de datos la columna de contraseña temporal y la tabla para los enlaces de recuperación.

Cambios

Base de datos

  • sql/05_usuarios.sql: nueva columna con_temporal BOOLEAN NOT NULL DEFAULT FALSE.
  • sql/29_toke_recuperacion.sql: tabla nueva para los enlaces de "Olvidé mi contraseña".

usuario (CU03)

  • modelo: DatosUsuario y las fábricas UsuarioFactory, AdministradorFactory y EvaluadorFactory (patrón Factory Method). Rol ahora tiene los permisos de cada rol.
  • servicio:
    • ValidadorUsuario: aplica todas las reglas del CU03, incluido el dígito verificador de la CI.
    • IGestionUsuarios y GestionUsuariosService: alta, modificación, activación, inactivación y restablecimiento de contraseña.
    • GestionUsuariosProxy (patrón Proxy): solo permite operar al Administrador.
  • persistencia: UsuarioDAO guarda con_temporal, usa la fábrica y tiene el método nuevo actualizarContrasenia.

seguridad (CU01)

  • modelo: Sesion (Singleton), Funcionalidad y TokenRecuperacion.
  • servicio: PoliticaContrasenia, GeneradorContrasenia y NotificadorCorreo (por ahora el correo se muestra por consola).
  • persistencia: TokenRecuperacionDAO.

Otros

  • Se actualizan uml_secu.puml y uml_secu.svg con las clases nuevas.
  • Se quita el .gitkeep de los paquetes que ya tienen código.

Merge request reports

Loading