diff --git a/config/auth.php b/config/auth.php index 732c35d54c..26bf8496ab 100644 --- a/config/auth.php +++ b/config/auth.php @@ -21,6 +21,17 @@ declare(strict_types=1); +// TODO die with error if LOGIN_PROVIDER = eloquent +// because it must be changed to "users". +// login provider no longer used? +if (null !== env('LOGIN_PROVIDER', null)) { + die('The "LOGIN_PROVIDER" environment variable must be removed.'); +} + +// kill ADLDAP values? + +// AUTHENTICATION_GUARD + return [ /* |-------------------------------------------------------------------------- @@ -62,6 +73,10 @@ return [ 'driver' => 'session', 'provider' => 'users', ], + 'ldap' => [ + 'driver' => 'session', + 'provider' => 'ldap', + ], 'remote_user_guard' => [ 'driver' => 'remote_user_guard', 'provider' => 'remote_user_provider', @@ -91,13 +106,27 @@ return [ 'providers' => [ 'users' => [ - 'driver' => envNonEmpty('LOGIN_PROVIDER', 'eloquent'), + 'driver' => 'eloquent', 'model' => FireflyIII\User::class, ], 'remote_user_provider' => [ 'driver' => 'remote_user_provider', 'model' => FireflyIII\User::class, ], + + 'ldap' => [ + 'driver' => 'ldap', + //'model' => LdapRecord\Models\ActiveDirectory\User::class, + 'model' => LdapRecord\Models\OpenLDAP\User::class, + 'rules' => [], + 'database' => [ + 'model' => FireflyIII\User::class, + 'sync_passwords' => false, + 'sync_attributes' => [ + 'email' => 'mail', + ], + ], + ], ], /* diff --git a/config/firefly.php b/config/firefly.php index a6eebbc793..68090c4b2e 100644 --- a/config/firefly.php +++ b/config/firefly.php @@ -121,9 +121,14 @@ return [ 'tracker_url' => env('TRACKER_URL', ''), 'disable_frame_header' => env('DISABLE_FRAME_HEADER', false), 'disable_csp_header' => env('DISABLE_CSP_HEADER', false), + + // ldap and auth settings 'login_provider' => envNonEmpty('LOGIN_PROVIDER', 'eloquent'), 'authentication_guard' => envNonEmpty('AUTHENTICATION_GUARD', 'web'), 'custom_logout_uri' => envNonEmpty('CUSTOM_LOGOUT_URI', ''), + 'ldap_auth_field' => env('LDAP_AUTH_FIELD', env('ADLDAP_AUTH_FIELD', 'distinguishedname')), + + // other settings 'ipinfo_token' => env('IPINFO_TOKEN', ''), 'update_endpoint' => 'https://version.firefly-iii.org/index.json', 'send_telemetry' => env('SEND_TELEMETRY', false),