Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

FortifyServiceProvider.php 1.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. namespace App\Providers;
  3. use App\Actions\Fortify\CreateNewUser;
  4. use App\Actions\Fortify\ResetUserPassword;
  5. use App\Actions\Fortify\UpdateUserPassword;
  6. use App\Actions\Fortify\UpdateUserProfileInformation;
  7. use Illuminate\Cache\RateLimiting\Limit;
  8. use Illuminate\Http\Request;
  9. use Illuminate\Support\Facades\RateLimiter;
  10. use Illuminate\Support\ServiceProvider;
  11. use Laravel\Fortify\Fortify;
  12. class FortifyServiceProvider extends ServiceProvider
  13. {
  14. /**
  15. * Register any application services.
  16. */
  17. public function register(): void
  18. {
  19. //
  20. }
  21. /**
  22. * Bootstrap any application services.
  23. */
  24. public function boot(): void
  25. {
  26. Fortify::createUsersUsing(CreateNewUser::class);
  27. Fortify::updateUserProfileInformationUsing(UpdateUserProfileInformation::class);
  28. Fortify::updateUserPasswordsUsing(UpdateUserPassword::class);
  29. Fortify::resetUserPasswordsUsing(ResetUserPassword::class);
  30. RateLimiter::for('login', function (Request $request) {
  31. $email = (string) $request->email;
  32. return Limit::perMinute(5)->by($email.$request->ip());
  33. });
  34. RateLimiter::for('two-factor', function (Request $request) {
  35. return Limit::perMinute(5)->by($request->session()->get('login.id'));
  36. });
  37. }
  38. }