Windows Server でユーザー アカウント制御 (UAC) を無効にする方法

この記事では、Windows Server でユーザー アカウント制御 (UAC) を無効にする方法について説明します。

適用対象: Windows Server 2012 R2
元の KB 番号: 2526083

概要

特定の制約付き状況では、Windows Server で UAC を無効にすることが許容され、推奨される方法です。 これらの状況は、次の条件が両方とも当てはまる場合にのみ発生します。

  • 管理者のみが、コンソールで、またはリモート デスクトップ サービスを使用して、対話形式で Windows サーバーにサインインできます。
  • 管理者は、サーバー上で正当なシステム管理機能を実行するためにのみ、Windows ベースのサーバーにサインインします。

これらの条件のいずれかが当てはまらない場合は、UAC を有効にしたままにする必要があります。 たとえば、サーバーはリモート デスクトップ サービスロールを有効にして、管理者以外のユーザーがサーバーにサインインしてアプリケーションを実行できるようにします。 この状況では、UAC を有効にしたままにする必要があります。 同様に、UAC は次の状況でも有効にしておく必要があります。

  • 管理者は、危険なアプリケーションをサーバー上で実行します。 たとえば、Web ブラウザー、メール クライアント、インスタント メッセージング クライアントなどです。
  • 管理者は、Windows 7 などのクライアント オペレーティング システムから実行する必要があるその他の操作を行います。

注:

  • このガイダンスは、Windows Server オペレーティング システムにのみ適用されます。
  • UAC は、Windows Server 2008 R2 以降のバージョンの Server Core エディションでは常に無効になっています。

詳細

UAC は、Windows ユーザーが既定で標準のユーザー権限を使用するように設計されています。 UAC には、この目標を達成するためのいくつかのテクノロジが含まれています。 これらのテクノロジには、次のものがあります。

  • ファイルとレジストリの仮想化: レガシ アプリケーションがファイル システムまたはレジストリの保護された領域に書き込もうとすると、Windows はファイル システムまたはユーザーが変更できるレジストリの一部にアクセスをサイレントかつ透過的にリダイレクトします。 これにより、以前のバージョンの Windows で管理者権限を必要とする多くのアプリケーションが、Windows Server 2008 以降のバージョンの標準ユーザー権限のみで正常に実行できます。

  • 同じデスクトップ昇格: 承認されたユーザーがプログラムを実行して昇格すると、結果のプロセスには対話型デスクトップ ユーザーの権限よりも強力な権限が付与されます。 昇格と UAC のフィルター処理されたトークン機能 (次の箇条書きを参照) を組み合わせることで、管理者は標準のユーザー権限を持つプログラムを実行できます。 また、同じユーザー アカウントで管理者権限を必要とするプログラムのみを昇格できます。 この同じユーザー昇格機能は、管理承認モードとも呼ばれます。 管理者が標準ユーザーのデスクトップで管理タスクを実行できるように、別のユーザー アカウントを使用して、昇格された権限でプログラムを開始することもできます。

  • フィルター処理されたトークン: 管理者またはその他の強力な特権またはグループ メンバーシップを持つユーザーがログオンすると、Windows はユーザー アカウントを表す 2 つのアクセス トークンを作成します。 フィルター処理されていないトークンには、すべてのユーザーのグループ メンバーシップと特権があります。 フィルター処理されたトークンは、標準ユーザー権限と同等のユーザーを表します。 既定では、このフィルター処理されたトークンは、ユーザーのプログラムを実行するために使用されます。 フィルター処理されていないトークンは、昇格されたプログラムにのみ関連付けられます。 アカウントは、次の条件で 保護された管理者 アカウントと呼ばれます。

    • 管理者グループのメンバーです
    • ユーザーがログオンすると、フィルター処理されたトークンを受け取ります
  • ユーザー インターフェイス特権分離 (UIPI): UIPI は、次の方法で、低い特権プログラムが高い特権のプロセスを制御できないようにします。
       合成マウスイベントやキーボード イベントなどのウィンドウ メッセージを、特権の高いプロセスに属するウィンドウに送信する

  • 保護モード インターネット エクスプローラー (PMIE): PMIE は多層防御機能です。 Windows インターネット エクスプローラーは低特権の保護モードで動作し、ファイル システムまたはレジストリのほとんどの領域に書き込むできません。 既定では、ユーザーがインターネットまたは制限付きサイト ゾーン内のサイトを閲覧すると、保護モードが有効になります。 PMIE を使用すると、実行中のインターネット エクスプローラーのインスタンスに感染するマルウェアがユーザーの設定を変更することがより困難になります。 たとえば、ユーザーがログオンするたびに起動するように自身を構成します。 PMIE は、実際には UAC の一部ではありません。 ただし、UIPI などの UAC 機能によって異なります。

  • インストーラーの検出: 管理者権限なしで新しいプロセスを開始しようとしている場合、Windows はヒューリスティックを適用して、新しいプロセスがレガシ インストール プログラムである可能性があるかどうかを判断します。 Windows では、従来のインストール プログラムが管理者権限なしで失敗する可能性が高いと想定しています。 そのため、Windows は対話型ユーザーに昇格を事前に求めます。 ユーザーが管理者資格情報を持っていない場合、ユーザーはプログラムを実行できません。

