- 前面写了:laravel+ldap进行auth用户登录认证,主要写了将ldap的用户进行结合laravel本地用户验证机制来进行登录验证
- 功能需求:希望在任何系统中,用户都能修改自己的用户名密码
- 这里我是使用拓展包来实现,ldap连接,但是在这个拓展包的门面中视乎没有找到修改密码的方法,但是在一个拓展包一个类中找到了
我们将这个类引用并实例化,使用管理员账户绑定,去更改密码,当然也可以使用原生的去处理
use Adldap\Connections\Ldap;
//在需要修改密码的地方写上如下逻辑
$new['userpassword']= '{SHA}' . base64_encode(pack('H*', sha1('123123')));//ldap密码生成规则
$ldap = new Ldap();
$ldap->connect('127.0.0.1');//ldap服务器地址
$ldap->bind('cn=admin,dc=xxxx,dc=xxxx','password');//使用管理员账户绑定修改用户密码权限
$ldap->modify('cn=ttt,cn=Users,dc=xxxx,dc=xxxx',$new);//修改密码
$ldap->close();