ProviderConnectionPolicy::class, ]; public function boot(): void { $this->registerPolicies(); Gate::define('provider.view', function (User $user, Tenant $tenant): bool { if (! $user->canAccessTenant($tenant)) { return false; } return $user->tenantRole($tenant)?->canViewProviders() ?? false; }); Gate::define('provider.manage', function (User $user, Tenant $tenant): bool { if (! $user->canAccessTenant($tenant)) { return false; } return $user->tenantRole($tenant)?->canManageProviders() ?? false; }); Gate::define('provider.run', function (User $user, Tenant $tenant): bool { if (! $user->canAccessTenant($tenant)) { return false; } return $user->tenantRole($tenant)?->canRunProviderOperations() ?? false; }); } }