ユーザー アカウント制御 (UAC) の意外な役割

Last Update: feedback 共有

こんにちは。Windows プラットフォーム サポートの村井です。

昨今、ユーザー アカウント制御 (UAC) を無効に設定されている環境において、意図しない問題が発生するとのお問い合わせを頂戴することがあります 。
本ブログ記事では UAC の概要、動作の例、および UAC が無効に設定されている際に発生する問題について、事例を交えご紹介をいたします。

ユーザー アカウント制御 (UAC) について

アプリケーションのインストールや設定変更を行う場面で、 “このアプリがデバイスに変更を加えることを許可しますか ?” のポップアップ画面が出力された経験をされた方は多いかと存じます。

このダイアログは UAC により表示される仕組みとなっており、このようなセキュリティで保護されたウィンドウを表示し、ユーザーとのインタラクションを介して管理者権限の実行を行うよう、制限を加えることで、Windows OS では管理者権限を保護しています。

UAC の動作について

以下に UAC がどのように動作し Windows OS のセキュリティやアプリケーションの互換性に役立つかをご紹介いたします。

例 1. プロセスの権限レベルとセキュリティ

管理者ユーザーとして実行が必要なアプリケーションだけが、管理者権限への昇格を行う動作となります。この動作により、各アプリケーションが、不要な高い特権を持つことを防ぐことが可能です。
また更に UAC と関連する形でユーザー インターフェイス特権の分離 (User Interface Privilege Isolation: UIPI) が動作しており、権限の低いプログラムが、自身より高い権限を持つプロセスを制御することを防ぐ動作があり、これにより、高い権限を持つプロセスを保護しています。

例 2. ファイル、レジストリ仮想化機能 (VirtualStore) と互換性

VirtualStore はフォルダーやファイル、レジストリの操作を仮想化することで、重要なリソースを変更から保護しながらアプリケーションの互換性を維持する機能です。

Windows Vista 以降では、一部の重要なフォルダー、ファイル、レジストリの操作を行うことができないよう、実装変更されており、従来はアクセス可能であったリソースへのアクセスが、アクセス拒否となる可能性があります。特に Windows Vista よりも以前に開発されたアプリケーションでは、このような重要なリソースが変更可能であることを前提に開発されている場合があり、そのようなアプリケーションにおいて問題が生じる可能性があります。
しかしながら UAC が有効な場合には、それらのリソースへのアクセスは VirtualStore が仮想的に受け入れる動作となり、できる限り従来のアプリケーションをそのままご使用いただける動作となっています。

UAC 無効化時の問題について

先述のとおり UAC は Windows OS の重要なセキュリティ保護のためのコア コンポーネントとして動作しており、UAC を無効にされた場合、意図しない問題が発生する場合があります。
弊社サポート部門で確認している報告例を案内させていただきますので、参考情報としてご確認ください。

例 1. かな入力を使用できない

UAC が無効の状態で “かな入力” をご利用いただいた場合に、意図しない動作となることを確認しております。 Windows 10 バージョン 2004 以降に導入されている新しいバージョンの Microsoft IME において、UAC が無効の状態で “かな入力” に設定すると、2 文字目の入力時に “かな入力” が自動的にオフとなり、既定の “ローマ字入力” に変更されることを確認しております。

例 2. オンスクリーン キーボードを使用できない

UAC が無効の状態で非管理者ユーザーでログオンすると、オンスクリーン キーボード (osk.exe) の起動に失敗する事例が報告されております。

例 3. UWP アプリケーションが起動しない

ユニバーサル Windows プラットフォーム (UWP) アプリケーションの起動は UAC が有効である状態を前提に設計されているため、UAC を無効にされている状態で起動しない事例が報告されています。

まとめ

本ブログ記事では UAC についてのご紹介ならびに UAC を無効に設定することで発生する意図しない問題についてご紹介し、UAC を “有効” でご使用いただくことを推奨していることをお伝えいたしました。
UAC を無効とすることで意図しない動作が生じたり、様々なエラーの原因となる可能性がありますため、可能な限り UAC を既定の状態で運用いただくことを強くお勧めいたします。

参考情報

本記事は、マイクロソフト社員によって公開されております。