Active Directory のグループ管理とは
Active Directory のグループを使用することは、情報や IT リソースへのアクセスを効率的かつ正確に制御するためのセキュリティにおけるベストプラクティスです。ただし、業務の継続性の両方を維持するためには、組織には効果的なグループ管理の実践が必要です。一般的なグループ管理タスクには、新しいグループの作成、メンバーの追加または削除、グループ権限の設定、グループ属性の管理などが含まれます。
Active Directory グループの種類
Active Directory には、セキュリティ グループと配布グループの 2 種類のグループがあります。
セキュリティ グループ
セキュリティ グループは、業務アプリケーション、クラウド サービス、または Windows のファイル サーバー上のコンテンツなど、共有リソースへの権限を割り当てるために使用されます。セキュリティ グループのメンバーであるすべてのユーザー アカウント、コンピューター、およびその他の Active Directory オブジェクトは、そのセキュリティ グループに付与されたすべてのアクセス許可を継承します。一般に、セキュリティ グループは職務(ジョブ)ロールに基づいて構成されるため、組織はアクセス権を迅速かつ正確にプロビジョニング(付与)および再プロビジョニング(再付与)しやすくなります。
Active Directory の既定グループ
新しいドメインをセットアップすると、自動的に多数の セキュリティグループ が作成されます。Active Directory の既定のセキュリティグループには、次のものが含まれます。
- Domain Admins — この非常に強力なグループは、ドメイン内のすべてのドメイン コントローラーへのアクセスを制御でき、さらにドメイン内のすべての管理アカウントのメンバーシップを変更できます。
- Domain Users — 既定では、ドメイン内に作成されたすべてのユーザー アカウントは自動的にこのグループのメンバーになります。
- Domain Computers — 既定では、ドメイン内に作成されたすべてのコンピューター アカウントがこのグループのメンバーになります。
- ドメイン コントローラー — 新しいドメイン コントローラーは、このグループに自動的に追加されます。
既定の AD セキュリティ グループは、Active Directory Users and Computers の Builtin コンテナーおよび Users コンテナーにあります。
組み込みグループに加えて、組織は通常、さらに多くの Active Directory セキュリティ グループを作成します。これらのグループは、多くの場合、組織内のユーザーやコンピューターの役割に基づいています。たとえば、プロジェクト チームごとのグループ、または人事部門で使用されるすべてのワークステーションのグループなどです。一般的に、カスタムの AD セキュリティ グループは、組織が作成した組織単位(OU)に配置されます。
配布グループ
配布グループ(一般に配布リストと呼ばれます)は、Exchange 環境で選択した受信者グループにメールを送るために使用されます。たとえば、会社全体への告知を簡単に送信するために Active Directory で「All Employees」という配布グループを作成したり、マーケティング チームのメンバーだけにメールを送るための「Marketing Team」という配布リストを作成したりできます。配布グループには権限を割り当てることはできません。
セキュリティ グループのスコープ
セキュリティ グループのスコープは、権限を割り当てるためにどこで使用できるか、またどのオブジェクトをメンバーにできるかを決定します。Active Directory には、セキュリティ グループのスコープが 3 種類あります:
- ユニバーサル スコープ — Active Directory のユニバーサル グループは、特定のフォレスト内の複数ドメインにまたがるリソースに対して権限を割り当てるために使用されます。
- グローバル スコープ — グローバル グループには、任意の信頼ドメイン内のリソースに対する権限を付与できます。ただし、メンバーとして含められるのは自分のドメインのメンバーのみです。
- ドメイン ローカル スコープ — ドメイン ローカル グループは、特定のドメイン内のリソースに対する権限を割り当てるために使用されます。任意の信頼ドメインのアカウントおよびグループをメンバーにできます。
グループのネスト
次の図表は、各スコープの主な特徴をまとめ、例も示します:
Scope | Can Grant Permissions for | Can Have as Members | Example |
|---|---|---|---|
|
Universal |
Resources in any domain in the forest |
Accounts, Global groups and other Universal groups from any domain in the same forest |
"IT Administrators" have permissions to resources in multiple domains; members include IT admins from those domains. |
|
Global |
Resources in any domain in the same forest and in trusting domains or forests |
Accounts and other Global groups from the same domain |
"Marketing Team" has permissions to marketing-related resources in several domains; members include every user in the marketing department, who are all in the same domain. |
|
Domain Local |
Resources in one domain |
Accounts and groups from any trusted domain |
"Accounting Managers" has permissions to accounting resources in one domain; members include accounting managers from multiple domains. |
Active Directory のグローバル グループ / ユニバーサル グループ / ドメイン ローカル グループ
ネストとは、あるグループを別のグループのメンバーにすることです。この階層的な戦略により、親グループに割り当てられた権限は通常すべての子グループに継承されるため、権限管理を簡素化できます。ただし、権限の継承が中断されることもあります。次のベストプラクティスに必ず従ってください:
- ネストは控えめに使用する — ネストはせいぜい数段のみに制限してください。複雑なネストは、見つけにくい過剰な権限につながる可能性があります。
- 役割ベースのネストを使用する — 職務の役割に基づいてネストを実装します。たとえば、「IT Team」グループには、「Helpdesk Technicians」グループと「Server Operators」グループの両方をメンバーとして含めることができます。
- 忠実にドキュメント化する — ネストの構造を文書化し、すべての変更内容とその目的を記録します。この文書はトラブルシューティングや監査の目的に役立ちます。
- 十分にテストする — 本番環境でネストされたグループを導入する前にテストし、適切なユーザーに適切な権限が付与されていることを確認します。
- スコープを考慮する — 一般的には、グループをネストするときは次のガイドラインに従ってください。
- ユーザー アカウントとコンピューター アカウントを Global グループに追加します。
- グローバル グループをドメイン ローカル グループにネストします。
- ドメイン ローカル グループにリソースへの権限を付与します。
動的グループ
Active Directory の動的グループは、特定のユーザー アカウント属性を持つといった指定したルールによってメンバーシップが決まります。 たとえば、「Sales」部門という動的セキュリティ グループを作成し、部門属性が「Sales」になっているすべてのユーザー アカウントがメンバーであることを指定するルールを作成できます。グループのメンバーシップ リストは、定義したルールに基づいて定期的に更新されます。つまり、ユーザーが Sales 部門に参加すると自動的にグループに追加され、部門を離れると自動的にグループから削除されます。同様に、動的配布グループも作成できます。動的グループを使用すると、管理の手間とエラーのリスクを減らせます。
Active Directory の動的セキュリティ グループは、Windows PowerShell、またはこの機能をサポートするサードパーティ製の Active Directory グループ管理ツールを使用して作成および管理できます。
Active Directory のグループ管理に関するベストプラクティス
AD グループを効果的に管理することは、重要な IT リソースへのアクセスを制御するうえで不可欠ですが、実際には大きな課題になり得ます。ビジネス プロジェクトが開始・完了するにつれてアプリケーションが導入・退役され、またユーザーが入社・退職していくと、セキュリティ グループに不適切な権限やメンバーシップが付与されてしまうのはよくあることです。さらに、不要になったセキュリティ グループが増えていくことで、セキュリティ リスクが高まります。
配布グループはアクセス許可を付与しませんが、メールの配信は制御します。したがって、適切に管理されていない場合、機密情報が閲覧すべきでない相手に送信される可能性があります。さらに、適切な配布リストに含まれていないユーザーは、実際に業務を行うために必要なメールを見逃してしまうことがあります。
以下のベスト プラクティスは、これらすべての問題を回避するのに役立ちます。
ベスト プラクティス #1:自分が保有しているグループを常に把握する。
すべてのグループの詳細な棚卸し(インベントリ)を維持してください。特に、次の点に注意してください:
- メンバーがいないグループ
- オーナーがいないグループ
- 直近で変更がないグループ
- 重複しているように見えるグループ
- 他のグループ内にネストされたグループ
ディレクトリ内に数百、場合によっては数千ものグループがある場合、PowerShell が役立つことがあります。たとえば、次のスクリプトは、指定した OU 内のグループとそのメンバーを列挙します。:
get-adgroup -Filter * -SearchBase “OU=Groups,DC=corp,DC=company,DC=Com” | %{Get-ADGroupMember $_.name} | ft name
別の方法として、サードパーティ製のソリューションを使うこともできます。 Netwrix GroupID により、次のことが簡単になります:
- グループの種類とメンバーシップに基づいて、類似したグループを特定する
- メンバーがいないグループや、無効化されたユーザーが管理しているグループをレポートする
- 所有者のいないグループ、または最近使用されていないグループを特定する
- 入れ子になっているグループを見つける
- グループに関する追加情報を取得する
ベストプラクティス #2:標準を使用する。
一連の標準に従うことで、グループ管理が簡素化されます。以下のすべてを必ずカバーしてください:
- グループ名 — グループの命名方法を一貫させることで、作成者だけでなく、誰もがその目的を理解しやすくなります。
- グループのスコープ — Universal、Global、Domain Local の各スコープ種別を使う際の基準を定めます。
- グループの種類 — アクセス権を付与するにはセキュリティ グループを使用し、メール配布には配布グループを使用します。
- グループの説明 — Description と Notes フィールドを使用して、グループの目的と想定される存続期間、さらにメンバーシップや権限に関する例外があればそれも詳しく記載します。
- グループの配置 — グループをディレクトリ内のどこに置くかを決めます。会社によっては、すべてのカスタム セキュリティ グループ用の指定 OU と、すべての配布グループ用の別の OU を用意している場合があります。あるいは、それぞれのグループの目的に合う OU に各グループを配置することを選ぶ会社もあります。
- ネストの使用 — ネストが適切に行われ、十分に文書化されていることを確認してください。
Netwrix GroupIDを使うと、これらすべての領域で標準を導入しやすくなります。たとえば、グループを作成する前に説明の入力を必須にしたり、接頭辞と正規表現を使ってグループ命名規則を強制したり、特定のユーザーロールが特定のOUでのみユーザーオブジェクトを作成できるように許可したりできます。
ベストプラクティス #3:グループの所有者を設定する。
所有者がいないグループ(孤立グループ)は、過剰なアクセス権限のよくある原因です。さらに、これらのグループは攻撃者による悪用の格好の対象になり得ます。
そのため、すべてのグループに少なくとも1人の所有者がいることを確認してください。一般的に、マネージャー、部門責任者、プロジェクトリーダーのほうが、ITチームよりも、そのグループのメンバーシップや権限がどうあるべきかを把握している立場にあります。
Netwrix GroupID により、次のことが可能です:
- 孤立したグループ(orphaned groups)を自動的に特定し、所有者を割り当てます。
- 主要の所有者と追加の所有者を設定し、グループが孤立状態になるのを防ぎます。
- スタッフ不在やプロジェクト固有のニーズなどの状況に対応するため、暫定の所有者を割り当てます。
- グループの所有権を一括で移管します。
- グループの所有権に関する詳細レポートを取得します。
ベストプラクティス #4:グループの変更に対する説明責任を確保します。
グループへの変更は、業務プロセスを妨げたり、セキュリティ上のリスクを生じさせたりする可能性があります。すべての変更が必要かつ適切であることを確実にするため、ユーザーがメンバーシップを申請でき、グループ所有者がその申請を承認または却下できるワークフローを導入してください。さらに、グループのメンバーシップおよびグループ権限に対するすべての変更と、それぞれの変更理由も追跡します。
Netwrix GroupID を使うと、承認ワークフローの構築や、グループへの変更の監査を簡単に行えます。さらに、次のこともできます。
- グループのセキュリティレベルを設定する— 感度に基づいてグループを分類します。プライベート グループでは、メンバーシップを管理できるのはグループ所有者のみです。セミプライベート グループはメンバーシップ管理の柔軟性が高く、パブリック グループは誰でも好きなように参加したり脱退したりできます。
- セルフサービスのグループ管理を有効にする —便利なセルフサービス・ポータルを通じて、従業員が公開グループに自分で追加できるように支援します。
ベストプラクティス #5:定期的な監査で説明責任を担保する。
グループ変更に対する説明責任を導入している場合でも、問題を見逃さないために、グループを定期的に監査する必要があります。
Netwrix GroupID を使用すると、次のことができます。
- グループの存在を検証する — グループの所有者に対して、そのグループが引き続き必要であることを定期的に自己申告(証明)するよう求めることで、不要になったグループを削除し、攻撃対象領域を減らせます。
- グループのアテステーションを実施する — グループの所有者に対して、定期的に自分のグループの属性、メンバーシップ、権限を確認するよう求めることができます。所有者は、グループの重要度に基づいてアテステーションの頻度を決定できます。
- 正確性を確保する — HR システムのような信頼できるソースと AD のユーザー アカウントを同期し、正確なグループ メンバーシップを維持するのに役立てられます。
ベストプラクティス #6:グループ管理プロセスを自動化する。
グループ メンバーの追加・削除を手作業で行い、グループ属性を更新し、さらにグループを削除することは、限られた IT スタッフに大きな負担をかけます。加えて、これらのプロセスは人為的なミスが起こりやすいです。PowerShell を利用している場合でも、複雑なスクリプトを作成・保守し、定期的に実行する必要があります。
Netwrix GroupID を使えば、多岐にわたるグループ管理タスクを自動化でき、運用管理の負担と、見落としやミスによって生じるサイバーセキュリティ上のリスクの両方を軽減できます。たとえば、AD の属性、ルール、さらには HR データに基づいて動的グループを簡単に作成できます。
ベストプラクティス #7:不要なグループを削除します。
このベストプラクティスは、言うほど簡単ではありません。そもそも、グループが実際にはもう必要ないと100%確実に判断するのは難しいからです。しかし、有用性を失ったグループはセキュリティ上のリスクになります。
Netwrix GroupID には、不要なグループを確実に特定して削除するのに役立ついくつかの機能があります:
- グループの認証 — グループの所有者に対して、グループを定期的に見直し、まだ必要か、それとも削除すべきかを報告するよう求めることができます。
- グループの有効期限 — グループに有効期限を設定でき、必要に応じて素早い更新(更新オプション)も可能です。猶予期間の後、有効期限が切れたグループは自動的に削除されます。
まとめ
Active Directory のグループを適切に管理することは、セキュリティとビジネス継続の両方にとって不可欠です。セキュリティ グループは重要な IT リソースへのアクセスを付与し、一方で配布グループは電子メール経由での情報の配信を制御します。手作業のプロセスでは、グループ管理は IT チームに大きな負担となり、コストの高いミスが起こりやすくなります。PowerShell が役立つこともありますが、時間と専門知識の両方が必要です。そのため、多くの組織では Netwrix Directory Manager のようなサードパーティのグループ管理ソリューションに投資しています。詳しくは Directory Manager Solution.
Netwrix GroupID
Netwrix GroupIDを使用してITの生産性を向上させ、Active Directoryグループ管理を自動化および委任することでセキュリティを強化します。
無料トライアルをリクエスト共有する