Active Directoryの仕組み

目次

Active Directoryの本質

Active Directory(AD)を理解するうえで、役割の本質を理解することが大事です。

ADと聞くとサーバやPCにログインするときに使用される認証サービスというイメージが強いでしょう。

ただ、ADの本質は「ディレクトリサービス」であり、「環境内のリソース情報を格納する図書館」というイメージが適切です。

ADの本質
ADは基本的に、組織内のネットワークリソース(ユーザー、コンピュータ、プリンタ、アプリケーション、ファイルなど)に関する情報を中央集権的に保管・管理するためのデータベースとして設計されています。

つまり、「何がどこにあるか」という情報の集約庫としての役割が根本にあります。

この「リソースの所在を知るディレクトリ」としての機能があるからこそ、以下のような様々なサービスが可能になります。
  • リソース検索:特定の条件に合うユーザーやデバイスなどを効率的に検索できる
  • 認証・認可:ユーザーが本人であることを確認し、適切なリソースへのアクセス権を付与する
  • ポリシー管理:組織全体やグループ単位でセキュリティやシステム設定を一元管理する
  • リソース属性管理:各リソースの詳細な属性情報(メールアドレス、所属部署など)を保持する

ユーザー認証がADの代表的な機能として知られているのは、日常的にIT担当者や一般ユーザーが最も頻繁に接する機能だからですが、これはディレクトリサービスという基盤があってこそ実現できる機能の一つに過ぎません。

電話帳に例えるなら、「誰がどこに住んでいて、どんな電話番号を持っているか」という情報を集約しているからこそ、「この電話番号の主は確かに山田さんである」という確認(認証)ができるようになります。

ポイント! Active Directoryは「情報の集約と管理」が本質であり、認証やポリシー適用などはその情報を活用した応用機能だと理解することが正確です。
そして、この集中管理された情報基盤があることで、大規模な組織でも効率的なIT管理が可能になっているのです。

ディレクトリサービスの構造

ADの本質はディレクトリサービスで「環境内のリソース情報を格納する図書館」と説明しました。

そのディレクトリサービスは、ネットワーク上のリソース(ユーザー、コンピュータ、プリンタなど)に関する情報を階層的に格納・管理するデータベースです。

ADのDB
Active Directory(AD)のディレクトリサービスは、フォレスト、ドメイン、組織単位(OU)という階層構造を持っています。

最上位にはフォレストがあり、その下に一つまたは複数のドメインが存在します。

ディレクトリサービスのデータベースには、自分が所属するドメイン内のリソースを管理範囲とします。

ドメイン内には組織単位が配置され、その中に実際のオブジェクト(ユーザーアカウントやコンピュータアカウントなど)が格納されます。

ADのDB
各ドメインのADのディレクトリサービスが自身の所属するドメインのリソースを責任を持って管轄します。

他のドメインのリソース情報が欲しいときは、ドメイン間の信頼関係を使って、他のADサーバに対して問い合わせを行うことで解決します。

また、この構造はDNS(Domain Name System)の名前空間に似た階層的な名前付け規則に従っており、例えば「username@example.com」や「example.com¥username」のように表されます。

ADのリソース名
データはスキーマに基づいて格納され、スキーマはオブジェクトクラスと属性という要素で構成されています。

この構造により、大規模な組織でも効率的に情報を管理し、適切なアクセス制御を実現できるようになっています。

スキーマについては、「ドメイン/フォレスト/ツリー」で詳細を解説しています。

ドメインコントローラー(DC)とは

ドメインコントローラー(DC)は、Active Directoryドメインにおいて認証と認可のプロセスを管理するサーバーです。

DCはドメイン内のすべてのセキュリティ情報を保持し、ユーザーがネットワークにログオンする際の認証処理を担当します。

具体的には、KerberosやフォールバックとしてのNTLMなどの認証プロトコルを使用してユーザーの身元を確認し、そのユーザーが持つアクセス権限(認可)を管理します。

DCは常にActive Directoryデータベースの完全なコピーを保持しており、複数のDCがある場合は、マルチマスターレプリケーション機能によりデータの同期を行います。

これにより、一つのDCが利用できなくなっても別のDCがサービスを継続できる冗長性が確保されます。

また、グローバルカタログサーバーとしての役割を持つDCは、フォレスト全体の検索やユニバーサルグループのメンバーシップ情報を提供する機能も担っています。

ADサーバとDCの関係

Active Directory(AD)サーバーとドメインコントローラー(DC)は、厳密には同じものを指すことが多いですが、概念的には若干の違いがあります。

ADサーバーはActive Directoryサービスを実行しているサーバーの総称で、ドメインコントローラーはADドメインの認証と権限付与を管理する特定の役割を持つサーバーです。

すべてのドメインコントローラーはADサーバーですが、ADサーバーには他の役割(読み取り専用ドメインコントローラー、グローバルカタログサーバーなど)も含まれる場合があります。

ADとDCの関係
Windows Serverにドメインコントローラーの役割を追加すると、そのサーバーはActive Directoryドメインサービス(AD DS)をインストールし、ADサーバーかつドメインコントローラーとなります。

このサーバーは単なるファイルサーバーなどとは異なり、ドメイン全体のセキュリティと管理の中核として機能します。

つまり、DCはADサービスを実行している特定の役割を持ったサーバーであり、ADサーバーはその役割を含むより広い概念だと理解できます。

比較項目 ADサーバー ドメインコントローラー (DC)
定義 Active Directoryサービスを実行しているサーバーの総称 ADドメインの認証と権限付与を管理する特定の役割を持つサーバー
関係性 より広い概念で、DCを含む様々な役割を持つサーバーを指す すべてのDCはADサーバーである(逆は必ずしも成り立たない)
主な役割 ディレクトリサービスの提供、各種ADサービスのホスティング ドメイン認証処理、ディレクトリデータの複製と保存、グループポリシーの適用
種類/分類 DC、読み取り専用DC(RODC)、ADLDSなど様々な構成が可能 プライマリDC、追加DC、読み取り専用DCなど
データベース Active Directoryデータベース(NTDS.dit)やその他関連データを保持 常にActive Directoryデータベースの完全なコピー(RODCは部分的)を保持
実装例 AD DS、AD LDS、AD CS、AD FSなど様々な役割を持つサーバー Windows ServerにActive Directory Domain Services役割が追加されたサーバー

まとめ

Active Directoryの仕組みについて解説しました。

ADサーバはその使われ方から、ユーザー認証のサービスと理解されがちですが、その本質は名前の通り「ディレクトリサービス」です。

ディレクトリは「住所氏名録」、「人名簿」などと訳される単語です。

その環境内に存在するリソース情報を収集し、情報図書館として一覧化することが本来の役割です。

この本来の役割があるからこそ、認証や統一的なポリシーといった機能が実現されているのです。

まずは、そこの認識から正していきましょう。