Artisan príkazy
Mŕtve riadky — odvolané alebo expirované dlhšie než prune.after — natrvalo zmaže RefreshTokens::prune() alebo príkaz refresh-tokens:prune (tenká vrstva nad ním). Balík sa sám neplánuje; naplánujete ho vy:
// routes/console.php
use Illuminate\Support\Facades\Schedule;
Schedule::command('refresh-tokens:prune')->daily();php artisan refresh-tokens:prune # uses config('refresh-tokens.prune.after')
php artisan refresh-tokens:prune --days=7 # override retention (min 1)RefreshTokens::prune(); // int — uses config('refresh-tokens.prune.after')
RefreshTokens::prune(days: 7); // override retention- refresh-tokens:prune — natrvalo zmaže mŕtve riadky a vypíše ich počet.
- --days / days: — prepíše dobu uchovania; musí to byť celé číslo aspoň 1 (0 alebo necelé číslo sa odmietne, prune(0) vyhodí InvalidTokenConfigurationException a rovnako aj nakonfigurované prune.after pod 1).
- about --only=refresh-tokens — vypíše prehľad konfigurácie bez tajomstiev.
Prečo minimum jeden deň: čistenie tokenov odvolaných pred pár minútami by zničilo dôkazy pre detekciu opätovného použitia — rotovaný token zmazaný hneď po odvolaní a potom predložený zlodejom nenájde riadok a nespustí odvolanie rodiny. Dobu uchovania držte pohodlne dlhšiu, než je TTL prístupových tokenov.
Použitie model:prune
Model je Prunable, takže funguje aj vstavaný príkaz Laravelu — jeho dopyt prunable() číta to isté okno prune.after. Samotné php artisan model:prune však hľadá modely len v app/Models, takže model balíka nikdy nenájde. Uveďte ho výslovne — alebo svoju podtriedu, ak ste zmenili refresh-tokens.model:
php artisan model:prune --model="RoundlyConsulting\RefreshTokens\Models\RefreshToken"Ak model:prune plánujete aj pre vlastné modely, spúšťajte popri ňom refresh-tokens:prune namiesto spoliehania sa na automatické vyhľadanie.
Prejavte lásku k open source
Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.
Ďalšie spôsoby podpory vrátane kryptomienOdoslaním daru súhlasíte s našimi podmienkami prijímania darov.
Chcete to zabudovať do svojho produktu?
Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.