2011-03-23 15 views
1

我沒有問題通過從ldap數組中提取每個成員[n]來獲取用戶組的成員,如'域管理員'。但是,'域控制器'沒有每個域控制器的成員[n]條目。在PHP中,如何執行LDAP查詢以查找所有域控制器?

以下顯示LDAP陣列,而不顯示任何成員(如果我與「域管理員」替換'域控制器的,我看到的成員):

$group = "Domain Controllers"; 
$ds = ldap_connect($domain_controller) or die("Couldn't connect to AD!"); 
ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3); 
$bd = ldap_bind($ds,$account,$account_pw) or die("Couldn't bind to AD!"); 
$dn="CN=Users,DC=our_domain,DC=com"; 
$filter="samaccountname=" . $group; 
$result=ldap_search($ds, $dn, $filter); 
$entries = ldap_get_entries($ds, $result); 

echo("<table>"); 
foreach($entries[0] as $key=>$value){ 
foreach ($value as $iKey => $iValue) { 
    echo("<tr><td style='white-space:nowrap;'>\$entries[0][" . $key . "][" . $iKey . "]</td><td>" . $iValue . "</td></tr>"); 
} 
} 
echo("</table>"); 

回答

1

Domain Controllers OU不在Users OU(除非你已經重新組織你的AD設置)。您需要修改您的LDAP查詢以使用僅有DC=our_domain,DC=com的基準DN。

+0

顯然我們的'域控制器'出於某種原因在Users OU中。我確實得到了該組的結果,只是沒有我可以使用的。 – 2011-03-23 20:55:42

相關問題