diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php index b2ea669..6d49913 100644 --- a/app/Http/Controllers/Auth/LoginController.php +++ b/app/Http/Controllers/Auth/LoginController.php @@ -36,4 +36,9 @@ class LoginController extends Controller { $this->middleware('guest')->except('logout'); } + + public function username() + { + return 'matricule'; + } } diff --git a/app/Scopes/OpenLdapScope.php b/app/Scopes/OpenLdapScope.php new file mode 100644 index 0000000..964354f --- /dev/null +++ b/app/Scopes/OpenLdapScope.php @@ -0,0 +1,28 @@ +select([ + 'entryuuid', + 'dn', + 'uid', + 'cn', + 'mail', + 'sn', + 'givenName', + ]); + } +} \ No newline at end of file diff --git a/composer.json b/composer.json index bda4333..a32c1ca 100644 --- a/composer.json +++ b/composer.json @@ -9,11 +9,13 @@ "license": "MIT", "require": { "php": "^7.1.3", + "adldap2/adldap2-laravel": "^6.0", "fideloper/proxy": "^4.0", "laravel/framework": "5.8.*", "laravel/tinker": "^1.0" }, "require-dev": { + "barryvdh/laravel-debugbar": "^3.2", "beyondcode/laravel-dump-server": "^1.0", "filp/whoops": "^2.0", "fzaninotto/faker": "^1.4", diff --git a/composer.lock b/composer.lock index 69c18fd..d1960ba 100644 --- a/composer.lock +++ b/composer.lock @@ -4,8 +4,119 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "4731429c7f25ab92eaa813447a972209", + "content-hash": "378ddb1a929005e1d5dddce83e5f5f6e", "packages": [ + { + "name": "adldap2/adldap2", + "version": "v10.0.10", + "source": { + "type": "git", + "url": "https://github.com/Adldap2/Adldap2.git", + "reference": "a6089f508b2a94cb7ff8c98ab381ff983d5f0347" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Adldap2/Adldap2/zipball/a6089f508b2a94cb7ff8c98ab381ff983d5f0347", + "reference": "a6089f508b2a94cb7ff8c98ab381ff983d5f0347", + "shasum": "" + }, + "require": { + "ext-ldap": "*", + "illuminate/contracts": "~5.0", + "php": ">=7.0", + "psr/log": "~1.0", + "tightenco/collect": "~5.0" + }, + "require-dev": { + "mockery/mockery": "~1.0", + "phpunit/phpunit": "~6.0" + }, + "suggest": { + "ext-fileinfo": "fileinfo is required when retrieving user encoded thumbnails" + }, + "type": "library", + "autoload": { + "psr-4": { + "Adldap\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Steve Bauman", + "email": "steven_bauman@outlook.com", + "role": "Developer" + } + ], + "description": "A PHP LDAP Package for humans.", + "keywords": [ + "active directory", + "ad", + "adLDAP", + "adldap2", + "directory", + "ldap", + "windows" + ], + "time": "2019-05-03T21:29:12+00:00" + }, + { + "name": "adldap2/adldap2-laravel", + "version": "v6.0.5", + "source": { + "type": "git", + "url": "https://github.com/Adldap2/Adldap2-Laravel.git", + "reference": "a14d5040bfec62a2e57718d3565341333e4068f2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Adldap2/Adldap2-Laravel/zipball/a14d5040bfec62a2e57718d3565341333e4068f2", + "reference": "a14d5040bfec62a2e57718d3565341333e4068f2", + "shasum": "" + }, + "require": { + "adldap2/adldap2": "^10.0", + "illuminate/support": "~5.5.0|~5.6.0|~5.7.0|~5.8.0", + "php": ">=7.1" + }, + "require-dev": { + "mockery/mockery": "~1.0", + "orchestra/testbench": "~3.7", + "phpunit/phpunit": "~7.0" + }, + "type": "project", + "extra": { + "laravel": { + "providers": [ + "Adldap\\Laravel\\AdldapServiceProvider", + "Adldap\\Laravel\\AdldapAuthServiceProvider" + ], + "aliases": { + "Adldap": "Adldap\\Laravel\\Facades\\Adldap" + } + } + }, + "autoload": { + "psr-4": { + "Adldap\\Laravel\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "LDAP Authentication & Management for Laravel.", + "keywords": [ + "adLDAP", + "adldap2", + "laravel", + "ldap" + ], + "time": "2019-04-18T16:02:45+00:00" + }, { "name": "dnoegel/php-xdg-base-dir", "version": "0.1", @@ -2404,6 +2515,56 @@ ], "time": "2019-01-30T11:44:30+00:00" }, + { + "name": "tightenco/collect", + "version": "v5.8.16", + "source": { + "type": "git", + "url": "https://github.com/tightenco/collect.git", + "reference": "d1d78dbdd8884c35a79f9750743177297e7f31a9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/tightenco/collect/zipball/d1d78dbdd8884c35a79f9750743177297e7f31a9", + "reference": "d1d78dbdd8884c35a79f9750743177297e7f31a9", + "shasum": "" + }, + "require": { + "php": "^7.1.3", + "symfony/var-dumper": ">=3.4 <5" + }, + "require-dev": { + "mockery/mockery": "^1.0", + "nesbot/carbon": "^1.26.3", + "phpunit/phpunit": "^7.0" + }, + "type": "library", + "autoload": { + "files": [ + "src/Collect/Support/helpers.php", + "src/Collect/Support/alias.php" + ], + "psr-4": { + "Tightenco\\Collect\\": "src/Collect" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylorotwell@gmail.com" + } + ], + "description": "Collect - Illuminate Collections as a separate package.", + "keywords": [ + "collection", + "laravel" + ], + "time": "2019-04-18T18:52:05+00:00" + }, { "name": "tijsverkoyen/css-to-inline-styles", "version": "2.2.1", @@ -2505,6 +2666,74 @@ } ], "packages-dev": [ + { + "name": "barryvdh/laravel-debugbar", + "version": "v3.2.3", + "source": { + "type": "git", + "url": "https://github.com/barryvdh/laravel-debugbar.git", + "reference": "5fcba4cc8e92a230b13b99c1083fc22ba8a5c479" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/5fcba4cc8e92a230b13b99c1083fc22ba8a5c479", + "reference": "5fcba4cc8e92a230b13b99c1083fc22ba8a5c479", + "shasum": "" + }, + "require": { + "illuminate/routing": "5.5.x|5.6.x|5.7.x|5.8.x", + "illuminate/session": "5.5.x|5.6.x|5.7.x|5.8.x", + "illuminate/support": "5.5.x|5.6.x|5.7.x|5.8.x", + "maximebf/debugbar": "~1.15.0", + "php": ">=7.0", + "symfony/debug": "^3|^4", + "symfony/finder": "^3|^4" + }, + "require-dev": { + "laravel/framework": "5.5.x" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.2-dev" + }, + "laravel": { + "providers": [ + "Barryvdh\\Debugbar\\ServiceProvider" + ], + "aliases": { + "Debugbar": "Barryvdh\\Debugbar\\Facade" + } + } + }, + "autoload": { + "psr-4": { + "Barryvdh\\Debugbar\\": "src/" + }, + "files": [ + "src/helpers.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Barry vd. Heuvel", + "email": "barryvdh@gmail.com" + } + ], + "description": "PHP Debugbar integration for Laravel", + "keywords": [ + "debug", + "debugbar", + "laravel", + "profiler", + "webprofiler" + ], + "time": "2019-02-26T18:01:54+00:00" + }, { "name": "beyondcode/laravel-dump-server", "version": "1.2.2", @@ -2779,6 +3008,67 @@ ], "time": "2016-01-20T08:20:44+00:00" }, + { + "name": "maximebf/debugbar", + "version": "v1.15.0", + "source": { + "type": "git", + "url": "https://github.com/maximebf/php-debugbar.git", + "reference": "30e7d60937ee5f1320975ca9bc7bcdd44d500f07" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/30e7d60937ee5f1320975ca9bc7bcdd44d500f07", + "reference": "30e7d60937ee5f1320975ca9bc7bcdd44d500f07", + "shasum": "" + }, + "require": { + "php": ">=5.3.0", + "psr/log": "^1.0", + "symfony/var-dumper": "^2.6|^3.0|^4.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.0|^5.0" + }, + "suggest": { + "kriswallsmith/assetic": "The best way to manage assets", + "monolog/monolog": "Log using Monolog", + "predis/predis": "Redis storage" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.14-dev" + } + }, + "autoload": { + "psr-4": { + "DebugBar\\": "src/DebugBar/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Maxime Bouroumeau-Fuseau", + "email": "maxime.bouroumeau@gmail.com", + "homepage": "http://maximebf.com" + }, + { + "name": "Barry vd. Heuvel", + "email": "barryvdh@gmail.com" + } + ], + "description": "Debug bar in the browser for php application", + "homepage": "https://github.com/maximebf/php-debugbar", + "keywords": [ + "debug", + "debugbar" + ], + "time": "2017-12-15T11:13:46+00:00" + }, { "name": "mockery/mockery", "version": "1.2.2", diff --git a/config/app.php b/config/app.php index c9960cd..9e618b1 100644 --- a/config/app.php +++ b/config/app.php @@ -225,7 +225,7 @@ return [ 'URL' => Illuminate\Support\Facades\URL::class, 'Validator' => Illuminate\Support\Facades\Validator::class, 'View' => Illuminate\Support\Facades\View::class, - + 'Adldap' => Adldap\Laravel\Facades\Adldap::class, ], ]; diff --git a/config/auth.php b/config/auth.php index 897dc82..3cf8a44 100644 --- a/config/auth.php +++ b/config/auth.php @@ -67,7 +67,7 @@ return [ 'providers' => [ 'users' => [ - 'driver' => 'eloquent', + 'driver' => 'ldap', 'model' => App\User::class, ], diff --git a/config/ldap.php b/config/ldap.php new file mode 100644 index 0000000..4cfcd8b --- /dev/null +++ b/config/ldap.php @@ -0,0 +1,243 @@ + env('LDAP_LOGGING', true), + + /* + |-------------------------------------------------------------------------- + | Connections + |-------------------------------------------------------------------------- + | + | This array stores the connections that are added to Adldap. You can add + | as many connections as you like. + | + | The key is the name of the connection you wish to use and the value is + | an array of configuration settings. + | + */ + + 'connections' => [ + + 'default' => [ + + /* + |-------------------------------------------------------------------------- + | Auto Connect + |-------------------------------------------------------------------------- + | + | If auto connect is true, Adldap will try to automatically connect to + | your LDAP server in your configuration. This allows you to assume + | connectivity rather than having to connect manually + | in your application. + | + | If this is set to false, you **must** connect manually before running + | LDAP operations. Otherwise, you will receive exceptions. + | + */ + + 'auto_connect' => env('LDAP_AUTO_CONNECT', true), + + /* + |-------------------------------------------------------------------------- + | Connection + |-------------------------------------------------------------------------- + | + | The connection class to use to run raw LDAP operations on. + | + | Custom connection classes must implement: + | + | Adldap\Connections\ConnectionInterface + | + */ + + 'connection' => Adldap\Connections\Ldap::class, + + /* + |-------------------------------------------------------------------------- + | Connection Settings + |-------------------------------------------------------------------------- + | + | This connection settings array is directly passed into the Adldap constructor. + | + | Feel free to add or remove settings you don't need. + | + */ + + 'settings' => [ + + /* + |-------------------------------------------------------------------------- + | Schema + |-------------------------------------------------------------------------- + | + | The schema class to use for retrieving attributes and generating models. + | + | You can also set this option to `null` to use the default schema class. + | + | For OpenLDAP, you must use the schema: + | + | Adldap\Schemas\OpenLDAP::class + | + | For FreeIPA, you must use the schema: + | + | Adldap\Schemas\FreeIPA::class + | + | Custom schema classes must implement Adldap\Schemas\SchemaInterface + | + */ + + 'schema' => Adldap\Schemas\OpenLDAP::class, + + /* + |-------------------------------------------------------------------------- + | Account Prefix + |-------------------------------------------------------------------------- + | + | The account prefix option is the prefix of your user accounts in LDAP directory. + | + | This string is prepended to all authenticating users usernames. + | + */ + + 'account_prefix' => env('LDAP_ACCOUNT_PREFIX', 'uid='), + + /* + |-------------------------------------------------------------------------- + | Account Suffix + |-------------------------------------------------------------------------- + | + | The account suffix option is the suffix of your user accounts in your LDAP directory. + | + | This string is appended to all authenticating users usernames. + | + */ + + 'account_suffix' => env('LDAP_ACCOUNT_SUFFIX', ',ou=Users,dc=Comptes,dc=com'), + + /* + |-------------------------------------------------------------------------- + | Domain Controllers + |-------------------------------------------------------------------------- + | + | The domain controllers option is an array of servers located on your + | network that serve Active Directory. You can insert as many servers or + | as little as you'd like depending on your forest (with the + | minimum of one of course). + | + | These can be IP addresses of your server(s), or the host name. + | + */ + + 'hosts' => explode(' ', env('LDAP_HOSTS', '10.1.3.89')), + + /* + |-------------------------------------------------------------------------- + | Port + |-------------------------------------------------------------------------- + | + | The port option is used for authenticating and binding to your LDAP server. + | + */ + + 'port' => env('LDAP_PORT', 389), + + /* + |-------------------------------------------------------------------------- + | Timeout + |-------------------------------------------------------------------------- + | + | The timeout option allows you to configure the amount of time in + | seconds that your application waits until a response + | is received from your LDAP server. + | + */ + + 'timeout' => env('LDAP_TIMEOUT', 5), + + /* + |-------------------------------------------------------------------------- + | Base Distinguished Name + |-------------------------------------------------------------------------- + | + | The base distinguished name is the base distinguished name you'd + | like to perform query operations on. An example base DN would be: + | + | dc=corp,dc=acme,dc=org + | + | A correct base DN is required for any query results to be returned. + | + */ + + 'base_dn' => env('LDAP_BASE_DN', 'ou=Users,dc=Comptes,dc=com'), + + /* + |-------------------------------------------------------------------------- + | LDAP Username & Password + |-------------------------------------------------------------------------- + | + | When connecting to your LDAP server, a username and password is required + | to be able to query and run operations on your server(s). You can + | use any user account that has these permissions. This account + | does not need to be a domain administrator unless you + | require changing and resetting user passwords. + | + */ + + 'username' => env('LDAP_USERNAME', 'uid=tr0113942,ou=Users,dc=Comptes,dc=com'), + 'password' => env('LDAP_PASSWORD', 'Temari7274!!'), + + /* + |-------------------------------------------------------------------------- + | Follow Referrals + |-------------------------------------------------------------------------- + | + | The follow referrals option is a boolean to tell active directory + | to follow a referral to another server on your network if the + | server queried knows the information your asking for exists, + | but does not yet contain a copy of it locally. + | + | This option is defaulted to false. + | + */ + + 'follow_referrals' => false, + + /* + |-------------------------------------------------------------------------- + | SSL & TLS + |-------------------------------------------------------------------------- + | + | If you need to be able to change user passwords on your server, then an + | SSL or TLS connection is required. All other operations are allowed + | on unsecured protocols. + | + | One of these options are definitely recommended if you + | have the ability to connect to your server securely. + | + */ + + 'use_ssl' => env('LDAP_USE_SSL', false), + 'use_tls' => env('LDAP_USE_TLS', false), + + ], + + ], + + ], + +]; diff --git a/config/ldap_auth.php b/config/ldap_auth.php new file mode 100644 index 0000000..49169f5 --- /dev/null +++ b/config/ldap_auth.php @@ -0,0 +1,339 @@ + env('LDAP_CONNECTION', 'default'), + + /* + |-------------------------------------------------------------------------- + | Provider + |-------------------------------------------------------------------------- + | + | The LDAP authentication provider to use depending + | if you require database synchronization. + | + | For synchronizing LDAP users to your local applications database, use the provider: + | + | Adldap\Laravel\Auth\DatabaseUserProvider::class + | + | Otherwise, if you just require LDAP authentication, use the provider: + | + | Adldap\Laravel\Auth\NoDatabaseUserProvider::class + | + */ + + 'provider' => Adldap\Laravel\Auth\DatabaseUserProvider::class, + + /* + |-------------------------------------------------------------------------- + | Model + |-------------------------------------------------------------------------- + | + | The model to utilize for authentication and importing. + | + | This option is only applicable to the DatabaseUserProvider. + | + */ + + 'model' => App\User::class, + + /* + |-------------------------------------------------------------------------- + | Rules + |-------------------------------------------------------------------------- + | + | Rules allow you to control user authentication requests depending on scenarios. + | + | You can create your own rules and insert them here. + | + | All rules must extend from the following class: + | + | Adldap\Laravel\Validation\Rules\Rule + | + */ + + 'rules' => [ + + // Denys deleted users from authenticating. + + Adldap\Laravel\Validation\Rules\DenyTrashed::class, + + // Allows only manually imported users to authenticate. + + Adldap\Laravel\Validation\Rules\OnlyImported::class, + + ], + + /* + |-------------------------------------------------------------------------- + | Scopes + |-------------------------------------------------------------------------- + | + | Scopes allow you to restrict the LDAP query that locates + | users upon import and authentication. + | + | All scopes must implement the following interface: + | + | Adldap\Laravel\Scopes\ScopeInterface + | + */ + + 'scopes' => [ + + // Only allows users with a user principal name to authenticate. + // Suitable when using ActiveDirectory. + // Adldap\Laravel\Scopes\UpnScope::class, + + // Only allows users with a uid to authenticate. + // Suitable when using OpenLDAP. + Adldap\Laravel\Scopes\UidScope::class, + App\Scopes\OpenLdapScope::class, + ], + + 'identifiers' => [ + + /* + |-------------------------------------------------------------------------- + | LDAP + |-------------------------------------------------------------------------- + | + | Locate Users By: + | + | This value is the users attribute you would like to locate LDAP + | users by in your directory. + | + | For example, using the default configuration below, if you're + | authenticating users with an email address, your LDAP server + | will be queried for a user with the a `userprincipalname` + | equal to the entered email address. + | + | Bind Users By: + | + | This value is the users attribute you would + | like to use to bind to your LDAP server. + | + | For example, when a user is located by the above attribute, + | the users attribute you specify below will be used as + | the 'username' to bind to your LDAP server. + | + | This is usually their distinguished name. + | + */ + + 'ldap' => [ + + 'locate_users_by' => 'uid', + + 'bind_users_by' => 'uid', + + ], + + 'database' => [ + + /* + |-------------------------------------------------------------------------- + | GUID Column + |-------------------------------------------------------------------------- + | + | The value of this option is the database column that will contain the + | LDAP users global identifier. This column does not need to be added + | to the sync attributes below. It is synchronized automatically. + | + | This option is only applicable to the DatabaseUserProvider. + | + */ + + 'guid_column' => 'objectguid', + + /* + |-------------------------------------------------------------------------- + | Username Column + |-------------------------------------------------------------------------- + | + | The value of this option is the database column that contains your + | users login username. + | + | This column must be added to your sync attributes below to be + | properly synchronized. + | + | This option is only applicable to the DatabaseUserProvider. + | + */ + + 'username_column' => 'matricule', + + ], + + /* + |-------------------------------------------------------------------------- + | Windows Authentication Middleware (SSO) + |-------------------------------------------------------------------------- + | + | Local Users By: + | + | This value is the users attribute you would like to locate LDAP + | users by in your directory. + | + | For example, if 'samaccountname' is the value, then your LDAP server is + | queried for a user with the 'samaccountname' equal to the value of + | $_SERVER['AUTH_USER']. + | + | If a user is found, they are imported (if using the DatabaseUserProvider) + | into your local database, then logged in. + | + | Server Key: + | + | This value represents the 'key' of the $_SERVER + | array to pull the users account name from. + | + | For example, $_SERVER['AUTH_USER']. + | + */ + + 'windows' => [ + + 'locate_users_by' => 'distinguishedname', + + 'server_key' => 'AUTH_USER', + + ], + + ], + + 'passwords' => [ + + /* + |-------------------------------------------------------------------------- + | Password Sync + |-------------------------------------------------------------------------- + | + | The password sync option allows you to automatically synchronize users + | LDAP passwords to your local database. These passwords are hashed + | natively by Laravel using the Hash::make() method. + | + | Enabling this option would also allow users to login to their accounts + | using the password last used when an LDAP connection was present. + | + | If this option is disabled, the local database account is applied a + | random 16 character hashed password upon first login, and will + | lose access to this account upon loss of LDAP connectivity. + | + | This option is only applicable to the DatabaseUserProvider. + | + */ + + 'sync' => env('LDAP_PASSWORD_SYNC', false), + + /* + |-------------------------------------------------------------------------- + | Column + |-------------------------------------------------------------------------- + | + | This is the column of your users database table + | that is used to store passwords. + | + | Set this to `null` if you do not have a password column. + | + | This option is only applicable to the DatabaseUserProvider. + | + */ + + 'column' => 'password', + + ], + + /* + |-------------------------------------------------------------------------- + | Login Fallback + |-------------------------------------------------------------------------- + | + | The login fallback option allows you to login as a user located in the + | local database if active directory authentication fails. + | + | Set this to true if you would like to enable it. + | + | This option is only applicable to the DatabaseUserProvider. + | + */ + + 'login_fallback' => env('LDAP_LOGIN_FALLBACK', true), + + /* + |-------------------------------------------------------------------------- + | Sync Attributes + |-------------------------------------------------------------------------- + | + | Attributes specified here will be added / replaced on the user model + | upon login, automatically synchronizing and keeping the attributes + | up to date. + | + | The array key represents the users Laravel model key, and + | the value represents the users LDAP attribute. + | + | You **must** include the users login attribute here. + | + | This option is only applicable to the DatabaseUserProvider. + | + */ + + 'sync_attributes' => [ + + 'email' => 'mail', + 'matricule' => 'uid', + 'lastname' => 'sn', + 'firstname' => 'givenName', + ], + + /* + |-------------------------------------------------------------------------- + | Logging + |-------------------------------------------------------------------------- + | + | User authentication attempts will be logged using Laravel's + | default logger if this setting is enabled. + | + | No credentials are logged, only usernames. + | + | This is usually stored in the '/storage/logs' directory + | in the root of your application. + | + | This option is useful for debugging as well as auditing. + | + | You can freely remove any events you would not like to log below, + | as well as use your own listeners if you would prefer. + | + */ + + 'logging' => [ + + 'enabled' => env('LDAP_LOGGING', true), + + 'events' => [ + + \Adldap\Laravel\Events\Importing::class => \Adldap\Laravel\Listeners\LogImport::class, + \Adldap\Laravel\Events\Synchronized::class => \Adldap\Laravel\Listeners\LogSynchronized::class, + \Adldap\Laravel\Events\Synchronizing::class => \Adldap\Laravel\Listeners\LogSynchronizing::class, + \Adldap\Laravel\Events\Authenticated::class => \Adldap\Laravel\Listeners\LogAuthenticated::class, + \Adldap\Laravel\Events\Authenticating::class => \Adldap\Laravel\Listeners\LogAuthentication::class, + \Adldap\Laravel\Events\AuthenticationFailed::class => \Adldap\Laravel\Listeners\LogAuthenticationFailure::class, + \Adldap\Laravel\Events\AuthenticationRejected::class => \Adldap\Laravel\Listeners\LogAuthenticationRejection::class, + \Adldap\Laravel\Events\AuthenticationSuccessful::class => \Adldap\Laravel\Listeners\LogAuthenticationSuccess::class, + \Adldap\Laravel\Events\DiscoveredWithCredentials::class => \Adldap\Laravel\Listeners\LogDiscovery::class, + \Adldap\Laravel\Events\AuthenticatedWithWindows::class => \Adldap\Laravel\Listeners\LogWindowsAuth::class, + \Adldap\Laravel\Events\AuthenticatedModelTrashed::class => \Adldap\Laravel\Listeners\LogTrashedModel::class, + + ], + ], + +]; diff --git a/resources/views/auth/login.blade.php b/resources/views/auth/login.blade.php index 9edb920..94f8bda 100644 --- a/resources/views/auth/login.blade.php +++ b/resources/views/auth/login.blade.php @@ -12,14 +12,14 @@ @csrf
- +
- + - @if ($errors->has('email')) + @if ($errors->has('matricule')) - {{ $errors->first('email') }} + {{ $errors->first('matricule') }} @endif
diff --git a/resources/views/layouts/app.blade.php b/resources/views/layouts/app.blade.php index ee7767c..dc729c1 100644 --- a/resources/views/layouts/app.blade.php +++ b/resources/views/layouts/app.blade.php @@ -76,5 +76,6 @@ @yield('content')
+ @yield('script') diff --git a/resources/views/welcome.blade.php b/resources/views/welcome.blade.php deleted file mode 100644 index 044b874..0000000 --- a/resources/views/welcome.blade.php +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - - Laravel - - - - - - - - -
- @if (Route::has('login')) - - @endif - -
-
- Laravel -
- - -
-
- - diff --git a/routes/web.php b/routes/web.php index 12fc04c..069caab 100644 --- a/routes/web.php +++ b/routes/web.php @@ -11,10 +11,15 @@ | */ -Route::get('/', function () { - return view('welcome'); +Route::group(['middleware' => ['auth']], function(){ + Route::get('/', 'HomeController@index')->name('home'); + }); -Auth::routes(); +Auth::routes([ + 'reset' => false, + 'verify' => false, + 'register' => false, + ]); Route::get('/home', 'HomeController@index')->name('home'); diff --git a/storage/debugbar/.gitignore b/storage/debugbar/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/storage/debugbar/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore