Files
AggloSign/backend/app/Providers/AppServiceProvider.php
T
2026-09-30 16:27:32 +02:00

33 lines
978 B
PHP

<?php
namespace App\Providers;
use Illuminate\Cache\RateLimiting\Limit;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Event;
use Illuminate\Support\Facades\RateLimiter;
use Illuminate\Support\ServiceProvider;
class AppServiceProvider extends ServiceProvider
{
public function register(): void
{
//
}
public function boot(): void
{
// Pilote Socialite « azure » (SocialiteProviders) pour le SSO Entra.
Event::listen(function (\SocialiteProviders\Manager\SocialiteWasCalled $event) {
$event->extendSocialite('azure', \SocialiteProviders\Azure\Provider::class);
});
// 120 appels / minute par agent : largement au-dessus d'un usage normal de l'add-in.
RateLimiter::for('signature', function (Request $request) {
$oid = $request->attributes->get('entra_claims')['oid'] ?? null;
return Limit::perMinute(120)->by($oid ?: $request->ip());
});
}
}