В Laravel аутентификацию можно строить по-разному: написать самому на guards, взять starter kit, подключить Fortify как headless-бэкенд или выдавать API-токены через Sanctum и Passport. Здесь разберём, кто за что отвечает и как выбирать. Guards и Breeze описаны в уроке про starter kits.
Fortify: аутентификация без интерфейса
Fortify регистрирует маршруты и действия для входа, регистрации, сброса пароля, подтверждения email и двухфакторной аутентификации. Он ничего не рисует: страницы подключаете вы.
composer require laravel/fortify
php artisan fortify:install
php artisan migratefortify:install публикует FortifyServiceProvider, config/fortify.php, классы app/Actions/Fortify и миграцию со столбцами 2FA. В Laravel 12 provider добавляется в bootstrap/providers.php.
<?php
namespace App\Providers;
use App\Actions\Fortify\CreateNewUser;
use Illuminate\Support\ServiceProvider;
use Laravel\Fortify\Fortify;