.NET Framework のディレクトリ サービス
System.DirectoryServices、System.DirectoryServices.ActiveDirectory、および System.DirectoryServices.Protocols の各マネージ API は、ディレクトリ サービスへのアクセスと管理を提供します。 また、これらのマネージ API は、マネージ コードを使用したディレクトリ主体のアプリケーションおよびディレクトリ対応アプリケーションを開発するための完全なソリューションを提供します。
3 つのマネージ API がどのように相互に関連しているか、および対応するアンマネージ API にどのように関連しているかを次の図に示します。
このセクションの内容
System.DirectoryServices Namespace Overview
マネージ コードから Active Directory へのアクセスを提供します。 System.DirectoryServices は ADSI 上に構築されます。 DirectoryEntry および DirectorySearcher は、2 つの基本的なオブジェクトの種類です。 すべての操作は、これら 2 つのオブジェクトを使用して実行されます。System.DirectoryServices を使用するときは、高度な概念を理解する必要はありません。 たとえば、LDAP コントロールを使用してページング サイズ検索を実行するときは、ページ サイズを指定し、返された結果を列挙します。 ページ結果コントロールの構築、要求の送信、およびページ結果 Cookie の取得から、要求の再発行に至るまで、すべてが System.DirectoryServices によって処理されます。 ユーザーはプロパティの構文を理解する必要はありません。プロパティの構文は、内部のスキーマの割り当てを介して自動的に処理されます。
System.DirectoryServices は、基幹業務アプリケーションおよびディレクトリ対応アプリケーションを迅速に開発する開発者を対象として設計されています。
System.DirectoryServices.ActiveDirectory Namespace Overview
Active Directory タスクを構築する高レベル抽象オブジェクト モデルが用意されています。 フォレスト、ドメイン、サイト、サブネット、パーティション、スキーマなどの Active Directory の概念は、このオブジェクト モデルの一部です。System.DirectoryServices.ActiveDirectory は、System.DirectoryServices の上に構築されるため System.DirectoryServices に似た機能を持ちます。 ディレクトリへの通常のアクセスを提供する System.DirectoryServices または System.DirectoryServices.Protocols とは異なり、System.DirectoryServices.ActiveDirectory は、より抽象性の高い抽象化を提供し、Active Directory および Active Directory Application Mode (ADAM) のすべてのタスクおよび操作の中心となります。 たとえば、System.DirectoryServices.ActiveDirectory は、特定のドメイン内のドメイン コントローラーの検索、ADAM インスタンスのレプリケート、信頼の設定、およびトポロジの作成に使用されます。 System.DirectoryServices.ActiveDirectory 名前空間は、日常業務の自動化を必要とする管理者と、Active Directory または ADAM 関連の基幹業務アプリケーションを作成する IT 開発者を対象として設計されています。
System.DirectoryServices.Protocols Namespace Overview
LDAP (Lightweight Directory Access Protocol) と、DSML (Directory Services Markup Language) などの LDAP に類似するプロトコル用に設計されています。 高度な抽象 API ではありません。 System.DirectoryServices.Protocols のオブジェクト モデルはコネクション指向で、要求は接続を通じて構築および送信され、応答も接続を介して受信されたり返されたりします。 System.DirectoryServices.Protocols は最上層の LDAP C プログラミング言語 API 上に構築されます。 パフォーマンスの向上を目的として、System.DirectoryServices.Protocols は LDAP のすべての機能を提供します。 高度な機能には、非同期モデル、証明書のサポート、および LDAP コントロールが含まれます。 System.DirectoryServices.Protocols は、パフォーマンスの高いサーバー側アプリケーションを開発するために、最大限の制御と柔軟性を必要とする経験豊富な開発者を対象としています。
関連項目
- Advanced Development Technologies
.NET Framework における高度なアプリケーション開発のタスクと手法に関する情報へのリンクを示します。