LDAP PHP链接校验

一、安装依赖扩展

1、Ubuntu/Linux
只有一个PHP版本或在全局的PHP版本安装时

apt-get  install php-ldap

Windows
参考评论区(未尝试):https://www.php.net/manual/en/ldap.installation.php

2、多版本时需要手动编译安装

二、编写代码

';
            ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3); // 指定协议版本,否则默认使用V2版本;

            $ldapbind = ldap_bind($ldapconn, $dn, $passwd);// 开始绑定操作账号,之后的操作将默认使用该账户进行

            // verify binding
            if ($ldapbind) {
                echo "LDAP bind successful...";
                // 登录成功,尝试检索所有数据
                $result = ldap_search($ldapconn,$base_dn, "(cn=*)") or die ("Error in search query: ".ldap_error($ldapconn));
                $data = ldap_get_entries($ldapconn, $result);
            
                // SHOW ALL DATA
                echo '

Dump all data

';
                print_r($data);   
                echo '
'; } else { echo "LDAP bind failed..."; // 登录失败,获取登录或链接失败原因 // 在ldap_connect不会进行连接,仅校验格式是否正确,在ldap_bind时才进行第一次连接并登录 if (ldap_get_option($handle, LDAP_OPT_DIAGNOSTIC_MESSAGE, $extended_error)) { echo "Error Binding to LDAP: $extended_error"; // 可能是协议版本等配置与LDAP服务端不一致; } else { echo "Error Binding to LDAP: No additional information is available."; // 可能是IP和端口或者域名错误,或者是账号或密码错误; } } } ?>

你可能感兴趣的:(LDAP PHP链接校验)