最小限の特権管理を定義する
Contoso では IT セキュリティ専門家の会社が稼働しています。 取締役会向けのレポートが生成されました。 レポートでは、Contoso で最近発生したセキュリティ違反やデータ損失インシデントの原因のほとんどがヒューマン エラー、悪意のあるアクティビティ、またはその両方であることが特定されています。
このレポートには、管理者特権を使用したサインインや、標準ユーザー タスクの実行など、多数の例が示されていました。 一例として、ユーザーが Enterprise Admins 権限でサインインし、悪意のあるコードを実行する電子メールの添付ファイルを開きました。 そのコードを実行したユーザーは完全な管理者権限を持っていたため、Contoso 社全体にわたる完全な管理者権限が取得されました。
概要
最小限の特権とは、アクセス権を特定のタスクや担当業務を実行するために必要な権限のみに制限するという概念です。 この原則は、次のものに適用できます。
- ユーザー アカウント。
- サービス アカウント。
- コンピューティング プロセス。
この原則は簡単に理解できますが、実装が複雑になる可能性があります。 結果的に、多くのケースにおいて最小限の特権が遵守されていません。
この原則では、すべてのユーザーが、現在のタスクを完了するために必要な最小限のアクセス許可を持つユーザー アカウントを使用してサインインする必要があることが示されています。 この原則では、数ある攻撃の中でも、特に悪意のあるコードに対する保護が提供されます。 コンピューターとそれらのコンピューターのユーザーに適用されます。
もちろん、管理者は一般に、日常業務で標準ユーザー アカウントを使用してサインインしたら、ユーザーのパスワードをリセットする必要があっても管理者としてサインインしないという問題があります。 時間も手間もかかります。 この問題を解決するには、一般的なセキュリティ リスクを特定する方法を見つける必要があります。 次に、あまり押し付けがましくない最小限の特権の原則を計画する必要があります。
セキュリティ プリンシパルを特定する
オンプレミス環境では、どのセキュリティ プリンシパル (ユーザーとグループ) が管理グループに属しているかを特定する必要があります。 Active Directory Domain Services (AD DS) には、機密性の高い管理グループがいくつかあります。 次の表で、これらについて説明します。
グループ | 説明 |
---|---|
Enterprise Admins | このユニバーサル セキュリティ グループは、AD DS フォレスト ルート ドメインの Users フォルダーに存在します。 メンバーは、フォレスト内の任意の場所で任意の管理タスクを実行できます。 Enterprise Admins のメンバーシップが必要な管理タスクは、ほとんどありません。 既定では、フォレスト ルート ドメインの管理者ユーザー アカウントのみが Enterprise Admins に属しています。 |
Domain Admins | このグローバル セキュリティ グループは、AD DS フォレスト内のすべてのドメインの Users フォルダーに存在します。 メンバーは、ローカル ドメイン内の任意の場所で任意の管理タスクを実行できます。 既定では、Domain Admins にはローカル ドメインの管理者ユーザー アカウントのみが属しています。 |
Schema Admins | このユニバーサル セキュリティ グループは、フォレスト ルート ドメインの Users フォルダーに存在します。 メンバーは、AD DS スキーマのプロパティを変更できます。 スキーマの変更は頻繁ではありませんが、その影響は大きいです。 既定では、Schema Admins にはフォレスト ルート ドメインの管理者ユーザー アカウントのみが属しています。 |
管理者 | このドメイン ローカル セキュリティ グループは、AD DS 内の Builtin フォルダーに存在します。 Administrators ローカル グループは、AD DS フォレスト内のすべてのコンピューターにも存在します。 管理者は、ドメイン (またはコンピューター) への無制限の完全なアクセス権を持っています。 通常、Enterprise Admins グループと Domain Admins グループは、フォレスト内のすべてのコンピューターで Administrators グループに追加されます。 |
Note
AD DS スキーマは、オブジェクトとそれらのプロパティ (クラスと属性とも呼ばれます) のコレクションです。
セキュリティ特権を持つその他の組み込みグループは、次のとおりです。
- Account Operators。
- Server Operators。
- Key Admins。
- Enterprise Key Admins。
グループ メンバーシップを変更する
どのユーザーとグループが管理グループに属しているかを特定したら、必要な変更を行うことができます。 AD DS 環境内でグループ ポリシー オブジェクト (GPO) を使用すると、このプロセスを迅速に実行できます。 制限されたグループ機能を使用して、GPO による影響を受けるすべてのコンピューターでグループのメンバーシップを制御します。 次の手順に従います。
- グループ ポリシー管理を開き、GPO を作成してドメイン オブジェクトにリンクします。
- GPO を編集するために開きます。
- [コンピューターの構成]、[ポリシー]、[Windows の設定]、[セキュリティ設定]、[制限されたグループ] を見つけます。
- [制限されたグループ] のコンテキスト メニューを右クリックまたはアクティブ化し、[グループの追加] を選択します。
- [グループの追加] ダイアログボックスで、必要なグループを追加します。
- メンバーをグループに追加するか、グループをメンバーとして別のグループに追加します。
- [OK] を選択して処理を完了します。
現在割り当てられている権限を確認する
環境内のセキュリティ プリンシパルを変更したら、既にプリンシパルを持っている権限を確認する必要があります。 ユーザーが Administrators などの機密性の高い管理グループに属している場合は、そのユーザーが任意のタスクを実行し、グループが存在するコンピューターまたはドメインで任意の権限を行使できることは明確です。
注意
権限は、管理タスクを実行するための機能です。 アクセス許可とは、ファイル システム、AD DS、またはその他の場所にあるオブジェクトにアクセスするための機能です。
ただし、権限または特権が割り当てられているその他のグループにユーザーが属している場合があります。 ユーザーに直接権限が割り当てられている場合もあります。
[ローカル セキュリティ ポリシー] コンソールを使用すると、割り当てられている権限を特定できます。 次の手順に従います。
- [スタート] を選択し、[Windows 管理ツール] を選択します。
- [ローカル セキュリティ ポリシー] を選択します。
- [ローカル セキュリティ ポリシー] で、[ローカル ポリシー]、[ユーザー権利の割り当て] の順に展開します。
- 一覧表示される [ポリシー] ごとに [セキュリティ設定] の値を確認し、必要に応じて編集します。
ヒント
ポリシーはユーザーに直接割り当てるのではなく、常にグループに割り当てます。 これは、継続的な管理に役立ちます。 他のユーザーの担当業務が変更された場合は、ユーザー アカウントに割り当てられたユーザー権利の割り当てをすべて再確認するのではなく、グループ メンバーシップを変更する必要しかありません。
ユーザー アカウント制御を実装する
ユーザー アカウント制御 (UAC) は、ユーザーが管理者アカウントの状態を標準ユーザー アカウントの状態に制限する方法を提供するセキュリティ機能です。 ただし、管理機能が必要な (昇格と呼ばれる) タスクを実行すると、その昇格を確認するように求めるプロンプトがユーザーに表示されます。 既定では、昇格を試みると、次のように UAC からユーザーにプロンプトが表示されます。
- ユーザーが管理者である場合は、特権の昇格を確認するプロンプトが表示されます。
- ユーザーが標準ユーザーである場合は、管理資格情報を入力するプロンプトが表示されます。
GPO を使用すると、UAC のプロンプトと動作を制御できます。
- 適切にリンクされた GPO を編集するために開き、[コンピューターの構成]、[ポリシー]、[Windows の設定]、[セキュリティの設定]、[ローカル ポリシー]、[セキュリティ オプション] の順に移動します。
- 管理者アカウントの場合は、[ユーザー アカウント制御: 管理者承認モードでの管理者に対する昇格時のプロンプトの動作] の設定を開き、[このポリシーの設定を定義する] を選択して、必要な設定を選択します。
- 標準ユーザーの場合は、[ユーザー アカウント制御: 管理者承認モードでの管理者に対する昇格時のプロンプトの動作] の設定を開き、[このポリシーの設定を定義する] を選択して、必要な設定を選択します。
Just Enough Administration を実装する
Just Enough Administration (JEA) は、Windows PowerShell リモート セッションを使用してロールベースのアクセス制御 (RBAC) の原則を適用できる管理テクノロジです。 JEA を使用すると、作業要件に直接関連しないタスクを頻繁に実行できる一般的なロールをユーザーに許可する代わりに、特定のタスクを実行するために必要な機能を提供する特別な Windows PowerShell エンドポイントを構成できます。
JEA を使用すると、リモートの Windows PowerShell セッションを使用して特定のタスク セットのみを実行できるように、管理セッションをロック ダウンできます。 JEA では、実行できるタスクが制限されるため、セキュリティが強化されます。 JEA を構成するには、ロール機能ファイルとセッション構成ファイルを作成および変更します。
重要
JEA では Windows PowerShell のリモート処理のみがサポートされています。