我想與使用System.DirectoryServices.AccountManagement東西的Active Directory系統集成。我們的IT人員已經建立了一個AD框,我的開發箱不是這個(或任何)域的一部分。無法找到用戶或組與System.DirectoryServices.AccountManagement
到目前爲止,我有3行代碼作爲測試:
var pc = new PrincipalContext(ContextType.Domain, "machine", "CN=Administrator,CN=Users,DC=domain,DC=com", "Password");
var user = UserPrincipal.FindByIdentity(pc, IdentityType.SamAccountName, "Administrator");
var gp = GroupPrincipal.FindByIdentity(pc, IdentityType.SamAccountName, "Admins");
創建PrincipalContext工作上面列出,但如果我嘗試使用,而不是服務器名稱的域名,然後我得到一個錯誤:服務器無法聯繫。所以,我把它留在了機器名上。
獲取用戶或組時,出現錯誤:發生本地錯誤。
對於用戶來說,我也用同樣的結果嘗試這樣做:
var user = UserPrincipal.FindByIdentity(pc, IdentityType.DistinguishedName, "cn=Administrator,ou=users,dc=domain,dc=com");
因此,總體而言,我很困惑:(
沒有人有任何建議
作爲?注意,我想踢一個認爲'發生本地錯誤'的程序員將是一個有用的錯誤信息!
乾杯
PS:我可以在我的機器上使用SysInternals AD Explorer,我可以看到我正在嘗試使用的dn。
PPS:如果我在創建PrincipalContext時使用machine.domain.com作爲名稱,它也無法連接。