欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

basedn 在哪里查找 有大用 有大大用 有大大大用

先通过 程序的最大范围的  $basedn来查

image.png

弄一个程序 找出一个用户,就可以看到大概的basedn了 ,基本原理见   /node-admin/16715  /node-admin/16551image.png



ad_info_ldap_get_entries_ks_ok.php  文件的源代码如下:

<?php
//if (empty($_GET['gh'])) {
//  die("请在网址后加上 ?gh=八位数字 ");
//}

$host = '192.138.2.2';
$port = '389'; //一般都是389
$domain = 'xx.yy.zz';
$account = 'aaaaa';



$user = 'aaaa@' . $domain; //域用户名
$password = 'bbbbbb'; //域用户密码





$conn = ldap_connect($host, $port); //不要写成ldap_connect($host.':'.$port)的形式
if ($conn) {
 
//设置参数
 
ldap_set_option($conn, LDAP_OPT_PROTOCOL_VERSION, 3); //声明使用版本3
 
ldap_set_option($conn, LDAP_OPT_REFERRALS, 0); // Binding to ldap server
 
$bd = ldap_bind($conn, $user, $password);


 
$basedn = "dc=xx,dc=yy,dc=zz";
 
// $filter = "(objectClass=*)";//选择器
 // $filter = "(&(sAMAccountName=史平忠))";//选择器
//  $filter = "SamAccountName=" . $_GET['gh']; //根据工号 比如 12345739
 
$filter = "SamAccountName=*" ;
 
//$filter="(|(sn=史平忠*)(givenname=史平忠*))";
 
$justthese = array('sn', 'department', 'company', 'objectsid', 'mail', 'givenName', 'displayName', 'telephoneNumber', 'memberof', 'samaccountname', 'primarygroupid'); //选择要获取的用户属性
 
$justthese = array('*'); //选择要获取的用户属性

 //$sr=ldap_search($conn, $basedn,$filter );
 
$sr = ldap_search($conn, $basedn, $filter, $justthese);
 
var_dump("AAAAAAA");
 
echo "<pre>";
 
$info = ldap_get_entries($conn, $sr);

 
print_r($info);
 
echo "</pre>";

 
if ($bd) {
   
echo 'LDAP 绑定成功'; //相当于登录成功
 
} else {
   
echo 'LDAP 绑定失败';
 }
}
else {
 
echo '无法连接到AD域服务器';
}
ldap_close($conn);
?>



普通分类: