| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- <?php
- namespace App\Providers;
- use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
- use Illuminate\Support\Carbon;
- use Illuminate\Support\Facades\Gate;
- use Illuminate\Support\Facades\Route;
- use Laravel\Passport\Passport;
- class AuthServiceProvider extends ServiceProvider
- {
- /**
- * The policy mappings for the application.
- *
- * @var array
- */
- protected $policies = [
- 'App\Model' => 'App\Policies\ModelPolicy',
- ];
- /**
- * Register any authentication / authorization services.
- *
- * @return void
- */
- public function boot()
- {
- $this->registerPolicies();
- // Implicitly grant "Admin" role all permissions
- // This works in the app by using gate-related functions like auth()->user->can() and @can()
- Gate::before(function ($user, $ability) {
- return $user->hasRole('superAdmin') ? true : null;
- });
- Passport::routes();
- Passport::$ignoreCsrfToken = true;
- Passport::tokensExpireIn(Carbon::now()->addDays(15));
- Passport::refreshTokensExpireIn(Carbon::now()->addDays(30));
- }
- }
|