Yii2 extension Active Directory component for auth and find user in LDAP on PHP
MIT License
Authorize, search users, get user groups and other from LDAP
The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist kosoukhov/ldap
or add
"kosoukhov/ldap": "*"
to the require section of your composer.json
file.
In config/main.php add:
return [
'components' => [
'ldap' => [
'class' => 'kosoukhov\ldap\Connector',
'useCache' => YII_ENV_DEV ? false : true,
],
],
// ...
];
In config/main-local.php add:
return [
'components' => [
'ldap' => [
'host' => 'ldap.example.com',
'port' => '389',
'baseDN' => 'OU=...,DC=...,DC=...,DC=net',
'userDN' => '@....corp.net',
'groupDN' => '',
//Input your AD login/pass on dev or sys login/pass on test/prod servers
'sysUserLogin' => '',
'sysUserPassword' => '',
],
],
// ...
];
if (!Yii::$app->ldap->validateUserCredentials('SAMAccountName', 'password')) {
throw new ErrorException('Incorrect username or password.');
}
echo Yii::$app->ldap->getUserAttributesBySAMAccountName('SAMAccountName', ['mail', 'sn', 'givenname', 'middlename']);
echo kosoukhov\ldap\widgets\UserImage::widget([
'login' => Yii::$app->user->identity->username,
'options' => [
'class' => 'img-circle',
'alt' => 'User Image',
]
]);