0
0

【Laravel】Illuminateにあるメソッド Auth編

Last updated at Posted at 2024-07-22

はじめに

LaravelでよくでてくるIlluminate\~\~って結局何だ?!と思いメソッドをまとめました。

言語

  • Laravel8

Illuminateとは

  • Laravelが提供する様々なサービスやコンポーネントを構成するための基盤を提供している。
  • サービスやコンポーネントはIlluminate名前空間内に整理されている

どこにあるか?

プロジェクトディレクトリ\vendor\laravel\Framework\src\Illuminate\~

Illuminate\Auth

  • 認証システムを管理するためのクラスがある。

Illuminate\Auth\AuthManager

  • AuthManagerクラスは認証の設定とドライバの管理を行う

guard($name = null)

  • 指定した認証の方法を取得する
     $user = Auth::guard('admin')->user();``
    

createToken($name)

  • APIトークンの作成をサポート。API認証で主に使用。
     $token = Auth::guard('api')->user()->createToken('Token Name');
    

setDefaultDriver($name)

  • デフォルトの認証ドライバを設定する。
     Auth::setDefaultDriver('api');
    

Illuminate\Auth\AuthServiceProvider

  • AuthServiceProviderクラスは認証サービスの設定を行うプロバイダー。

boot()

  • サービスプロバイダーがブートされるときに呼ばれる。ポリシーの登録やその他の設定をする。
         public function boot()
         {
             $this->registerPolicies();
         }
    

registerPolicies()

  • アプリケーションで使用するポリシーを登録する。
         public function boot()
         {
             Gate::policy(Post::class, PostPolicy::class);
         }
    

Illuminate\Contracts\Auth\Factory

  • AuthManagerのインターフェイスとして使用されるFactoryインターフェイス。

guard($name = null)

  • 認証ガードを取得
         $guard = $auth->guard();
    

createToken($name)

  • APIトークンの作成をサポート
         $token = $auth->user()->createToken('Token Name');
    

Illuminate\Auth\GuardHelpers

  • GuardHelpersトレイトには、ガードクラスでよく使用されるメソッドがある。

user()

  • 現在認証しているユーザーを取得。
        $user = Auth::user();
    

id()

  • 現在認証しているユーザーのIDを取得。
        $userId = Auth::id();
    

check()

  • ユーザーが認証されているかどうかを確認
        if (Auth::check()) {/*...*/}
    

guest()

  • 現在のユーザーがゲスト(未認証ユーザー)かどうかを確認
        if (Auth::guest()) {/*...*/}
    

attempt(array $credentials, $remember = false)

  • 認証を試み、成功した場合はユーザーをログイン
        if (Auth::attempt(['email' => $email, 'password' => $password], true)) { /* ... */ }
    

login($user, $remember = false)

  • 指定したユーザーをログインさせる
        Auth::login($user);
    

logout()

  • 現在のユーザーをログアウトさせる
        Auth::logout();
    

viaRemember()

  • ユーザーが「Remember Me」オプションを使って認証されたかどうかを確認
        if (Auth::viaRemember()) {/*...*/}
    

私のIlluminate関連記事

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0