Gestión de Tokens API para Reclutadores en devlog-ist/landing
Introducción
En el proyecto devlog-ist/landing, estamos implementando una nueva funcionalidad para la gestión de tokens API, específicamente dirigida a los reclutadores. Este proyecto se centra en la creación de una plataforma de gestión de tokens API para reclutadores, permitiéndoles generar, visualizar y revocar tokens de acceso.
El Desafío
Anteriormente, la gestión de tokens API era un proceso manual y menos transparente. Los reclutadores necesitaban una forma centralizada y segura de administrar sus tokens para acceder a la API, con visibilidad sobre los límites de uso y la documentación relevante.
La Solución
Implementamos una página de Filament en la sección de Configuración > Tokens API, donde los reclutadores pueden administrar sus tokens Sanctum. Esta página muestra:
- El nivel actual del usuario.
- Límites de velocidad.
- Marcas de tiempo de uso de los tokens.
- Enlaces a la documentación de la API.
Para facilitar la gestión, se incluyeron traducciones a EN, ES, FR y DE.
Ejemplo de creación de token API:
use Laravel\Sanctum\NewAccessToken;
class ApiTokenController
{
public function createToken(Request $request)
{
$token = $request->user()->createToken($request->token_name);
return ['token' => $token->plainTextToken];
}
}
Este fragmento de código muestra cómo se crea un nuevo token para un usuario autenticado utilizando Laravel Sanctum. El $request->user() obtiene el usuario actual y el método createToken genera un nuevo token con el nombre especificado.
Decisiones Clave
- Uso de Laravel Sanctum: Facilita la creación y gestión de tokens API.
- Página de Filament: Integración sencilla en el panel de administración existente.
- Traducciones: Soporte para múltiples idiomas para una mejor experiencia de usuario.
Resultados
- Mayor control y visibilidad para los reclutadores sobre sus tokens API.
- Proceso simplificado de creación y revocación de tokens.
- Mejora en la seguridad y gestión de acceso a la API.
Lecciones Aprendidas
La implementación de esta funcionalidad nos enseñó la importancia de proporcionar herramientas intuitivas y seguras para la gestión de acceso a la API, especialmente cuando se trata de usuarios con diferentes niveles de permisos. La traducción a múltiples idiomas es crucial para la adopción global.