Appearance
Configuration
The publishable config file is config/sp-jwt-auth.php.
bash
php artisan vendor:publish --tag=sp-jwt-auth-configCore JWT
Important core keys:
guard: Laravel guard name, defaultapi.driver: guard driver, defaultsp-jwt.user_provider: Laravel user provider, defaultusers.issuer: JWT issuer claim.audience: optional JWT audience claim.algorithm: signing algorithm, defaultRS256.access_ttl_minutes: access JWT lifetime.refresh_ttl_days: refresh token lifetime.rotate_refresh_tokens: refresh tokens rotate by default.reuse_detection: action after refresh token reuse, defaultrevoke_session.
Signing Keys
keys.active_kid selects the signing key. keys.items stores active, previous, retired, or compromised keys.
Do not use APP_KEY as the JWT signing key.
Hash Keys
Refresh tokens, OTP codes, verification tokens, reset tokens, API keys, and OAuth secrets are stored as HMAC hashes. hash_keys.active_id selects the active hash key.
Optional Modules
Optional module sections:
mfaemail_verificationpassword_resetapi_keysexternal_identitiesoauth_server
Each optional module can be enabled independently. Core JWT does not require their dependencies, migrations, or runtime paths for normal first-party auth.