ユーザー アカウント制御を無効にした場合: 承認モードのポリシー設定管理すべての管理者を実行します。 このセクションで説明するすべての UAC 機能が無効になります。 このポリシー設定は、コンピューターのローカル セキュリティ ポリシー、セキュリティ設定、ローカル ポリシー、セキュリティ オプションを使用して使用できます。 保護されたフォルダーまたはレジストリ キーへの書き込みを想定した標準ユーザー権限を持つレガシ アプリケーションは失敗します。 フィルター処理されたトークンは作成されません。 また、すべてのプログラムは、コンピューターにログオンしているユーザーの完全な権限で実行されます。 すべてのセキュリティ ゾーンで保護モードが無効になっているため、インターネット エクスプローラーが含まれます。

UAC と Same-desktop 昇格に関する一般的な誤解の 1 つは、マルウェアのインストールを防いだり、管理者権限を取得したりすることです。 最初に、マルウェアは管理者権限を必要としないように記述できます。 また、マルウェアは、ユーザーのプロファイル内の領域のみに書き込むよう書き込むことができます。 さらに重要なのは、UAC での同じデスクトップの昇格はセキュリティの境界ではありません。 これは、同じデスクトップ上で実行される特権のないソフトウェアによって乗っ取ることができます。 同じデスクトップの昇格は便利な機能と見なす必要があります。 セキュリティの観点から、保護された管理者は管理者と同等と見なす必要があります。 対照的に、高速ユーザー切り替えを使用して管理者アカウントを使用して別のセッションにサインインするには、管理者アカウントと標準ユーザー セッションの間のセキュリティ境界が必要です。

対話型ログオンの唯一の理由がシステムを管理する Windows ベースのサーバーの場合、昇格プロンプトを少なくするという目標は実現不可能または望ましいものではありません。 システム管理ツールには、管理者権限が正当に必要です。 すべての管理ユーザーのタスクに管理者権限が必要で、各タスクが昇格プロンプトをトリガーできる場合、プロンプトは生産性の妨げにすぎません。 このコンテキストでは、このようなプロンプトは、標準のユーザー権限を必要とするアプリケーションの開発を促進するという目標を促進することはできません。 このようなプロンプトでは、セキュリティ体制は改善されません。 これらのプロンプトは、ユーザーがダイアログ ボックスを読まずにクリックするように促すだけです。

このガイダンスは、適切に管理されたサーバーにのみ適用されます。 これは、管理者ユーザーのみが対話形式で、またはリモート デスクトップ サービスを介してログオンできることを意味します。 また、正当な管理機能のみを実行できます。 サーバーは、次の状況ではクライアント システムと同等と見なす必要があります。

  • 管理者は、Web ブラウザー、電子メール クライアント、インスタント メッセージング クライアントなどの危険なアプリケーションを実行します。
  • 管理者は、クライアント オペレーティング システムから実行する必要があるその他の操作を実行します。

