Cargando



ASP.NET MVC - Autenticación

En este tutorial veremos el sistema de autenticación incluido en ASP.NET MVC.


may 04 2014 03:57
Profesional
may 05 2014 21:42
El primer mecanismo de defensa que posee un sitio o aplicación web contra el acceso no autorizado a su información es la autenticación de usuarios; con esto se logra que un usuario que quiera acceder a alguna sección tenga que presentar credenciales que sean reconocidas por nuestra estructura de persistencia de datos.

Dada la importancia de esta sección, ASP.NET MVC nos incluye una estructura básica con la funcionalidad que está lista para utilizarse ya en un ambiente de producción si así lo consideramos, pero que gracias a la estructura de la aplicación es altamente personalizable, con esto podemos lograr adaptarlo a nuestras necesidades.

Aplicando la Autenticación

Para requerir que un usuario ingrese y se autentique en nuestro sistema, podemos pedirle de varias formas que realice esta acción, podemos validar acciones individuales de los controladores o también podemos proteger un controlador en su totalidad.

¿Por qué proteger acciones y controladores?
Esto es debido a que el sistema de acceso a los recursos pasa por el router, es decir, que la única forma que tiene la aplicación de acceder a los recursos es a través de las URLs, por esto sabemos que cada URL llamará a una acción dentro de un controlador y por conveniencia entonces aplicamos la autenticación ahí.


Veamos en la siguiente imagen un código de un controlador de usuarios que nos permite acceder al perfil del mismo:

asp_autenticacion.jpg


Aquí se muestra como ubicamos al usuario por su nombre buscándolo a través del método GetUserByUsername, sin embargo tenemos un error fatal y es que no estamos logueados al sistema en este momento.

Ahora veamos en la siguiente imagen como ASP.NET MVC nos ayuda a manejar el requerimiento de tener que estar logueado para acceder a la acción correspondiente:


asp_autenticacion2.jpg


Aquí utilizamos [Autorize] este atributo o propiedad hace que sea requerido el identificador del usuario, por lo que si un usuario no ha ingresado al sistema intenta acceder a la URL que lo va a llevar al recurso Perfil le va a pedir que lo haga mostrando la pantalla de login/registro.

AccountController

Debido a que la tarea de un framework es facilitar la vida y el trabajo del desarrollador, ASP.NET MVC ya implementa un controlador de cuentas de usuario, el AccountController, este contiene acciones totalmente funcionales que permiten facilitar el flujo de la aplicación.

Las acciones que tiene implementadas son:

Login
Para que el usuario pueda autenticarse.

Logoff
Permite al usuario cerrar la sesión.

Registro
Permite el registro de un usuario nuevo.

Cambio de contraseña
Como su nombre lo indica permite al usuario modificar su contraseña de ingreso al sistema.


Es importante recalcar que debido a la modularidad de la construcción de las aplicaciones, podemos personalizar este módulo de ingreso con una cuenta al sistema, de hecho es recomendable al menos cambiar el aspecto que tiene:


asp_autenticacion3.jpg


Para logar este cometido podemos modificar la plantilla que se nos genera al crear un nuevo proyecto y ahí agregar, eliminar o modificar los elementos necesarios para hacer de esta funcionalidad nuestra.

¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X