2013-10-08 135 views
0

這是我創建的DirectoryEntry連接到AD服務器(13.198.123.456)默認行爲

DirectoryEntry ldap_connection = new DirectoryEntry("LDAP://13.198.123.456/OU=Abc,DC=def,DC=ijk,DC=com", "username", "password"); 

但如果我創建的DirectoryEntry沒有LDAP URL,它會連接到該AD用於登錄到我的PC

DirectoryEntry ldap_connection = new DirectoryEntry("", "username", "password"); 

這是預期的行爲?有關這個的任何文檔?

回答

1

這不是特別清楚,但您使用的版本是默認DirectoryEntry構造的另一種情況,但與非默認的憑據 - 爲illustrated on this MSDN page,當你使用:

DirectoryEntry ent = new DirectoryEntry(); 

表示,綁定到爲用戶提供認證的域。

在的情況下:

DirectoryEntry ldap_connection = new DirectoryEntry("", "username", "password"); 

空字符串意味着綁定到提供認證給登錄用戶域,但使用用戶名和密碼備用憑據。

我沒有一個Windows系統來測試傳遞空字符串"",而不是null參考之間的差異,如果有的話,它可能會在這種情況下。