WindowsのPCは、「ワークグループ」か「ドメイン」のどちらかに属しています。家庭のPCはたいていワークグループで、会社のPCはドメインに参加していることがほとんどです。この2つのいちばん大きな違いは、ユーザーのアカウントをどこに置き、誰が本人確認をするかにあります。
- ワークグループとドメインの違いは「アカウントの置き場所」
- ローカルアカウントとドメインアカウントの見分け方
- ドメインに参加すると何が起き、何が楽になるのか
ひとことで言うと「名簿がどこにあるか」
ワークグループでは、PCが1台ずつ自分のアカウントの名簿を持っています。PC同士は対等で、どのPCもほかのPCを管理しません。ドメインでは、名簿をドメインコントローラ(DC)という専用のサーバにまとめ、ドメインに参加したPCやサーバは、本人確認をDCに任せます。
| 項目 | ワークグループ | ドメイン |
|---|---|---|
| アカウントの置き場所 | 各PCの中(SAMというデータベース) | DCの中(Active Directoryのデータベース) |
| 本人確認をするのは | アクセスされる側のPC自身 | DC |
| サインインできるPC | アカウントを作ったPCだけ | ドメインに参加しているPCならどれでも |
| パスワードの変更 | PCごとに変える | 1回変えれば、すべてのPCで新しいパスワードになる |
| 向いている規模 | 家庭や小さな事務所(数台〜20台程度) | 会社や学校など、台数や人数が多い環境 |
| 主な認証プロトコル | NTLM | Kerberos(使えないときはNTLM) |
ワークグループのしくみ
ワークグループでは、PCにサインインするためのアカウントは、そのPCの中に作ります。ほかのPCにサインインしたり、ほかのPCの共有フォルダを使ったりするには、相手のPCにもアカウントが必要です。Microsoftの説明では、ワークグループは同じネットワーク上の、多くても20台程度の機器で使うものとされています。
ほかのPCの共有フォルダを開くとき
PC-Aにuser01でサインインしている人が、PC-Bの共有フォルダを開く場面を考えます。本人確認をするのは、開かれる側のPC-Bです。PC-Bは自分の名簿を見て、user01がいるか、パスワードが合っているかを確かめます。
| No. | 何が起きているか |
|---|---|
| ① | PC-Aは、今サインインしているuser01として、PC-Bに本人であることを証明します。ワークグループにはDCがないので、NTLMが使われます。 |
| ② | PC-Bは、自分のSAMにuser01がいるか、パスワードが合っているかを確かめます(認証)。 |
| ③ | PC-Bにuser01がいない、またはパスワードが違うと、PC-Aの画面でユーザー名とパスワードの入力を求められます。 |
| ④⑤ | PC-Bのアカウントで入力し直すと、PC-Bが自分の名簿で確認し、共有フォルダのアクセス許可を見て開けるかどうかを決めます(認可)。 |
両方のPCに同じユーザー名と同じパスワードのアカウントを作っておくと、入力を求められずに開けることがあります。ただし、パスワードを変えるときは、すべてのPCで同じように変える必要があります。台数が増えるほど、この管理は大変になります。
ドメインのしくみ
ドメインは、Windows ServerのActive Directory ドメインサービス(AD DS)で作ります。AD DSの役割を持つサーバがドメインコントローラ(DC)で、ドメインのユーザー、グループ、コンピュータのアカウントを、Active Directoryのデータベースにまとめて持ちます。DCは、ほかのPCのようなSAMを使わず、Active Directoryでアカウントを管理します。
ドメインに参加したPCでは、ドメインのアカウントでサインインできます。自席のPCでも会議室のPCでも、同じuser01でサインインでき、ファイルサーバの共有も、パスワードを入れ直さずに開けます。本人確認はDCが受け持ち、各PCやサーバはその結果を信頼します。
名簿が1か所にあるので、管理もまとめて行えます。退職した人のアカウントをDCで無効にすれば、DCに確認するサインインやサーバの利用を、まとめて止められます。グループポリシー(GPO)を使えば、パスワードの長さや画面ロックなどの設定を、ドメインのPCにまとめて配ることもできます。
ドメインに参加すると何が起きるのか
PCをドメインに参加させると、Active DirectoryにそのPCのコンピュータアカウントが作られます。PCとDCは、このアカウントのパスワードを共有し、それを使ってお互いを確かめる通信路(セキュアチャネル)を作ります。このパスワードは、既定では30日ごとにPCが自動で変更します。
つまり、ドメインでは人だけでなく、PC自身もアカウントを持ちます。Active Directoryでは、PC-A$のように、PC名の後ろに「$」を付けた名前で管理されます。「このワークステーションとプライマリ ドメインとの信頼関係に失敗しました」というエラーは、PCとDCの間でこのパスワードが合わなくなったときによく表示されます。
ローカルアカウントとドメインアカウント
ドメインに参加したPCでも、そのPCの中の名簿(SAM)は残っています。そこにあるのが「ローカルアカウント」で、Administratorなどがこれにあたります。ローカルアカウントで使えるのは、そのPCの中のものだけです。ネットワーク上のサーバを使うには、ドメインのアカウントが必要になります。
サインイン画面では、どちらのアカウントでサインインするかを、ユーザー名の書き方で区別できます。
| 書き方 | 意味 |
|---|---|
| CORP\user01 | ドメイン名(NetBIOS名)+ユーザー名。ドメインのアカウント |
| user01@corp.example.com | UPN(ユーザープリンシパル名)。メールアドレスのような形のドメインのアカウント |
| PC-A\Administrator | PC名+ユーザー名。そのPCのローカルアカウント |
| .\Administrator | 「.」は今サインインしようとしているPCを表す。そのPCのローカルアカウント |
今どのアカウントでサインインしているかは、コマンドプロンプトで次のコマンドを実行すると確認できます。「ドメイン名\ユーザー名」または「PC名\ユーザー名」の形で表示されます。
PC(コマンドプロンプト):今サインインしているアカウントを表示する
whoami
ローカルの管理者アカウントを、すべてのPCで同じパスワードにするのは危険です。1台から盗まれたパスワードの情報で、ほかのPCにも管理者として入られてしまうおそれがあります。Windows LAPSのように、PCごとに別のパスワードを自動で設定して管理する仕組みを使うと、この危険を減らせます。
認証と認可で見ると
本人を確かめる「認証」と、何を許すかを決める「認可」に分けて見ると、ワークグループとドメインの違いがよりはっきりします。変わるのは主に認証のほうで、認可は、どちらでもアクセスされる側のPCやサーバが行います。
| 項目 | ワークグループ | ドメイン |
|---|---|---|
| 認証するのは | アクセスされる側のPCが、自分のSAMで確認する | DCが確認し、PCやサーバはその結果を信頼する |
| 認可するのは | アクセスされる側のPC | アクセスされる側のPCやサーバ |
| アクセス許可に使う名前 | そのPCのローカルユーザーやローカルグループ | ドメインのユーザーやグループ(ローカルのものも使える) |
最近は、ワークグループでもドメインでもなく、クラウドのMicrosoft Entra IDにPCを参加させる「Entra参加」も増えています。この場合、名簿はEntra IDにあります。参加の手順はMicrosoft Entra ID に Windows 11 デバイスを登録する方法(Entra 参加)で紹介しています。
まとめ
ワークグループとドメインの違いは、アカウントの名簿が各PCにあるか、DCにまとまっているかです。ドメインでは、1つのアカウントでどのPCも使え、パスワードの変更や無効化も1か所で済みます。
| 項目 | 押さえておくこと |
|---|---|
| ワークグループ | 各PCが自分の名簿(SAM)を持つ。ほかのPCを使うには、そのPCのアカウントが必要 |
| ドメイン | 名簿をDC(Active Directory)にまとめる。本人確認はDCが受け持つ |
| ドメイン参加 | ADにPCのコンピュータアカウントができ、PCとDCがセキュアチャネルでお互いを確かめる |
| ローカルアカウント | ドメインに参加しても残る。使えるのはそのPCの中だけ |
| 見分け方 | ドメイン名\ユーザー名や UPN はドメイン、PC名\ユーザー名や .\ユーザー名 はローカル。whoami で確認できる |
この記事は、次の資料を確認して書いています。
- Set up your small business network(ワークグループ)(Microsoft Learn)
- Built-in and Account Domains(Microsoft Learn)
- Security principals(Microsoft Learn)
- Credentials processes in Windows authentication(Microsoft Learn)
- NTLM overview(Microsoft Learn)
- Event ID 5722 is logged on your domain controller(セキュアチャネルとコンピュータアカウントのパスワード)(Microsoft Learn)
- Join a computer to a domain(Microsoft Learn)
- Block the remote use of local accounts in Windows(Microsoft Learn)
コメント