System.DirectoryServices.ActiveDirectory 的技術摘要
System.DirectoryServices.ActiveDirectory 是 .NET Framework 元件,可讓程式執行與分割、結構描述、複寫、信任相關的 Active Directory 網域服務管理作業,以及 Active Directory 網域服務設定。
System.DirectoryServices.ActiveDirectory 是 Active Directory 網域服務與 AD LDS 的簡化、直接介面,對應用程式開發人員以及使一般管理工作自動化的系統管理員很有用。雖然此命名空間所提供的一些功能可透過現有的 System.DirectoryServices 類別來使用,但使用 System.DirectoryServices.ActiveDirectory 時,可用較少行的程式碼,而且不必知道詳細的 Active Directory 網域服務知識即可執行許多工作。
關鍵字
Active Directory 網域服務管理、Active Directory 網域服務指令碼處理、管理應用程式、Active Directory 網域服務結構描述、複寫、樹系、信任、AD LDS
System.DirectoryServices.ActiveDirectory
相關技術
System.DirectoryServices
可用 System.DirectoryServices.ActiveDirectory 物件完成的許多相同工作,也可以用 System.DirectoryServices 物件來完成。System.DirectoryServices 中的類別提供各種目錄服務的一般存取,包括 Active Directory 網域服務、以 LDAP 為基礎的目錄、SAM、Novell Netware 以及 IIS 目錄。System.DirectoryServices.ActiveDirectory 提供存取和處理一般 Active Directory 網域服務特定物件 (例如網域、結構描述屬性、信任關係以及複寫排程) 的簡化模型。System.DirectoryServices.ActiveDirectory 提供的大部分功能,在 System.DirectoryServices 中都不支援。即使 System.DirectoryServices 支援對等的功能,因為 System.DirectoryServices 的一般化本質,應用程式開發人員必須撰寫更多程式碼才能執行相同操作。
System.DirectoryServices.Protocols
System.DirectoryServices.Protocols 命名空間可讓您以一般程式設計方式透過 Lightweight Directory Access Protocol (LDAP) V3 以及 Directory Services Markup Language (DSML) V2 標準來存取和管理目錄服務。System.DirectoryServices.Protocols 提供 Managed LDAP 程式設計最大層級的控制及最高效能。如同 System.DirectoryServices,System.DirectoryServices.Protocols 並非特別為 Active Directory 網域服務與 AD LDS 工作而設計。
Windows 的 DSML 服務
Windows 的目錄服務標記語言 (DSML) 服務可讓應用程式使用 XML 文件,以 SOAP-DSML 訊息來讀取和寫入 Active Directory 網域服務。使用此技術時,可使用 COM 物件 (例如,MS XML 物件) 來處理訊息。若要使用 .NET 原生介面來處理 DSML,請使用 System.DirectoryServices.Protocols 命名空間中的介面。如需有關 Windows 之 DSML 服務的詳細資訊,請參閱 MSDN Library (本頁面可能為英文) 上<Win32 與 COM 開發 SDK 文件>子標題下之目錄服務中的<Windows 的 DSML 服務>。
Active Directory 網域服務 COM 介面與 Win32 功能
Active Directory 網域服務 COM 介面與 Win32 功能可讓以 Win32 為基礎的程式存取 Active Directory 網域服務特定管理物件,以及整合 MMC Active Directory 嵌入式管理單元。這些技術以非常低的目錄層級與 Active Directory 網域服務互動,因此比起使用 System.DirectoryServices 與 System.DirectoryServices.ActiveDirectory 命名空間來完成相同工作,它通常需要更複雜的程式設計。它們還提供 Managed 類別未提供的一些功能,因此在實作特定類型的應用程式 (例如在 MMC 嵌入式管理單元頁面中加入內容) 時,必須使用 Active Directory 網域服務 COM 介面與 Win32 功能。如需有關這些技術的詳細資訊,請參閱 MSDN Library (本頁面可能為英文) 上<Win32 與 COM 開發 SDK 文件>子標題下之目錄服務中的<Active Directory 網域服務>。
ADSI
Active Directory 服務介面 (ADSI) 是一組自動化和非自動化的 COM 介面,提供 Active Directory 網域服務特定管理物件、應用程式物件以及 Active Directory 網域服務結構描述的存取。ADSI 中的自動化介面可用於指令碼處理。也支援非自動化 COM 介面的語言 (例如,C++、C# 以及 VB.Net) 可以使用這兩種類型的介面來開發應用程式。如需有關 ADSI 的詳細資訊,請參閱 MSDN Library (本頁面可能為英文) 上<Win32 與 COM 開發 SDK 文件>子標題下之目錄服務中的<Active Directory 服務介面>。
LDAP
Lightweight Directory Protocol (LDAP) API 提供以 LDAP 為基礎的目錄的存取,包括 Active Directory 網域服務。它使用標準的 LDAP 通訊協定來存取、搜尋以及處理目錄項目。如同 Active Directory 網域服務 COM 介面與 Win32 功能,LDAP 可讓開發人員透過其目錄路徑來存取物件。不過,由於 LDAP 沒有 Active Directory 網域服務特定結構的固有知識,因此以 LDAP 為基礎的 Active Directory 網域服務應用程式通常更為複雜,比其他開發 Active Directory 網域服務應用程式的方法必須撰寫更多程式碼。如需有關 LDAP 的詳細資訊,請參閱 MSDN Library (本頁面可能為英文) 上<Win32 與 COM 開發 SDK 文件>子標題下之目錄服務中的<Lightweight Directory Access Protocol>。
背景
System.DirectoryServices.ActiveDirectory 命名空間包含一組 .NET 類別,可簡化用來管理和存取 Active Directory 網域服務內容之應用程式的開發工作。
舊版的 .NET Framework 可讓應用程式開發人員使用 System.DirectoryServices 命名空間存取 Active Directory 網域服務項目。不過,因為 System.DirectoryServices 被開發成提供許多不同類型目錄服務的存取 (不僅是 Active Directory 網域服務而已),所以它不包含直接存取 Active Directory 網域服務與 AD LDS 特定功能的類別,例如分割區 (含有樹系與網域) 與拓撲 (含有網站、子網路以及網站連結)。如果開發人員知道感興趣之項目的路徑,而且正確建構代表路徑的字串,則可以透過 System.DirectoryServices 存取這些項目,儲存在 Active Directory 網域服務中的所有物件都是如此,但 System.DirectoryServices 命名空間本身並不瞭解 Active Directory 網域服務的結構。此外,有時候必須擷取或更新兩個或多個項目才能完成 Active Directory 網域服務系統管理工作。
由於在許多組織中對目錄服務的 Active Directory 網域服務的信心增加,應用程式開發人員需要用更直接的方法來存取和更新拓撲資訊,以及控制 Active Directory 網域服務程序。這個新機制只要求對 Active Directory 網域服務結構描述的內部結構有最低認識,可讓開發人員盡可能利用最少的應用程式程式碼行來執行一般 Active Directory 網域服務相關工作。System.DirectoryServices.ActiveDirectory 被設計成符合這些需求。
以 .NET Framework 撰寫的應用程式可以使用 System.DirectoryServices.ActiveDirectory 類別 (例如 Forest、Domain 以及 ActiveDirectorySiteLink) 來列舉和探索 Active Directory 網域服務樹狀目錄的拓撲。應用程式開發人員只需要知道物件在階層中的位置 (例如,名為 "sales" 的網域位於 "contoso.com" 樹系中),就可以使用 System.DirectoryServices.ActiveDirectory 類別來參考該物件。同樣地,開發人員可以透過如 ReplicationOperation 的類別來檢查和控制 Active Directory 網域服務的操作進度,以及透過如 ActiveDirectorySchema 的類別來查詢或修改 Active Directory 網域服務結構描述本身。
開發人員可能偶爾要存取 System.DirectoryServices 使其可用的其他功能,同時還要利用 System.DirectoryServices.ActiveDirectory 類別來瀏覽 Active Directory 網域服務拓撲。為完成此動作,應用程式可以經常取得實際 DirectoryEntry 物件 (對應到 System.DirectoryServices.ActiveDirectory 命名空間中有興趣的物件) 的參考。然後,應用程式可以使用 DirectoryEntry 物件來存取功能,例如讀取和寫入 Active Directory 網域服務項目安全性描述元,可透過 System.DirectoryServices 命名空間中的類別來使用。
如需有關 System.DirectoryServices 與 System.DirectoryServices.ActiveDirectory 命名空間的詳細資訊,請參閱 .NET Framework 類別庫參考 (本頁面可能為英文)。.NET Framework 還包含一般的 .NET Framework 程式設計資訊。
應用程式使用 System.DirectoryServices.ActiveDirectory 命名空間中拓撲相關類別的執行個體來存取特定拓撲物件 (例如,特定 Active Directory 網域服務樹系中的特定網域控制站),或者列舉拓撲物件集合中的項目 (例如,網站中所有的子網路)。這些類別也可以用來查詢或更新拓撲物件之間的關係,例如樹系與網域信任。
應用程式使用 System.DirectoryServices.ActiveDirectory 命名空間中結構描述相關類別的執行個體來檢查 Active Directory 網域服務結構描述項目及其屬性。
為了監視和設定複寫,應用程式使用 System.DirectoryServices.ActiveDirectory 命名空間中複寫相關的類別。
下表列出開發與特定功能區域相關的應用程式時使用的主要類別。這並非命名空間中所有類別的完整清單。
技術範圍 | 類別/介面/組態項目 |
---|---|
連線到 Active Directory 網域服務物件存放區 (其他工作的先決條件) |
|
查詢或修改樹系組態資料 (例如,樹系模式、信任、機器角色以及網站清單) |
Forest |
查詢或修改網域組態資料 (例如,網域模式、信任、機器角色以及網域拓撲) |
Domain , |
查詢應用程式分割的網域控制站、複本以及安全性參考網域 |
ApplicationPartition , ApplicationPartitionCollection , ActiveDirectoryPartition |
查詢或修改 Active Directory 網域服務或 AD LDS 目錄伺服器組態資料 (例如,複寫參數、網站成員資格) 與伺服器中繼資料 (例如,角色);執行複寫功能 |
|
查詢或修改網域控制站組態資料 (例如,預設分割、複寫參數、目前時間、最高 USN 以及全域目錄狀態);列出所有網域控制站;執行複寫功能 |
|
查詢全域目錄組態資料 (例如,複寫的屬性清單);列出所有全域目錄 |
|
查詢和修改指派子網路的網站 |
|
查詢和修改網站資訊 (例如,其 Bridgehead 伺服器、相鄰網站以及網站中子網路清單)。 |
|
查詢所有傳輸、網站連結以及網站連結橋接的清單;將參數設定為橋接所有網站連結或忽略複寫排程 |
|
查詢和修改網站連結與網站連結橋接的組態資料 |
ActiveDirectorySiteLink , |
查詢複寫中繼資料與值 |
|
查詢和修改複寫組態資料 (例如,排程、傳輸類型以及連線可用性) |
|
查詢複寫程序詳細資料 (例如,擱置作業、狀態、上次成功同步時間以及複寫錯誤) |
ReplicationNeighborCollection , ReplicationOperation , ReplicationOperationCollection , |
查詢結構描述組態資料、類別以及屬性;執行結構描述變更後重設結構描述快取 |
ActiveDirectorySchema |
查詢和修改結構描述類別詳細資料 |
|
查詢和修改結構描述屬性詳細資料 |
|
查詢和修改信任組態資訊 |
ForestTrustDomainInformation , ForestTrustDomainInfoCollection , ForestTrustRelationshipCollision , ForestTrustRelationshipCollisionCollection , ForestTrustRelationshipInformation , |
新功能
System.DirectoryServices.ActiveDirectory 是一個以工作為基礎的新類別階層,它是在 Visual Studio 2005 中導入,可簡化將 Active Directory 網域服務以及 AD LDS 相關功能加入應用程式的程序。
請參閱
概念
System.DirectoryServices.ActiveDirectory 命名空間概觀
Send comments about this topic to Microsoft.
Copyright © 2008 by Microsoft Corporation.All rights reserved.