From fb7b1e37219e9ba813dd6c7591660c05e449b0ee Mon Sep 17 00:00:00 2001 From: = Date: Thu, 18 Jun 2026 10:33:58 +0000 Subject: [PATCH] Feat: Configure Laravel Passport for API authentication - Added `PassportServiceProvider` to configure token expiration intervals. - Updated `User` model with `HasApiTokens` trait and `OAuthenticatable` interface for Passport support. - Registered `PassportServiceProvider` in `bootstrap/providers.php`. --- app/Models/User.php | 6 ++++-- app/Providers/PassportServiceProvider.php | 21 +++++++++++++++++++++ bootstrap/providers.php | 1 + 3 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 app/Providers/PassportServiceProvider.php diff --git a/app/Models/User.php b/app/Models/User.php index 90ec5ee..5f06d1c 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -18,6 +18,8 @@ use Illuminate\Notifications\Notifiable; use Illuminate\Support\Str; use Laravel\Fortify\TwoFactorAuthenticatable; +use Laravel\Passport\Contracts\OAuthenticatable; +use Laravel\Passport\HasApiTokens; use Spatie\Permission\Models\Permission; use Spatie\Permission\Traits\HasRoles; @@ -26,10 +28,10 @@ */ #[Fillable(['name', 'email', 'password', 'immutable_id'])] #[Hidden(['password', 'two_factor_secret', 'two_factor_recovery_codes', 'remember_token'])] -final class User extends Authenticatable implements OidcUserInterface +final class User extends Authenticatable implements OAuthenticatable, OidcUserInterface { /** @use HasFactory */ - use HasFactory, HasOidcClaims, SoftDeletes; + use HasApiTokens, HasFactory, HasOidcClaims, SoftDeletes; use HasRoles; use Notifiable; diff --git a/app/Providers/PassportServiceProvider.php b/app/Providers/PassportServiceProvider.php new file mode 100644 index 0000000..581409d --- /dev/null +++ b/app/Providers/PassportServiceProvider.php @@ -0,0 +1,21 @@ +