Buenas prácticas a nivel general
Convenciones para crear APIs: rutas y datos
¿Qué son los HTTP Status Codes?
¿Qué son los Métodos HTTP?
Creación del proyecto
Boilerplate y estructura de datos en frameworks de backend
Creación de datos: factories y seeders
Consulta de datos: rutas y controladores
Consulta de datos con tablas relacionadas
Quiz: Creación del proyecto
Planificación y mantenimiento
¿Cómo planificar el alcance de tus APIs?
Consistencia entre endpoints: recursos y colecciones
Recursos anidados o multinivel
Optimización y auditoría de APIs
Alteración de datos
Validación de datos
Quiz: Planificación y mantenimiento
Funciones de seguridad
Autenticación vs. autorización
Autorización: tokens y middlewares
Autenticación: inicio de sesión y generación de tokens
Corrigiendo bugs de seguridad
Políticas de acceso
Subir imágenes desde API
¿Qué es la autenticación?
Quiz: Funciones de seguridad
API Testing
API Testing
Testing en tags
Testing en recipes
Testing método store
Testing método update
Quiz: API Testing
API Breaking Changes
Versionamiento de la API
Evolución de la API: v2, paginación y TDD
Quiz: API Breaking Changes
Conclusiones
Recapitulación de las buenas prácticas para desarrollo de APIs
Comparte tus buenas prácticas con la comunidad
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
La autorización es clave en cualquier sistema que maneje información sensible. Se trata de verificar la identidad de un usuario para determinar su acceso y el control sobre ciertos recursos o funciones. En términos simples, es el proceso que decide si tienes permiso para realizar ciertas acciones dentro de un sistema. En esta clase, se implementará un sistema de autorización usando Laravel, una herramienta muy popular en el desarrollo web.
Laravel ofrece herramientas robustas para manejar la autenticación y autorización mediante el uso de tokens. A continuación, se describen los pasos esenciales para implementarlo:
Instalación de componentes: Usa Composer para instalar los componentes necesarios de Laravel. Por ejemplo:
composer require laravel/sanctum
Protección de rutas: Para restringir el acceso a ciertas rutas, agrúpalas y agrega la verificación de tokens:
Route::middleware('auth:sanctum')->group(function () {
// Rutas protegidas
});
Generación de tokens: Para interactuar con la base de datos y generar tokens, utiliza una herramienta como Laravel Tinker:
php artisan tinker
Dentro de Tinker, permite crear tokens usando el siguiente código:
$user = App\Models\User::find(5);
$token = $user->createToken('device_name')->plainTextToken;
Postman es una herramienta excelente para probar APIs. Aquí se explica cómo usarla para probar la autenticación con tokens generados:
Los tokens permiten al usuario autenticarse desde diferentes dispositivos. Un mismo usuario puede tener varios tokens activos al mismo tiempo, cada uno identificado con un nombre de dispositivo como "Android" o "Web App". Esto es cómo se gestionan:
Generación múltiple: Puedes generar múltiples tokens desde diferentes dispositivos:
$token1 = $user->createToken('Android')->plainTextToken;
$token2 = $user->createToken('Web App')->plainTextToken;
Eliminación de tokens: Si necesitas revocar el acceso, puedes eliminar un token específico desde la base de datos o a través de comandos en Laravel:
$user->tokens->each->delete();
El manejo correcto de tokens es crucial para mantener la seguridad y la integridad de tu aplicación. Este conocimiento te prepara para crear sistemas más seguros y efectivos.
La autenticación no solo se trata de limitar el acceso, sino de autenticar adecuadamente al usuario. Este enfoque, a menudo implementado en el middleware, cierra el ciclo de seguridad, asegurando que solo usuarios legítimos y autorizados puedan acceder a funciones específicas del sistema.
Así, la implementación de autenticación y autorización a través de Laravel no solo fortalece la seguridad, sino que también garantiza un manejo de datos eficiente y confiable. Sigue investigando y profundizando en estos temas para dominar la creación de aplicaciones seguras.
Aportes 3
Preguntas 3
buenisimo, grande como siempre
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?