使用我的 Web 应用程序设置 Ldap 身份验证系统

Setting up an Ldap authentication system with my web application

我是管理员用户,可以完全访问公司内的 Web 服务器。我构建了一个向其本地数据库 (mysql) 进行身份验证的 Web 应用程序。我一直在考虑建立一个 ldap 认证系统的可能性。我无权访问 ldap 服务器本身,但有一些联系人可以在需要时联系到他们。只是想知道设置有多复杂?我需要访问 ldap 服务器,还是只需要其 ip 和服务器信息就脚本而言就足够了?我真的只是想知道做这件事需要做多少工作,因为我从来没有这样做过。

我实际上只是这样做了,有一个 php-ldap 扩展,检查登录凭据基本上很简单:

private $ldap_url = "";
private $ldap_base_dn = "ou=Something, dc=SomethingElse, dc=local";

function login($username, $password) {
    $ds = ldap_connect($this->ldap_url);
    if (!$ds) {
        return false;
    }
    try {
        $r = ldap_bind($ds, $username, $password);
    } catch(Exception $e) {
        return false;
    }
    if (!$r) {
        return false;
    }
    $sr = ldap_search($ds, $this->ldap_base_dn, "samaccountname=".$username);
    $user_data = ldap_get_entries($ds, $sr);
    return $user_data;
}

只要您知道 ldap url 和基本 dn 设置,我认为它应该可以工作。