Token Forge від Blaspsoft — це універсальний пакет для Laravel, призначений для впровадження надійного та налаштовуваного управління API-токенами у вашому застосунку. Пакет базується на реалізації токенів Laravel Jetstream і розроблений для користувачів Laravel Breeze.
Основні функції цього пакета:
TokenForgeController
, адаптуючи під специфічні потреби застосунку.Примітка: цей пакет підтримує як Blade, так і Inertia Vue стеки, надані Laravel Breeze, і потребує Laravel Sanctum. Перед установкою Token Forge переконайтеся, що обраний стек Laravel Breeze правильно налаштований разом із Laravel Sanctum.
За умови, що ці залежності вже встановлені та налаштовані, ви можете встановити Token Forge за допомогою Composer:
composer require blaspsoft/token-forge
php artisan vendor:publish --tag=token-forge-config --force
Це створить файл конфігурації за адресою config/token-forge.php
, що дозволить налаштувати параметри Token Forge.
В залежності від вибраного стека Laravel Breeze, запустіть відповідну команду для встановлення Token Forge:
# Для Blade
php artisan token-forge:install blade
# Для Vue-Inertia
php artisan token-forge:install vue
Якщо ви використовуєте Inertia з Vue, потрібно внести додаткові зміни до вашого мідлвару HandleInertiaRequest.php
. Це дозволить Token Forge передавати інформацію про токен в Inertia-відповіді, що дасть можливість використовувати токен у ваших Vue-компонентах.
public function share(Request $request): array
{
return [
...parent::share($request),
'auth' => [
'user' => $request->user(),
],
'flash' => [
'tokenForge' => [
'token' => fn () => session()->get('token'),
],
],
];
}
В файлі config/token-forge.php
також вкажіть свої стандартні та доступні дозволи. Наприклад:
'default_permissions' => [
'read',
],
'available_permissions' => [
'create',
'read',
'update',
'delete',
],
Після налаштування Token Forge надасть вам маршрути, які забезпечать повноцінний інтерфейс для генерації, перегляду та анулювання API-токенів через єдиний REST API.
Ви можете дізнатися більше про цей пакет, отримати повну інструкцію щодо установки та переглянути вихідний код на GitHub.