アカウント データベース

Active Directory は、 キー配布センター (KDC) がドメイン内の セキュリティ プリンシパル に関する情報を取得するために使用するアカウント データベースを提供します。 各プリンシパルは、ディレクトリ内のアカウント オブジェクトによって表されます。 ユーザー、コンピューター、またはサービスとの通信に使用される 暗号化 キーは、そのセキュリティ プリンシパルのアカウント オブジェクトの属性として格納されます。

ドメイン コントローラーのみが Active Directory サーバーです。 各ドメイン コントローラーはディレクトリの書き込み可能なコピーを保持するため、アカウントを作成したり、パスワードをリセットしたり、任意のドメイン コントローラーでグループ メンバーシップを変更したりできます。 ディレクトリの 1 つのレプリカに加えられた変更は、他のすべてのレプリカに自動的に反映されます。 Windows は、レプリケーション パートナー間のセキュリティで保護されたリモート プロシージャ コール接続を使用する独自のマルチマスター レプリケーション プロトコルを使用して、Active Directory の情報ストアをレプリケートします。 接続では 、Kerberos 認証プロトコル を使用して相互 認証 と暗号化が提供されます。

アカウント データの物理ストレージは、ドメイン コントローラー上のローカル セキュリティ機関 (LSA) と統合された保護されたプロセスであるディレクトリ システム エージェントによって管理されます。 ディレクトリ サービスのクライアントには、データ ストアへの直接アクセス権が付与されることはありません。 ディレクトリ情報にアクセスするクライアントは、ディレクトリ システム エージェントに接続し、ディレクトリ オブジェクトとその属性を検索、読み取り、および書き込む必要があります。

ディレクトリ内のオブジェクトまたは属性にアクセスする要求は、Windows アクセス制御メカニズムによる検証の対象となります。 NTFS ファイル システムのファイル オブジェクトやフォルダー オブジェクトと同様に、Active Directory 内のオブジェクトは、オブジェクトにアクセスできるユーザーと方法を指定するアクセス 制御リスト (ACL) によって保護されます。 ただし、ファイルやフォルダーとは異なり、Active Directory オブジェクトには属性ごとに ACL があります。 したがって、機密性の高いアカウント情報の属性は、アカウントの他の属性に付与される属性よりも制限の厳しいアクセス許可によって保護できます。

アカウントに関する最も機密性の高い情報は、もちろんパスワードです。 アカウント オブジェクトの password 属性には、パスワード自体ではなく、パスワードから派生した暗号化キーが格納されますが、このキーは侵入者にとって同様に役立ちます。 そのため、アカウント オブジェクトの password 属性へのアクセスは、アカウント所有者にのみ付与され、他のユーザーには付与されず、管理者にも付与されません。 信頼されたコンピューティング ベース特権を持つプロセス (LSA のセキュリティ コンテキスト で実行されているプロセス) のみが、パスワード情報の読み取りまたは変更を許可されます。

ドメイン コントローラーのバックアップ テープにアクセスできるユーザーによるオフライン攻撃を妨げる目的で、アカウント オブジェクトのパスワード属性は、システム キーを使用した 2 つ目の暗号化によってさらに保護されます。 この暗号化キーは、分離して保護できるようにリムーバブル メディアに格納することも、ドメイン コントローラーに格納することはできますが、分散メカニズムによって保護することもできます。 管理者には、システム キーを格納する場所と、パスワード属性の暗号化に使用するアルゴリズムを選択するオプションが用意されています。