X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/e743cd3f606fb8a2e432813f7c84fed1093f68c4..refs/pull/5280/head:/app/Config/auth.php diff --git a/app/Config/auth.php b/app/Config/auth.php index 2afb10ec2..b1578fdb7 100644 --- a/app/Config/auth.php +++ b/app/Config/auth.php @@ -10,15 +10,18 @@ return [ - // Method of authentication to use - // Options: standard, ldap + // Options: standard, ldap, saml2, oidc 'method' => env('AUTH_METHOD', 'standard'), + // Automatically initiate login via external auth system if it's the sole auth method. + // Works with saml2 or oidc auth methods. + 'auto_initiate' => env('AUTH_AUTO_INITIATE', false), + // Authentication Defaults // This option controls the default authentication "guard" and password // reset options for your application. 'defaults' => [ - 'guard' => env('AUTH_METHOD', 'standard') === 'standard' ? 'web' : env('AUTH_METHOD'), + 'guard' => env('AUTH_METHOD', 'standard'), 'passwords' => 'users', ], @@ -26,22 +29,26 @@ return [ // All authentication drivers have a user provider. This defines how the // users are actually retrieved out of your database or other storage // mechanisms used by this application to persist your user's data. - // Supported drivers: "session", "api-token", "ldap-session" + // Supported drivers: "session", "api-token", "ldap-session", "async-external-session" 'guards' => [ - 'web' => [ - 'driver' => 'session', + 'standard' => [ + 'driver' => 'session', 'provider' => 'users', ], 'ldap' => [ - 'driver' => 'ldap-session', + 'driver' => 'ldap-session', 'provider' => 'external', ], 'saml2' => [ - 'driver' => 'saml2-session', + 'driver' => 'async-external-session', + 'provider' => 'external', + ], + 'oidc' => [ + 'driver' => 'async-external-session', 'provider' => 'external', ], 'api' => [ - 'driver' => 'api-token', + 'driver' => 'api-token', ], ], @@ -51,13 +58,19 @@ return [ // mechanisms used by this application to persist your user's data. 'providers' => [ 'users' => [ - 'driver' => env('AUTH_METHOD', 'standard') === 'standard' ? 'eloquent' : env('AUTH_METHOD'), - 'model' => \BookStack\Auth\User::class, + 'driver' => 'eloquent', + 'model' => \BookStack\Users\Models\User::class, ], + 'external' => [ 'driver' => 'external-users', - 'model' => \BookStack\Auth\User::class, + 'model' => \BookStack\Users\Models\User::class, ], + + // 'users' => [ + // 'driver' => 'database', + // 'table' => 'users', + // ], ], // Resetting Passwords @@ -67,10 +80,17 @@ return [ 'passwords' => [ 'users' => [ 'provider' => 'users', - 'email' => 'emails.password', - 'table' => 'password_resets', - 'expire' => 60, + 'email' => 'emails.password', + 'table' => 'password_resets', + 'expire' => 60, + 'throttle' => 60, ], ], + // Password Confirmation Timeout + // Here you may define the amount of seconds before a password confirmation + // times out and the user is prompted to re-enter their password via the + // confirmation screen. By default, the timeout lasts for three hours. + 'password_timeout' => 10800, + ];