gestion usuarios - ManuelJDonoso/Proyecto_daw GitHub Wiki

Gestión de Usuarios

Este documento describe el sistema de gestión de usuarios en Crónicas de Mérida, incluyendo autenticación, control de acceso basado en roles, gestión de perfiles y funciones administrativas.


Sistema de Control de Acceso Basado en Roles

La aplicación implementa un sistema jerárquico de control de acceso con cuatro roles principales:

  1. Visitante: Acceso limitado, sin autenticación.
  2. Jugador: Usuario registrado con permisos básicos.
  3. Moderador: Usuario con permisos de moderación.
  4. Administrador: Acceso completo a todas las funciones.

imagen

Cada rol se implementa como una subclase de la clase base Usuario, sobrescribiendo métodos para habilitar capacidades específicas.

imagen


Flujo de Autenticación de Usuarios

El sistema de autenticación maneja el inicio de sesión, la gestión de sesiones y la recuperación de contraseñas.

imagen

Gestión de Sesiones

Al iniciar la aplicación, se verifica si hay un usuario autenticado en la sesión. Si no lo hay, se inicializa un usuario como Visitante.


Gestión de Cuentas de Usuario

Proceso de Creación de Cuenta

La aplicación proporciona las siguientes rutas para la gestión de cuentas:

  • login: Formulario de inicio de sesión.
  • creat_account: Formulario de registro para nuevos usuarios.
  • registro_ok: Confirmación de registro exitoso.
  • registro_err: Página de error en caso de fallo en el registro.
  • creat_account_err: Otra página de error para problemas en la creación de cuenta.

Recuperación de Contraseña

El sistema admite la recuperación de contraseñas mediante las siguientes rutas:

  • recuperar: Formulario de solicitud de recuperación de contraseña.
  • procesar_recuperacion: Procesa la solicitud de recuperación.
  • cambiar_contrasena: Formulario para establecer una nueva contraseña.
  • actualizar_contrasena: Procesa la actualización de la contraseña.

Gestión de Perfiles de Usuario

Los usuarios autenticados pueden gestionar su información de perfil a través de la vista my_profile.

imagen


Gestión Administrativa de Usuarios

Los administradores tienen acceso a funciones adicionales para la gestión de usuarios:

Asignación de Roles

La vista assing_role permite a los administradores modificar los roles de los usuarios, promoviendo o degradando su nivel de privilegio.

Eliminación de Usuarios

La vista delete_user permite a los administradores eliminar permanentemente a los usuarios del sistema.


Componentes de Interfaz de Usuario para la Gestión de Usuarios

La aplicación incluye varios componentes de interfaz de usuario estilizados específicamente para la gestión de usuarios:

Formulario de Inicio de Sesión

El formulario de inicio de sesión está estilizado con la clase login-box y sus elementos secundarios.

Formulario de Registro

El formulario de registro incluye la aceptación de términos y condiciones.


Implementación del Control de Acceso

El acceso a las páginas se controla en index.php verificando los roles de usuario antes de mostrar el contenido. Este patrón se utiliza para incluir vistas y funcionalidades condicionalmente según el rol del usuario.


Conclusión

El sistema de gestión de usuarios en Crónicas de Mérida proporciona un mecanismo robusto de control de acceso basado en roles a través de herencia de objetos y métodos sobrescritos, garantizando una gestión segura y eficiente de los usuarios.