env('SITE_NAME', 'Snipe-IT'), /* |-------------------------------------------------------------------------- | Application Environment |-------------------------------------------------------------------------- | | This value determines the "environment" your application is currently | running in. This may determine how you prefer to configure various | services your application utilizes. Set this in your ".env" file. | */ 'env' => env('APP_ENV', 'production'), /* |-------------------------------------------------------------------------- | Result Limit |-------------------------------------------------------------------------- | | This value determines the max number of results to return, even if a higher limit | is passed in the API request. This is done to prevent server timeouts when | custom scripts are requesting 100k assets at a time. | */ 'max_results' => env('MAX_RESULTS', 500), /* |-------------------------------------------------------------------------- | Application Debug Mode |-------------------------------------------------------------------------- | | When your application is in debug mode, detailed error messages with | stack traces will be shown on every error that occurs within your | application. If disabled, a simple generic error page is shown. | */ 'debug' => env('APP_DEBUG', false), 'warn_debug' => env('WARN_DEBUG', true), /* |-------------------------------------------------------------------------- | Application URL |-------------------------------------------------------------------------- | | This URL is used by the console to properly generate URLs when using | the Artisan command line tool. You should set this to the root of | your application so that it is used when running Artisan tasks. | */ 'url' => env('APP_URL', 'http://localhost'), /* |-------------------------------------------------------------------------- | Application Timezone |-------------------------------------------------------------------------- | | Here you may specify the default timezone for your application, which | will be used by the PHP date and date-time functions. We have gone | ahead and set this to a sensible default for you out of the box. | */ 'timezone' => env('APP_TIMEZONE', 'UTC'), /* |-------------------------------------------------------------------------- | Application Locale Configuration |-------------------------------------------------------------------------- | | The application locale determines the default locale that will be used | by the translation service provider. You are free to set this value | to any of the locales which will be supported by the application. | */ 'locale' => env('APP_LOCALE', 'en-US'), /* |-------------------------------------------------------------------------- | Application Fallback Locale |-------------------------------------------------------------------------- | | The fallback locale determines the locale to use when the current one | is not available. You may change the value to correspond to any of | the language folders that are provided through your application. | */ 'fallback_locale' => env('FALLBACK_APP_LOCALE', 'en-US'), /* |-------------------------------------------------------------------------- | Encryption Key |-------------------------------------------------------------------------- | | This key is used by the Illuminate encrypter service and should be set | to a random, 32 character string, otherwise these encrypted strings | will not be safe. Please do this before deploying an application! | */ 'key' => env('APP_KEY'), 'cipher' => env('APP_CIPHER', 'AES-256-CBC'), /* |-------------------------------------------------------------------------- | Default Storage path for private uploads |-------------------------------------------------------------------------- | This is the path for any uploaded files that have to be run through the | auth system to ensure they are not visible to the public. These should be | stored somewhere outside of the web root so that an unauthenticated user | cannot access them. | | For example: license keys, contracts, etc. | */ 'private_uploads' => storage_path().'/private_uploads', /* |-------------------------------------------------------------------------- | ALLOW I-FRAMING |-------------------------------------------------------------------------- | | Normal users will never need to edit this. This option lets you run | Snipe-IT within an I-Frame, which is normally disabled by default for | security reasons, to prevent clickjacking. It should normally be set to false. | */ 'allow_iframing' => env('ALLOW_IFRAMING', false), /* |-------------------------------------------------------------------------- | ENABLE HTTP Strict Transport Security (HSTS) |-------------------------------------------------------------------------- | | This is set to default false for backwards compatibilty but should be | set to true if the hosting environment allows it. | | See https://scotthelme.co.uk/hsts-the-missing-link-in-tls/ | */ 'enable_hsts' => env('ENABLE_HSTS', false), /* |-------------------------------------------------------------------------- | REFERRER-POLICY |-------------------------------------------------------------------------- | | This is an additional security header that browsers use to determine | whether they should report back URL referrer information. | | Read more: https://www.w3.org/TR/referrer-policy/ | */ 'referrer_policy' => env('REFERRER_POLICY', 'same-origin'), /* |-------------------------------------------------------------------------- | CSP |-------------------------------------------------------------------------- | | Disable the content security policy that restricts what scripts, images | and styles can load. (This should be left as false if you don't know | what this means.) | | Read more: https://www.w3.org/TR/CSP/ | Read more: https://content-security-policy.com | */ 'enable_csp' => env('ENABLE_CSP', true), 'additional_csp_urls' => env('ADDITIONAL_CSP_URLS', ''), /* |-------------------------------------------------------------------------- | Require SAML Login |-------------------------------------------------------------------------- | | Disable the ability to login via form login, and disables the 'nosaml' | workaround. It requires all logins to process via SAML login. | (This is for high security setups. If your SAML configuration is not | working, this option should be set to false. This option is not needed | to successfully configure SAML authentication.) | */ 'require_saml' => env('REQUIRE_SAML', false), /* |-------------------------------------------------------------------------- | SAML KEYS |-------------------------------------------------------------------------- | | This is the size of the keys used by openssl_pkey_new for SAML authentication. | The default is 2048 bits, but this can be changed to 3072 or 4096 bits | for higher security. Note that this will increase the time it takes to | generate the keys, so it is not recommended to set this to a very high value | unless you have a specific need for it. | | The European Commission now requires at least 3072-bit keys for new SAML certificates | @link https://github.com/grokability/snipe-it/issues/17386 */ 'saml_key_size' => env('SAML_KEY_SIZE', 2048), /* |-------------------------------------------------------------------------- | Demo Mode Lockdown |-------------------------------------------------------------------------- | | Normal users will never need to edit this. This option lets you run a | version of Snipe-IT with limited functionality to prevent demo abuse. | */ 'lock_passwords' => env('APP_LOCKED', false), /* |-------------------------------------------------------------------------- | Minimum PHP version |-------------------------------------------------------------------------- | | Do not change this variable. | */ 'min_php' => '8.2.0', /* |-------------------------------------------------------------------------- | Autoloaded Service Providers |-------------------------------------------------------------------------- | | The service providers listed here will be automatically loaded on the | request to your application. Feel free to add your own services to | this array to grant expanded functionality to your applications. | */ 'providers' => [ /* * Laravel Framework Service Providers... */ AuthServiceProvider::class, BroadcastServiceProvider::class, BusServiceProvider::class, CacheServiceProvider::class, ConsoleSupportServiceProvider::class, CookieServiceProvider::class, DatabaseServiceProvider::class, EncryptionServiceProvider::class, FilesystemServiceProvider::class, FoundationServiceProvider::class, HashServiceProvider::class, MailServiceProvider::class, NotificationServiceProvider::class, PaginationServiceProvider::class, PipelineServiceProvider::class, QueueServiceProvider::class, RedisServiceProvider::class, PasswordResetServiceProvider::class, SessionServiceProvider::class, SnipeTranslationServiceProvider::class, // we REPLACE the default Laravel translator with our own ValidationServiceProvider::class, ViewServiceProvider::class, /* * Package Service Providers... */ ImageServiceProvider::class, BackupServiceProvider::class, ServiceProvider::class, PassportServiceProvider::class, TinkerServiceProvider::class, DumbPasswordServiceProvider::class, Eduardokum\LaravelMailAutoEmbed\ServiceProvider::class, SocialiteServiceProvider::class, Elibyy\TCPDF\ServiceProvider::class, /* * Application Service Providers... */ AppServiceProvider::class, App\Providers\AuthServiceProvider::class, EventServiceProvider::class, RouteServiceProvider::class, SettingsServiceProvider::class, App\Providers\ValidationServiceProvider::class, /* * Custom Service Providers... */ BladeServiceProvider::class, LivewireServiceProvider::class, SamlServiceProvider::class, BreadcrumbsServiceProvider::class, ], /* |-------------------------------------------------------------------------- | Class Aliases |-------------------------------------------------------------------------- | | This array of class aliases will be registered when this application | is started. However, feel free to register as many as you wish as | the aliases are "lazy" loaded so they don't hinder performance. | */ 'aliases' => [ 'App' => Illuminate\Support\Facades\App::class, 'Artisan' => Artisan::class, 'Auth' => Auth::class, 'Blade' => Blade::class, 'Bus' => Bus::class, 'Cache' => Cache::class, 'Config' => Config::class, 'Cookie' => Cookie::class, 'Crypt' => Crypt::class, 'Date' => Date::class, 'DB' => DB::class, 'Eloquent' => Model::class, 'Event' => Event::class, 'File' => File::class, 'Gate' => Gate::class, 'Hash' => Hash::class, 'Lang' => Lang::class, 'Log' => Log::class, 'Mail' => Mail::class, 'Notification' => Notification::class, 'Password' => Password::class, 'PDF' => TCPDF::class, 'Queue' => Queue::class, 'Redirect' => Redirect::class, 'Redis' => Redis::class, 'Request' => Request::class, 'Response' => Response::class, 'Route' => Route::class, 'Schema' => Schema::class, 'Session' => Session::class, 'Storage' => Storage::class, 'URL' => URL::class, 'Validator' => Validator::class, 'View' => View::class, 'Google2FA' => Facade::class, 'Image' => ImageServiceProvider::class, 'Carbon' => Carbon\Carbon::class, 'Helper' => Helper::class, 'StorageHelper' => StorageHelper::class, 'Icon' => IconHelper::class, 'Socialite' => Socialite::class, ], /* |-------------------------------------------------------------------------- | API Throttling |-------------------------------------------------------------------------- | | This value determines the number of API requests permitted per minute | */ 'api_throttle_per_minute' => env('API_THROTTLE_PER_MINUTE', 120), /* |-------------------------------------------------------------------------- | Allow Web-Based Purge |-------------------------------------------------------------------------- | | This sets whether or not to allow superadmins to purge deleted data | */ 'allow_purge' => env('ALLOW_DATA_PURGE', false), /* |-------------------------------------------------------------------------- | Allow Backup Deletion |-------------------------------------------------------------------------- | | This sets whether or not to allow superadmins to delete backups | */ 'allow_backup_delete' => env('ALLOW_BACKUP_DELETE', false), /* |-------------------------------------------------------------------------- | Escape Excel formulas in CSV exports |-------------------------------------------------------------------------- | | This determins whether or not we should escape Excel formulas in CSV exports. | This can be UNSAFE in untrusted environments, and therefore defaults to true | so that Excel forumals WILL be escaped in CSV exports, however if your workflow | is designed around using formulas in your fields, you | you can set CSV_ESCAPE_FORMULAS to 'false' in your .env. | */ 'escape_formulas' => env('CSV_ESCAPE_FORMULAS', true), /* |-------------------------------------------------------------------------- | Max Unpaginated Records |-------------------------------------------------------------------------- | This sets the maximum number of records that can be exported or | viewed without pagination. This is to prevent server timeouts. */ 'max_unpaginated_records' => env('MAX_UNPAGINATED', '5000'), ];