2022 Entrega2 - ucseiw-team/catedra GitHub Wiki

Entrega 2

Registro, login y administración de usuarios

El proyecto debe estar deployado y disponer de la siguiente funcionalidad:

  • Una página de inicio que no requiera login para visualizarse.
  • Una página secundaria que requiera login y se visualice correctamente a los usuarios logueados.
  • Si un usuario no logueado intenta acceder a la segunda página, debe redireccionarse al login, y luego de loguearse debe volver automáticamente a esta página.
  • Capacidad para que los usuarios nuevos se registren en el sitio (y visualizar la página secundaria).
  • Administración de usuarios que permita a un usuario administrador listar, crear, modificar y eliminar usuarios.

Además:

  • Se debe informar la url del servidor en el grupo de la materia, para que los profes podamos acceder a corregirla.
  • Se debe compartir a los profesores un nombre de usuario y contraseña con permisos de administración, para poder testear la sección de administración (esta información debe ser enviada por mail privado).

Flujo de estados y flujo de páginas de usuarios

  • Documentar en la wiki con diagramas, el flujo de estados de usuarios (explicación si hace falta).
  • Documentar en la wiki con diagramas, el flujo de páginas de registración y activación de usuarios. Dependiendo del caso, puede ser un solo flujo de páginas, o dos flujos separados (explicación si hace falta).

Información útil

Quienes utilicen Django como framework para el desarrollo de la aplicación, pueden aprovechar el admin para la administración de usuarios, y la aplicación auth (que viene incluída) para resolver la autenticación (login, etc). La documentación oficial y el tutorial oficial ofrecen información respecto a su uso. También está permitido utilizar libs de terceros para resolver la registración.

Un tutorial sencillo sobre el uso de auth en Django: https://learndjango.com/tutorials/django-login-and-logout-tutorial

Y recomendamos muchísimo usar el decorador login_required de Django: https://docs.djangoproject.com/en/4.1/topics/auth/default/#the-login-required-decorator