Protección de Rutas en Laravel con Middleware de Autenticación
Clase 6 de 23 • Curso de Desarrollo en Laravel con Test Driven Development
Contenido del curso
- 3

Instalación y configuración inicial de proyectos en Laravel
03:27 - 4

Configuración de Relaciones y Pruebas Unitarias en Laravel
07:52 - 5

Configuración de Relaciones en Laravel usando Testing
10:26 - 6

Protección de Rutas en Laravel con Middleware de Autenticación
10:22 - 7

Pruebas Automatizadas para Registro y Redirección en Base de Datos
10:17 - 8

Configuración de Actualización de Registros con Pruebas en PHP
11:19 - 9

Validación de Datos en Controladores: Configuración y Pruebas
05:37 - 10

Eliminación de Registros en Base de Datos con PHP y Tests
04:16
- 15

Formulario de Edición con Diseño y Tests en Laravel
09:41 - 16

Testing de Formularios en PHP: Creación y Validación de Vistas
07:24 - 17

Configuración de Controladores y Vistas en Laravel para el Área Pública
08:44 - 18

Diseño Web con Tailwind CSS: Mejora de Apariencia y Formato
06:15 - 19

Pruebas y Configuración de Seeders en Proyectos Laravel
08:32
¿Cómo automatizar pruebas de ruta en un proyecto web?
Descubrir e implementar técnicas eficaces para proteger rutas puede ser un desafío, pero es una habilidad esencial para cualquier desarrollador web. Automatizar el testing en rutas es más que escribir un script; es garantizar que los usuarios accedan correctamente a las secciones permitidas de un sitio web mientras se protegen las áreas restringidas. En este artículo, te guiaré a través del proceso para configurar pruebas de rutas en un proyecto, especialmente cuando un usuario no ha iniciado sesión.
¿Cómo se estructura un test para una función protegida?
-
Apertura y configuración inicial:
- Abre tu navegador y coloca el enlace que se va a probar.
- Accede a funcionalidades específicas del proyecto, como la página de inicio de sesión si no has iniciado sesión.
-
Creación del controlador y test inicial:
- Usa el comando
phpArtisanMakeTestpara crear un nuevo test funcional. - Define la estructura del controlador en el que quieres verificar la respuesta esperada.
- Usa el comando
-
Ruta y controlador del repositorio:
- Organiza tus carpetas de trabajo. En este caso, dentro de
http, ubicacontrollers, y dentro decontrollersdefine el nuevo archivo de test. - Confirma que estás trabajando dentro de la estructura correcta, para asegurarte de que todas las rutas se prueben efectivamente.
- Organiza tus carpetas de trabajo. En este caso, dentro de
¿Qué implican las configuraciones de un CRUD?
Al trabajar con sistemas CRUD (Crear, Leer, Actualizar, Eliminar), se deben detallar y proteger siete rutas esenciales. Siguiendo estas pautas puedes lograr un entorno de pruebas eficaz:
- Asegura que al visitar la raíz o index siempre se redirija al login en usuarios no autenticados.
- Verifica respuestas 404: Estas se generan cuando la ruta no existe, lo cual es un indicativo de que las rutas aún no están configuradas.
- Implementa rutas de recursos y asigna middleware de autenticación.
¿Cómo proteger y probar específicamente rutas CRUD?
-
Creación y verificación:
- Con el comando
phpArtisan make:controller, crea un controlador siguiendo la nomenclatura adecuada. - Asegura que las rutas apuntan correctamente al controlador, por ejemplo,
Controllers::class.
- Con el comando
-
Aplicación del middleware de autenticación:
- Asigna el middleware a las siete rutas generadas automáticamente para asegurar que todas queden protegidas.
- Siempre utiliza la configuración adecuada del middleware para proteger de manera efectiva las rutas definidas.
-
Centrarse en el detalle de cada ruta:
- Mostrar (Index): Testea para verificar redirecciones a login cuando el usuario no está autenticado.
- Editar y actualizar: Define rutas
puty verifica si pueden ser accedidas sin autenticación. - Eliminar y crear: Configura pruebas
postpara asegurar que la funcionalidad también esté protegida. - Visualizar form de crear: Asegura que las páginas de formulario, como las de creación, están protegidas adecuadamente.
¿Cómo usar herramientas de comandos para confirmar la protección de rutas?
- Utiliza
phpArtisanRoute2.list: Esto te permite visualizar claramente todas las rutas generadas en el terminal. - Prueba cada ruta individualmente para confirmar la redirección adecuada o el acceso permitido, asegurando que la petición cae dentro del entorno de seguridad correcto.
¡Ánimo! Comprender y automatizar pruebas de rutas no solo garantiza la seguridad, también aumenta la usabilidad y la confianza en tu aplicación. Mantén estos pasos en mente y sigue explorando técnicas de testing para perfeccionar tus proyectos.