daemon144key/ laravel-simple-ldap
封装 LDAP 服务的简单类。
0.1.5
2018-07-04 07:19 UTC
Requires
- php: >=5.5.9
- illuminate/support: >=4.0
This package is not auto-updated.
Last update: 2024-09-19 09:20:20 UTC
README
描述
提供 LDAP 服务的简单封装类。
设置 / 初始化
- 安装包
composer require daemon144key/laravel-simple-ldap
- 添加到 app/config.php
<?php
return [
// ...
'providers' => [
// ...
TuxDaemon\LaravelSimpleLdap\LaravelSimpleLdapServiceProvider::class
],
'aliases' => [
// ...
'LDAP' => TuxDaemon\LaravelSimpleLdap\Services\Facades\LdapService::class,
],
];
- 优化
php artisan optimize
- 使用默认环境变量键(LDAP 服务器主机名/IP 地址,LDAP 服务器端口,基础唯一名称/DN,管理员级别用户相对-DN 和密码)设置配置,或发布配置以进行进一步配置
SIMPLE_LDAP_HOST=
SIMPLE_LDAP_PORT=389
SIMPLE_LDAP_BASE_DN=
SIMPLE_LDAP_PASSWORD=
SIMPLE_LDAP_USER_RDN=
或
php artisan vendor:publish --tag=laravel-simple-ldap-config
然后在 config/laravel_simple_ldap.php 中编辑
服务使用
- 首先初始化连接
LDAP::connnect()
- 绑定用户
LDAP::bindUser($optionalUserRDN = "");
- 基于筛选器搜索
LDAP::search ($filter, $extendedBaseDN = "");
- 添加记录
LDAP::add($rdn, $data);
- 修改记录(对象级别)
LDAP::modify($rdn, $data);
- 修改记录(对象属性级别)
LDAP::modifyReplace($rdn, $data);
- 删除记录
LDAP::delete($rdn);
- 最后关闭连接
LDAP::close();
示例用法
<?php
// .....
if (LDAP::connnect())
{
// Bind to LDAP
$bind = LDAP::bindUser();
// Search in LDAP
$inputFilter["gender"] = "male";
$result = LDAP::search ($inputFilter, "ou=people");
info($result);
// Add to LDAP
$data["objectclass"][0] = "orgPerson";
$data["objectclass"][1] = "orgEmail";
$data["objectclass"][2] = "orgProxyClient";
$data["userpassword"] = 'secret';
$data["usingstatus"] = "TRUE";
$data["gender"] = "male";
$data["homedir"] = "/home/someperson";
$addResult = LDAP::add("orgAccountID=someperson,ou=people", $data);
info($addResult);
// Modify Data in LDAP
$data["gender"] = "female";
$modifyResult = LDAP::modify("orgAccountID=someperson,ou=people", $data);
info($modifyResult);
// Delete Data in LDAP
$deleteResult = LDAP::delete("orgAccountID=someperson,ou=people");
info($deleteResult);
// Close Connection in LDAP
LDAP::close();
} else {
return "Can't connect to LDAP!";
}
// .....
许可证
Laravel 框架是开源软件,根据 MIT 许可证 许可。