Cargando



Restringir Acceso a la Aplicación con Laravel

En este tutorial veremos cómo podemos restringir el acceso a ciertas áreas de nuestra a aplicación a los usuarios que hagan login en la misma.


jul 19 2014 23:43
Avanzado
jul 21 2014 19:23
Cuando en nuestras aplicaciones empezamos a manejar usuarios registrados y la autenticación de los mismos, llega un momento en que vamos a necesitar hacer una segmentación por perfiles, esto no solo queda en decirle a un usuario si es administrador o es un usuario no administrativo, si no que ello conlleva establecer los límites de que acciones pueden realizar en nuestra aplicación.

Laravel nos ofrece unas librerías para poder establecer un sistema de sesiones y perfiles bastante completos, con ello podemos aprovechar toda esta infraestructura para concentrarnos solo en el detalle de nuestra aplicación y su lógica.

Restringir el Acceso de Forma Básica


En vez de hacer algo muy complejo, vamos a concentrarnos en dar acceso a ciertas páginas solamente a los usuarios autenticados en nuestra aplicación, imaginemos que si tuviésemos un blog solo quienes se loguean o tengan usuario son los que pueden generar notas o entradas.

Bajo este principio ya estamos estableciendo la segmentación necesaria que hará que podamos generar dos zonas claras en nuestra aplicación.

Construyendo la Restricción


Para efectivamente construir la restricción debemos tener ya creado un [color=#0000cd]sistema de autenticación de usuarios[/color], con ello podremos diferenciar a quienes han iniciado sesión de los que no lo han hecho, luego podremos trabajar con los diferentes métodos de la clase Auth de Laravel con la cuál podremos hacer los filtros correspondientes.

Lo primero que debemos hacer es crear un archivo de filtros, para ello vamos a crear una ruta que contenga la declaración que se utilizará para generar el filtro, veamos en la siguiente imagen como la construimos:

laravel_restringir_acceso.jpg


Luego que hemos hecho esto necesitamos crear el filtro dentro del archivo filters.php que hemos generado, aquí irá la validación que necesitamos, como este es un caso sencillo no tendrá mayor complejidad, veamos:



laravel_restringir_acceso2.jpg


Aquí simplemente vemos que si el usuario no está logueado lo enviamos a loguearse y si el usuario intenta acceder a un área de administrador y no lo es, lo enviamos a otra sección donde debe presentar sus credenciales como tal. El siguiente paso es generar una ruta restringida y una ruta de administradores, con ello cubriremos estos dos casos que hemos filtrado. En este caso generamos la ruta para el área restringida:




Notamos que corremos en la ruta la vista que generamos para la restricción del acceso y generamos un mensaje en caso que no pase nuestro filtro el usuario. Ahora veamos el caso en el cual debemos restringir el acceso solo a usuarios administradores, al igual que en el caso anterior haremos uso del método before para poder ejecutar la validación del filtro:



laravel_restringir_acceso4.jpg


Como vemos hemos generado un sistema de filtrado muy básico pero que nos sirve para poder segmentar de forma efectiva nuestros usuarios y de esta manera poder tener áreas para diferentes tipos de perfil en nuestras aplicaciones.

Con esto finalizamos el tutorial, recomendamos leer un poco más sobre la clase Auth y todos los métodos que tiene, ya que dicha clase de Laravel nos va a ayudar mucho a generar todo lo relacionado con la autenticación y autorización de usuarios.

¿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