この場合、UAC は多層防御対策として有効にしたままにする必要があります。

また、標準ユーザーがコンソールまたはリモート デスクトップ サービスを介してサーバーにサインインしてアプリケーション (特に Web ブラウザー) を実行する場合は、UAC を有効にしてファイルとレジストリの仮想化をサポートし、保護モードのインターネット エクスプローラーもサポートする必要があります。

UAC を無効にせずに昇格プロンプトを回避するもう 1 つのオプションは、ユーザー アカウント制御: 管理承認モードのセキュリティ ポリシーの管理者に対する昇格プロンプトの動作を、プロンプトなしで Elevate に設定することです。 この設定を使用すると、ユーザーが Administrators グループのメンバーである場合、昇格要求はサイレントで承認されます。 このオプションでは、PMIE やその他の UAC 機能も有効な状態になります。 ただし、管理者権限を必要とするすべての操作が昇格を要求するわけではありません。 この設定を使用すると、ユーザーのプログラムの一部が昇格され、一部が昇格されず、区別できない場合があります。 たとえば、管理者権限を必要とするほとんどのコンソール ユーティリティは、コマンド プロンプトまたは既に昇格されている他のプログラムで起動する必要があります。 このようなユーティリティは、昇格されていないコマンド プロンプトで起動すると失敗するだけです。

UAC を無効にした場合のその他の効果

  • Windows エクスプローラーを使用して、読み取りアクセス許可のないディレクトリを参照しようとすると、エクスプローラーはディレクトリのアクセス許可を変更して、ユーザー アカウントに永続的にアクセス権を付与するように指定します。 結果は、UAC が有効になっているかどうかによって異なります。 詳細については、「Windows エクスプローラーでフォルダー アクセスの [続行] をクリックすると、ユーザー アカウントがフォルダーの ACL に追加される」を参照してください。
  • UAC が無効になっている場合、Windows エクスプローラーは昇格が必要な項目の UAC シールド アイコンを引き続き表示します。 また、Windows エクスプローラーは、アプリケーションとアプリケーション ショートカットのコンテキスト メニューに [管理者として実行] を引き続き含めます。 UAC 昇格メカニズムが無効になっているため、これらのコマンドは無効になります。 また、アプリケーションはサインインしているユーザーと同じセキュリティ コンテキストで実行されます。
  • UAC が有効になっている場合、コンソール ユーティリティ Runas.exe を使用して、トークン フィルター処理の対象となるユーザー アカウントを使用してプログラムを開始すると、プログラムはユーザーのフィルター処理されたトークンで実行されます。 UAC が無効になっている場合、開始されたプログラムはユーザーの完全なトークンで実行されます。
  • UAC が有効になっている場合、トークン フィルター処理の対象となるローカル アカウントは、リモート デスクトップ以外のネットワーク インターフェイスを介したリモート管理には使用できません。 たとえば、NET USE または WinRM を使用します。 このようなインターフェイスを介して認証するローカル アカウントは、アカウントのフィルター処理されたトークンに付与される特権のみを取得します。 UAC が無効になっている場合、この制限は削除されます。 制限は、KB951016で説明されている設定を使用LocalAccountTokenFilterPolicyして削除することもできます。 この制限を削除すると、多くのシステムが同じユーザー名とパスワードを持つ管理ローカル アカウントを持つ環境でシステムが侵害されるリスクが高まる可能性があります。 このリスクに対して他の軽減策が採用されていることを確認することをお勧めします。 推奨される軽減策の詳細については、「 Pass-the-Hash (PtH) 攻撃の軽減」と「その他の資格情報の盗難(バージョン 1 および 2)」を参照してください。
  • PsExec、ユーザー アカウント制御、およびセキュリティ境界
  • Windows エクスプローラーのフォルダー アクセスに [続行] を選択すると、フォルダーの ACL にユーザー アカウントが追加されます (KB 950934)