Qué es Passport
Laravel Passport es el paquete oficial para hacer que una aplicación Laravel funcione como servidor de autorización OAuth2. Se utiliza en integraciones con aplicaciones de terceros y en APIs que requieren el flujo OAuth2 estricto.Passport vs Sanctum
Si necesitas obligatoriamente OAuth2, elige Passport. Si tu objetivo es una autenticación con tokens de API sencilla o autenticación SPA/móvil, elige Sanctum.Cuando construyas un servidor MCP al que accedan clientes de IA, oficialmente se recomienda usar Passport. Los clientes MCP habitualmente asumen autenticación con OAuth.
Instalación
La recomendación oficial en Laravel 13 esinstall:api --passport.
Configuración
Modelo User
Añade el traitHasApiTokens y la interfaz OAuthenticatable al modelo User.
Guard de auth
En el guardapi de config/auth.php usa el driver passport.
Configuración del service provider
En elboot() de AppServiceProvider puedes definir los scopes y la caducidad de los tokens.
Gestión de clientes
Cliente para authorization code grant
Cliente para client credentials grant
EnsureClientIsResourceOwner.
Gestión de tokens
Asignar scopes
Comprobar scopes
Revocar
Proteger rutas de API
Añadeauth:api a las APIs que quieras proteger con tokens de acceso de usuario.
Personal Access Token
Sin usar el flujo completo de OAuth2, es apto para casos en los que el propio usuario emite un token de API.Si tu uso principal son los Personal Access Tokens, la propia documentación oficial de Laravel recomienda valorar Sanctum.