ビルド番号15042以降、管理者権限を持つユーザーは、システム上でのWin32アプリケーションの実行をブロックできるようになります。これは、Vitor Mikaelson氏が発見したものです。このオプションは、AppleのmacOSに類似した機能と同様に、ユーザーがシステム上で実行できるアプリケーションの種類を選択できる新しいセキュリティ機能の一部となります。
Win32 アプリと UWP の移植性
Win32アプリ、あるいはWindows 8以前の呼び方では「プログラム」と呼ばれていたものは、Windowsを豊かなアプリケーションエコシステムを備えたオペレーティングシステムにしている要素です。しかし、Win32プログラムの問題は、「ユニバーサルWindowsプラットフォーム」(UWP)アプリとして記述されていないため、移植性が大幅に低いことです。
マイクロソフトにとって、移植性はUWPアプリをXboxやWindows 10 Mobileなど他のプラットフォームでも動作させたいと考えているだけでなく、 Windowsの世界でARMが復活することを望んでいるという理由からも重要です。マイクロソフトはx86アプリケーションをARMチップ上で動作させる方法を既に解明しているようですが、それでもエミュレーションが必要になるため、ARMデバイス上で動作するUWPアプリが増えれば増えるほど、メリットは大きくなります。
Microsoftはまた、Win32アプリをUWPアプリとしてパッケージ化することを目指すProject Centennialも進めています。開発者が古いプログラムをUWPアプリとしてパッケージ化することに同意する限り、Win32からUWPへの移行ははるかに容易になる可能性があります。
セキュリティのためにWin32アプリをブロックする
UWPアプリがWin32プログラムよりも優れているもう一つの大きな理由は、オペレーティングシステムにインストールされた後の操作がはるかに制限されていることです。そのため、UWPアプリはほとんどのWin32プログラムよりも安全です。例えば、UWPアプリは通常、アプリのインストール先にあるファイルシステム、アプリケーションデータフォルダ、および一時ファイルフォルダのみを読み取ることができます。これは、通常ファイルシステム全体にアクセスできるWin32アプリとは異なります。
上記の画像は Windows 10 15042 ビルドから取得したスクリーンショットですが、ユーザーには次の 3 つのオプションが提供されることがわかります。
- どこからでもアプリを許可する
- ストアからのアプリを優先するが、どこからでもアプリを許可する
- ストアからのアプリのみを許可する
最初の選択肢は現状維持のようです。2つ目の選択肢は、ユーザーがWin32アプリをインストールする際に、セキュリティリスクに関する警告が表示されるようにするでしょう。3つ目の選択肢は最も安全ですが、Windowsストアからのアプリのみをインストールできるようにするため、最も制限が厳しくなります。
この機能は、macOSが数年前にMac App Storeを立ち上げた際に実装された機能に似ているようです。しかし、macOSの2番目のオプションは、システムがストアアプリと開発者が署名したアプリのみを使用するように制限するため、多少異なります。
UWPの懸念
すべてのWindowsユーザーにUWPアプリのみを利用してもらうというMicrosoftの最終目標は、一部のゲーム開発者の不満を招いています。彼らは、Microsoftがプラットフォームから自分たちを締め出すと考えているからです。UWPアプリの利用者が増えるほど、あるいはMicrosoftが最終的に「ストア専用アプリ」の設定をほとんどのユーザーのデフォルトにすれば、これらの懸念はますます大きくなるでしょう。そのため、Microsoftはいずれこれらの懸念に対処しなければなりません。