注
- 元の発行日: 2025 年 9 月 9 日
- KB ID: 5067315
重要
- 2025 年 10 月 28 日以降にリリースされた Windows 更新プログラムには、セキュリティの脆弱性 CVE-2025-50173 に対処しながら、ユーザー アカウント制御 (UAC) プロンプトの要件が改善されました。この改善により、Autodesk AutoCADなど、一部のアプリに対して予期しない UAC プロンプトが表示される問題が解決されました。
- この記事に含まれる解決手順を試す前に、最新の Windows 更新プログラムをインストールし、最新の更新プログラムによって問題が解決されるかどうかを確認してください。
変更ログ
| 日付の変更 | 説明 |
|---|---|
| 3/26/2026 | SecureRepairAllowlistregistry キーに関連する解決手順を更新しました。 |
| 11/24/2025 | 2025 年 10 月 28 日以降にリリースされた Windows 更新プログラムに関する情報を追加しました。この問題は、Autodesk AutoCAD などの一部のアプリで解決されます。 |
現象
2024 年 9 月の Windows セキュリティ更新プログラム以降、Windows インストーラー (MSI) では、アプリケーションの修復時に資格情報のユーザー アカウント制御 (UAC) プロンプトの要求が開始されました。 この要件は、セキュリティの脆弱性 CVE-2025-50173 に対処するために、2025 年 8 月の Windows セキュリティ更新プログラムでさらに適用されました。
2025 年 8 月の更新プログラムに含まれるセキュリティ強化により、管理者以外のユーザーが一部のアプリを実行するときに問題が発生する可能性があります。
MSI 修復を (ユーザー インターフェイスを表示せずに) サイレントモードで開始するアプリは、エラー メッセージで失敗します。 たとえば、2010 Office Professional Plusを管理者以外としてインストールして実行すると、構成プロセス中にエラー 1730 で失敗します。
管理者以外のユーザーは、MSI インストーラーが特定の カスタム アクションを実行すると、予期しないユーザー アカウント制御 (UAC) プロンプトを受け取る可能性があります。 これらのアクションには、アプリケーションの初期インストール中など、フォアグラウンドまたはバックグラウンドでの構成操作や修復操作が含まれる場合があります。 これらのアクションには、次のものが含まれます。
- MSI 修復コマンドの実行 ( msiexec /fu など)。
- ユーザーが初めてアプリにサインインした後に MSI ファイルをインストールする。
- アクティブ セットアップ中に Windows インストーラーを実行する場合。
- ユーザー固有の "アドバタイズ" 構成に依存するMicrosoft Configuration Manager (ConfigMgr) を使用してパッケージを展開する。
- セキュリティで保護されたデスクトップを有効にする場合。
解決策
これらの問題に対処するために、2025 年 9 月の Windows セキュリティ更新プログラム (以降の更新プログラム) では、MSI の修復に対して UAC プロンプトを要求する範囲が縮小され、IT 管理者は特定のアプリに対する UAC プロンプトを許可リストに追加することで無効にすることができます。
2025 年 9 月の更新プログラムをインストールした後、ターゲット MSI ファイルに 管理者特権のカスタム アクションが含まれている場合、MSI 修復操作中にのみ UAC プロンプトが必要になります。 この要件は、2025 年 10 月 28 日以降にリリースされた Windows 更新プログラムをインストールした後にさらに改良されるため、UAC プロンプトは、修復フロー中に管理者特権のカスタム アクションが実行された場合にのみ必要になります。 そのため、最新の Windows 更新プログラムをインストールすると、このような昇格されたカスタム アクションを実行しないアプリのこの問題が解決されます。
MSI 修復フロー中に昇格されたカスタム アクションを実行するアプリには UAC プロンプトが引き続き必要になるため、2025 年 9 月の更新プログラムをインストールした後、IT 管理者は、MSI ファイルを許可リストに追加することで、特定のアプリの UAC プロンプトを無効にできる回避策にアクセスできます。
UAC プロンプトを無効にするアプリを許可リストに追加する方法
警告
このオプトアウト方法により、これらのプログラムに対するこの多層防御セキュリティ機能が効果的に削除されます。
重要
この記事では、レジストリの変更方法について説明しています。 レジストリを変更する前に、必ずバックアップしてください。 問題が発生した場合にレジストリを復元する方法を確認しておいてください。 レジストリをバックアップ、復元、および変更する方法の詳細については、「Windows でレジストリをバックアップおよび復元する方法」を参照してください。
開始する前に、許可リストに追加する MSI ファイルの製品コードを取得する必要があります。 これを行うには、Windows SDKで使用できる ORCA ツールを使用します。
- Windows インストーラー開発者向けのWindows SDK コンポーネントをダウンロードしてインストールします。
- C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x86 に移動し、Orca-x86_en-us.msiを実行します。 これにより、ORCA ツール (Orca.exe) がインストールされます。
- Orca.exeを実行します。
- ORCA ツールで、[ ファイル] > [開く ] を使用して、許可リストに追加する MSI ファイルを参照します。
- MSI テーブルが開いたら、左側の一覧で [プロパティ ] をクリックし、 ProductCode の値をメモします。
- ProductCode をコピーします。 後で必要になります。
製品コードを取得したら、次の手順に従って、その製品の UAC プロンプトを無効にします。
[ 検索 ] ボックスに「 regedit」と入力し、検索結果で [レジストリ エディター ] を選択します。
レジストリで次のサブキーを見つけて選択します。
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer[編集] メニューの [新規] をポイントし、[DWORD 値] を選びます。
DWORD の名前に「 SecureRepairPolicy 」と入力し、Enter キーを押します。
[SecureRepairPolicy] を右クリックし、[変更] を選択します。
[ 値データ ] ボックスに「2」と入力し、[ OK] を選択します。
レジストリで次のサブキーを見つけて選択します。
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer[編集] メニューの [新規] をポイントし、[キー] をクリックします。
キーの名前に次のいずれかを入力し、Enter キーを押します。
- Windows 11バージョン 25H2 または Windows 11バージョン 24H2 の場合: 2026 年 3 月 26 日以降にリリースされた Windows 更新プログラム (OS ビルド 26200.8116 および 26100.8116 以降) をインストールしている場合は、「」と入力します。SecureRepairAllowlist.
- その他のすべてのバージョンの Windows の場合: 型 SecureRepairWhitelist.
警告
Windows 11、バージョン 24H2 または 25H2 (OS ビルド 26200.8116 および 26100.8116 以降)、HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer\SecureRepairWhitelist が既に存在する場合は、SecureRepairAllowlistSecureRepairWhitelistregistry キーを同時に使用しないでください。 SecureRepairWhitelistregistry キーが既に存在する場合は、次の手順を実行することをお勧めします。
- 上記のように、 SecureRepairAllowlistregistry キーを作成します。
- SecureRepairWhitelist に含まれる任意の文字列値をコピーし次に説明するように SecureRepairAllowlistregistry キーに追加します。
- 次に、 SecureRepairWhitelistregistry キーを削除します。
SecureRepairAllowlist (または SecureRepairWhitelist) キーをダブルクリックして開きます。
[編集] メニューの [新規]をポイントし、[文字列値] をクリックします。 許可リストに追加する MSI ファイルの前にメモした ProductCode (中かっこ {}を含む) を含む文字列値を作成します。 文字列値の名前は ProductCode で、VALUE は空白のままにできます。