【PHP/Laravel】Laravel Fortify + AdminLTE 認証

php-laravel

まず、Laravel FortifyAdminLTEについて、以前の記事で若干触れてる。

Laravel Fortify + AdminLTE 認証

  • Fortifyのみではフロント側は無いため、公式のように書くか、自作しないといけない。または、スターターキットを利用する。他にAdminLTEのようにフロントのフレームワークを利用するのも一つの手。
  • FortifyServiceProvider.phpで、Fortifyにタスクの指示を出す。ログイン、パスワードリセット、メール認証、パスワード再設定等。それが、Fortify::loginViewなど。DI(依存性の注入)についてもここに書いている。ログイン条件を指定、追加したりする場合には、FortifyServiceProviderや別途ミドルウェアに書いて、処理を分岐させる。Kernel.phpにも追加する。トークン周りの処理もここに。
  • 基本設定周りは、config/fortify.php、config/adminlte.php、config/auth.phpを変更する。
  • 認証はデフォルトでusersテーブルに設定されているため、他のテーブルに変更したい場合には、基本設定周りの変更、usersのように対象Modelやマイグレーションファイルの変更(Authenticatable継承)が必要。
  • AdminLTEを使用する場合、wikiのBasic Configurationにあるコマンドを実行することで、views\auth\以下に、login.blade.php、reset.blade.php、email.blade.php等が追加されている。これをfortifyのフロント側として使用。fortifyのルーティングは\fortify\routes\routes.phpに書かれてある。これとAdminLTEのフロントを利用することで認証をカスタマイズする。カスタマイズに当たっては、より踏み込んで見る必要もある(ex. PasswordBroker.php)。

参照

Laravel Fortify
Laravel 9.x サービスコンテナ
jeroennoten/Laravel-AdminLTE
laravel/framework
LaravelのPasswordBrokerについて調べる

git, Laravel, php, programming

Posted by 異世界攻略班