グループの名前が紛らわしいのは、昔は 2 種類だったものが、今は 4 種類に分かれているためです。分かれた経緯を知ると、名前の重なりが整理できます。
当時からドメインコントローラーは DC と呼んでいました。この呼び方は今も変わっていません。そして当時のグループは、次の 2 種類だけでした。
ただし「ローカルグループ」には、実は置き場所の違う 2 つが混ざっていました。DC の上に作ったものと、個々のサーバの上に作ったものです。同じ名前なのに効く範囲が違う、というのが当時の分かりにくさでした。
Active Directory では、この混ざっていた 2 つがはっきり別の名前に分かれ、さらに新種が 1 つ加わりました。
改名されたのはドメインローカルグループだけです。グローバルグループもローカルグループも、名前は昔のまま残っています。「昔はグローバルグループと言っていた」という記憶は正しく、今もその呼び方で通じます。
ここまでの 4 種類は「スコープ」という軸の話です。グループにはもう 1 つ、これと直角に交わる「種類」という軸があります。
| 軸 | 選択肢 | 何を決めるか |
|---|---|---|
| スコープ | ドメインローカル / グローバル / ユニバーサル | 誰をメンバーにできるか、どこで効くか |
| 種類 | セキュリティ / 配布 | 権限に使えるか、メール配布専用か |
2 つの軸は独立しているので、グループを作るときは必ず両方を選びます。つまり「グローバルグループ」と呼んでいるものの正体は、グローバルセキュリティグループかグローバル配布グループのどちらかです。
ファイルサーバの権限に使うのは常にセキュリティグループなので、実務で「グローバルグループ」と言うときは、ほぼ前者を指しています。
用語が区別できない一番の原因は、そのアカウントがどこに保存されているかが見えないことです。しかし実は、画面の表示だけで一瞬に見分けられます。
SERVER01\田中 ← ¥の左がマシン名 → そのサーバのローカルアカウント
CONTOSO\田中 ← ¥の左がドメイン名 → AD のアカウント
CONTOSO\営業部 ← ¥の左がドメイン名 → AD のグループ
BUILTIN\Administrators ← そのマシンの組み込みローカルグループ
アカウントの置き場所は 2 か所しかありません。
Windows はアカウントを名前ではなく、SID という長い背番号で管理しています。ファイルの権限に記録されるのも名前ではなく SID です。
SERVER01¥田中 と CONTOSO¥田中 は、名前が同じでも SID がまったく違います。人間の目には同じに見えるのに Windows にとっては赤の他人、というのがこの世界の基本です。
ローカルアカウントは AD に参加しても消えません。サーバをドメインに参加させた後も、そのサーバのローカルユーザーとローカルグループはそのまま残り、使い続けられます。増えるのは「ドメインのアカウントも使えるようになる」ことだけです。
結論を先に言うと、SID を持っているものは、すべてファイルやフォルダの権限に指定できます。ここで悩む必要はありません。
| 対象 | 権限に使えるか | 効く範囲・補足 |
|---|---|---|
| ローカルユーザー | 使える | そのマシンの中だけ |
| ローカルグループ | 使える | そのマシンの中だけ |
| ドメインユーザー | 使える | ドメイン参加サーバならどこでも |
| グローバルグループ | 使える | フォレスト内のどこでも |
| ドメインローカルグループ | 使える | 同じドメイン内のサーバだけ |
| ユニバーサルグループ | 使える | フォレスト内のどこでも |
| コンピューターアカウント | 使える | サーバがサーバへアクセスする場面で使う |
| Everyone / SYSTEM など | 使える | OS が用意している特殊なもの |
| 配布グループ | 使えない | メール配布専用。権限には指定できない |
「どれに権限を付けられるか」は答えが全部同じなので、判断材料になりません。実際に考えるべきなのは次の 2 点です。
この 2 点こそが、グローバル・ドメインローカル・ユニバーサルを分けている違いそのものです。次の章で見ていきます。
2 つの箱は、役割がはっきり分かれています。
正しい使い方は、「2 年 A 組の生徒」という名簿をまるごと「図書室に入れる人」の束に入れることです。生徒を 1 人ずつ許可証の束に入れるのではありません。
この 2 つは、メンバーにできる範囲(入口)と権限を付けられる範囲(出口)が、ちょうど逆になるよう設計されています。
| スコープ | メンバーにできるもの(入口) | 権限を付けられる場所(出口) |
|---|---|---|
| グローバル | 同じドメインのアカウントだけ(狭い) | フォレスト内のどこでも(広い) |
| ドメインローカル | フォレスト内どのドメインからでも(広い) | 自分のドメイン内だけ(狭い) |
| ユニバーサル | フォレスト内どのドメインからでも(広い) | フォレスト内のどこでも(広い) |
覚え方は「グローバルは入口が狭くて出口が広い。ドメインローカルはその逆」です。この非対称が、次の章の AGDLP という組み立て方につながります。
Microsoft が昔から推奨している組み立て方に AGDLP という型があります。4 つの頭文字を、この順につないでいくという意味です。
ACL に個人を直接書いてしまうと、人事異動のたびに全サーバのフォルダを調べて回ることになります。しかも「どのフォルダにその人が書かれているか」を調べる手段が実質ありません。
AGDLP で組み立てておけば、異動があってもグローバルグループのメンバーを入れ替えるだけで済みます。ACL には二度と触りません。
| 場面 | ACL に個人を直接書いた場合 | AGDLP の場合 |
|---|---|---|
| 入社 | 必要なフォルダすべてに追加 | グローバルグループに入れるだけ |
| 異動 | 旧部署のフォルダを探して削除、新部署に追加 | 所属グループを入れ替えるだけ |
| 退職 | どこに書いたか分からず取り残される | グループから抜くだけで全部消える |
| 棚卸し | 実質不可能 | グループのメンバーを見れば分かる |
グローバルグループ(所属でまとめる)
G_営業部
G_経理部
G_システム部
ドメインローカルグループ(できることでまとめる)
DL_見積フォルダ_変更
DL_見積フォルダ_参照
DL_給与フォルダ_参照
フォルダの ACL には DL_ だけを書く
\\FS01\見積 ← DL_見積フォルダ_変更(変更)
DL_見積フォルダ_参照(読み取り)
単一ドメインならグローバルを省く流儀もあります。小規模な環境では「グローバルグループを直接 ACL に書く」運用もよく見ます。動きますし間違いでもありません。ただし将来ドメインが増えたときや、権限の種類が増えたときに作り直しになります。
ユニバーサルグループの出番は、ドメインが 2 つ以上あるフォレストで、ドメインをまたいで人をまとめたいときだけです。
ドメインが 1 つしかない環境では、正直ほとんど出番がありません。グローバルグループで足ります。「なんとなく一番強そうだから」で選ぶものではありません。
ユニバーサルグループは、メンバーの一覧がグローバルカタログに丸ごと載り、フォレスト全体の DC へ複製されます。人の出入りが多いグループをユニバーサルにすると、そのたびにフォレスト全体で複製が走ります。
そこで、ユニバーサルグループの中には個人を直接入れず、各ドメインのグローバルグループを入れ子にします。
こうすると、人の出入りはグローバルグループ側で吸収されます。ユニバーサルグループの中身は 2 行のまま変わらないので、グローバルカタログへの複製も発生しません。この形を AGUDLP と呼びます。
Active Directory ユーザーとコンピューター
→ 対象の OU を右クリック
→ 新規作成 → グループ
→ グループ名 : U_全社営業
→ グループのスコープ: ユニバーサル
→ グループの種類 : セキュリティ
スコープと種類は別々に選びます。権限に使うなら種類は必ずセキュリティです。
迷ったらグローバルを選んでください。後からスコープを変更することもできますが、条件があり(たとえばグローバルからユニバーサルへは、他のグローバルグループのメンバーになっていないことが必要)、常に自由に変えられるわけではありません。単一ドメインならグローバルで困りません。
ワークグループでは、各マシンが自分の SAM を持っています。2 台のマシンに同じユーザー名・同じパスワードのローカルアカウントを作っておくと、ネットワーク越しのアクセスでパスワードを聞かれずに通ります。これは パススルー認証 と呼ばれる NT 時代からの挙動で、確かにつながります。
しかし、それは「アカウントを共有している」のではありません。たまたま同じ名前・同じパスワードの別人が 2 人いるだけです。
破綻の仕方が厄介です。「ある日突然、一部の人だけ、一部のサーバにつながらない」という形で現れます。全体が止まればすぐ気づきますが、部分的にずれるので発見が遅れ、原因の特定にも時間がかかります。Active Directory が生まれた理由がまさにここにあります。
「AD に参加させたら、その AD の管理下となる」という理解で合っています。具体的には次のように変わります。
| 項目 | 参加前(ワークグループ) | 参加後(ドメイン) |
|---|---|---|
| 認証する相手 | 自分のマシン(SAM) | DC |
| パスワードの置き場 | 各マシンにバラバラ | DC に一元化 |
| 設定の配布 | 1 台ずつ手作業 | グループポリシーが自動適用 |
| ローカルアカウント | あり | 消えずにそのまま残る |
| 管理の単位 | マシン 1 台ずつ | ドメイン全体をまとめて |
ドメインの Domain Admins → そのマシンのローカル Administrators に自動追加
ドメインの Domain Users → そのマシンのローカル Users に自動追加
つまりドメイン管理者は、参加した瞬間からそのサーバの管理者になります。これが「管理下に入る」の実体です。
裏を返すと、ドメイン参加とは「このマシンの管理者権限の合鍵を DC に預ける」ことでもあります。DC が乗っ取られれば、参加している全サーバが同時に乗っ取られます。便利さと引き換えに、DC の保護が一段と重要になります。
よくある誤解ですが、ドメインに参加してもそのサーバのローカルユーザーとローカルグループは消えません。lusrmgr.msc で今までどおり見えますし、使えます。
増えるのは「ドメインのアカウントもこのマシンで使えるようになる」ことだけです。ローカルの Administrators に、ドメインのグループを追加できるようになる、という関係です。