2009-06-12 48 views
0

如何從不在域中的機器訪問AD。我有一個應用程序需要在某些機器上運行,這些機器是域的一部分,有些則不是。從機器訪問AD而不是域的一部分

我假設我必須從不在域中的機器提供有效的登錄令牌,但用戶名和密碼必須是。

建議.net和AD

回答

1

您可以使用一個PrincipalContext上的constructor,其中需要查詢的域的名稱,訪問域時使用的用戶名和密碼。這個版本還可以讓你指定要聯繫哪個服務器來做你的查詢。

using (var context = new PrincipalContext(ContextType.Domain, 
              "dc.example.com", 
              authUser, 
              authPassword)) { 
    var valid = context.ValidateUser(userName, userPassword); 

    ... 
} 
0

System.DirectoryServices命名空間提供了一堆的課程,以幫助您連接到AD什麼書,DirectoryEntry的類允許您指定您的憑據用戶名和密碼,以便可能會讓你開始。

另外,還有System.DirectoryServices.AccountManagement命名空間,它甚至有更多的類可以更好地抽象AD工作。

我從來沒有讀過任何有關.NET與AD的書,但微軟嘿,腳本專家有一堆他們用於與AD交談的腳本,你可以從這些腳本學到很多東西,例如編寫查詢和訪問屬性名稱。這和他們只是很多樂趣閱讀:)

相關問題