#Configuração
- Criei o projeto laravel 5.3
- Adicionei o LDAP : https://github.com/Adldap2/Adldap2-Laravel
No arquivo config/app.php
adicionei os providers e a facade necessárias:
Providers
Adldap\Laravel\AdldapServiceProvider::class,
//Provider de repositório
Adldap\Laravel\AdldapAuthServiceProvider::class,
//Provider de autenticação
Facade
'Adldap' => Adldap\Laravel\Facades\Adldap::class
Criei a configuração do ADLDAP com: php artisan vendor:publish --tag="adldap"
As demais configurações do ldap são confirme as configurações do servidor ldap que se quer ter acesso.
No arquivo config/app.php
eu fiz as seguinte modificações:
Em Authentication Guards
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'adldap', // alterei de 'users'
],
'api' => [
'driver' => 'token',
'provider' => 'users',
],
],
Em Users Providers
'users' => [
'driver' => 'eloquent',
'model' => App\User::class,
],
// ADLDAP User Provider Driver
'adldap' => [
'driver' => 'adldap',
'model' => App\User::class,
],
Criei um container docker
com OpenLDAP (https://github.com/osixia/docker-openldap)
Fiz as seguintes mudanças no config/adldap.php
para atender ao adldap2 com OpenLDAP.
Schema
Mudei o schema
de ActiveDirectory::class
para OpenLDAP::class
Prefixes & Sufixes
'account_prefix' => '',
'account_suffix' => ',vd=example.org,dc=example,dc=org',
// Config default do osixia/docker-openldap
'base_dn' => 'dc=example,dc=org',
'admin_account_suffix' => '',
'admin_username' => env('ADLDAP_ADMIN_USERNAME', null),
'admin_password' => env('ADLDAP_ADMIN_PASSWORD', null),
E as seguintes configurações em config/adldap_auth.php
: