Laravel Ldap安全连接

时间:2018-07-18 13:26:29

标签: laravel ssl ldap centos7

我正在运行一个内部网站,该网站使用Laravel创建,并在CentOs7机器上运行。身份验证是针对Windows Server 2016上的Active Directory完成的。 为了验证用户身份,我设法使用Ldap连接来完成绑定。但是现在我试图创建一个页面来重置用户密码。 这是我的代码:

    $suffix = '@domain.domain';
    $username = $username . $suffix;
    $ldap_con = ldap_connect('my_ip');
    ldap_set_option($ldap_con, LDAP_OPT_PROTOCOL_VERSION, 3);
    if(ldap_bind($ldap_con,$username,$pass))
        echo 'Binded Succesfully';
    else
        echo 'No Bind';
    $dn = '.......';
    $pwdtxt = "......."; 
    $newPassword = '"' . $pwdtxt . '"'; 
    $newPass = iconv( 'UTF-8', 'UTF-16LE', $newPassword ); 
    $userdata["unicodepwd"] = $newPass;
    if(ldap_mod_replace($ldap_con, $dn, $userdata))
        print "<p>succeded</p>";
    else
        print "<p>failed</p>";

当我尝试执行以下代码时,我收到错误消息:

ldap_mod_replace(): Modify: Server is unwilling to perform

与不使用安全连接有关。 为了避免尝试使用:

$ldap_con = ldap_connect('ldaps://my_ip/');

它抛出 ldap_bind(): Unable to bind to server: Can't contact LDAP server

有什么解决方法吗?

0 个答案:

没有答案