更新:2024/06/26

Laravel Jetstreamでユーザー登録やパスワードの更新・リセットを制限する方法

ふゅか
ふゅか
今日はLaravel Jetstreamでのユーザー登録やパスワードの更新・リセットを制限する方法についてみていこう!

1. Fortifyの設定ファイルの編集

Laravel Jetstreamは、認証機能を提供するFortifyパッケージに依存しています。Fortifyの設定ファイルであるconfig/fortify.phpを編集することで、不要な機能を無効にすることができます。

はるか
はるか
Fortifyの設定ファイル、config/fortify.phpを編集することで、特定の機能を無効にできる。

1.1. 設定ファイルの編集手順

  1. 設定ファイルを開くまず、config/fortify.phpファイルを開きます。
  2. featuresオプションを編集次に、featuresオプション内に記述されている機能のうち、無効にしたい機能をコメントアウトまたは削除します。以下は、ユーザー登録機能とパスワードリセット機能を無効にする例です。
    'features' => [
        // Features::registration(),
        // Features::resetPasswords(),
        Features::emailVerification(),
        Features::updateProfileInformation(),
        //Features::updatePasswords(),
        Features::twoFactorAuthentication([
            'confirm' => true,
            'confirmPassword' => true,
            // 'window' => 0,
        ]),
    ],
    
    

    上記の設定では、Features::registration()がコメントアウトされているため、ユーザー登録機能が無効になります。また、パスワードリセット機能を無効にしたい場合は、Features::resetPasswords()をコメントアウトします。パスワードの更新を無効にしたい場合は、Features::updatePasswords()をコメントアウトします。

1.2. 注意点

  • ユーザー登録の無効化: Features::registration()をコメントアウトまたは削除することで、新規ユーザーの登録が無効になります。
  • パスワードリセットの無効化: Features::resetPasswords()をコメントアウトまたは削除することで、ユーザーがパスワードをリセットする機能が無効になります。
  • パスワード更新の無効化:Features::updatePasswords()をコメントアウトまたは削除することで、ユーザーがパスワードを更新する機能が無効になります。

はるか
はるか
例えば、登録ページにアクセスしてみて、404エラーが表示されるかをチェックする。


http://127.0.0.1:8000/registerに移動すると、404 NOT FOUNDになっていることを確認できます。

PR