fengda 发表于 2017-3-31 09:11:46

php连接ldap获取服务器信息

  最近项目有用到ldap功能,需要php开启扩展
  1、首先在php.ini文件中找到ldap扩展,去掉前面的";"号;
  2、新建一个index.php  输入内容phpinfo();
  看一下扩展是否开启;
  3、如果扩展正常开启,说明你可以使用PHP中LDAP函数了
  下面是我测试的时候代码:
  注意的是在使用ldap_search()的时候,需要用ldap_bind域的账户密码,并且账户要在服务器上有读写权限;

<?php
//phpinfo();
$hostname="10.33.180.254";
//$username_linux = "cn=Manager,dc=example,dc=com"; // Linux下管理员用户名的格式
$username_windows = "administrator@odbpo.com"; // Windows下管理员用户名的格式
$password = "*****";
$basedn = "DC=***,DC=***";
$ds=ldap_connect($hostname);
if( $ds )
{
ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION,3);
ldap_set_option($ds, LDAP_OPT_REFERRALS,0);
$r=ldap_bind($ds,$username_windows,$password);
$sr=ldap_search($ds, $basedn,"(cn=*)");
//echo "Number of entires returned is " . ldap_count_entries($ds, $sr) . "<br />";
$info = ldap_get_entries($ds, $sr);
echo json_encode($info);
//file_put_contents("D:\\json.json",json_encode($info));
//var_dump($info['count']);
//var_dump($info);
ldap_close($ds);
}
else
{
echo "<h4>Unable to connect to LDAP server</h4>";
}
  如果一切正常你会看到很多服务器上ldap的信息,这里我将数组转成了json格式,打印到浏览器,可读性强一些;
  如果你不知道如何填写参数,可以下载LDAP连接工具
  我使用的工具是Softerra LDAP Administrator;
  工具里有详细的配置参数,先在工具测试一下,没问题,直接COPY就好了;
页: [1]
查看完整版本: php连接ldap获取服务器信息