Laravelの認証機能
Laravelの認証機能は、基本的に「ガード」と「プロバイダ」で構成されている。
ガード
: リクエストごとにユーザーを認証する方法を定義する。ログイン機構の種類を表す。
プロバイダ
: 永続ストレージからユーザーを取得する方法を定義する。認証の方法。
アプリケーションの認証設定ファイルはconfig/auth.phpにあり、ここで認証の動作を微調整することができる。
App\Models\Userモデルのデータベースのパスワードの列の長さは60文字以上にする。
また、100文字のnullableな文字列remember_tokenカラムを確実に含める。
remember_tokenはアプリケーションへログインするときに「持続ログイン(remember me)」オプションを選択したユーザーのトークンを格納するために使用される。
新しくLaravelのアプリケーションを作った際には元々この条件を満たすカラムが作られている
認証の流れ
ユーザーがユーザー名とパスワードを入力
↓
ログイン情報が正しければ認証したユーザーの情報をユーザーのセッションに保存
そしてその際クッキーではセッションIDが含まれるため後のリクエストでも正しく関連づけることができる
↓
受信する側のアプリケーションはセッションIDに基づきセッションデータを取得する
↓
認証情報がセッションに保存されていることを確認し、ユーザーを「認証済み」と見なす
エコシステム
エコシステム
: Laravelフレームワークの周辺で構築されたさまざまなパッケージ、ツール、リソースの集合体?
Laravelは、通常Auth,Sessionファサードを介してアクセスされる組み込みの認証およびセッションサービスを持つ