2020年10月13日にサポートが終了する「Windows Embedded Standard 7」から最新の「Windows 10」世代への移行について解説する本連載。第3回は、組み込み機器でよく使われる“ロックダウン機能”のうち、よく使われる2つの機能を紹介する。
今回は、組み込み機器でよく使われる“ロックダウン機能”について解説していきます。
汎用目的で使われるPCと違い、組み込み機器は決められた特定の目的を持ったいわば専用機器です。専用機器では、(PC以上に)悪意のあるユーザーからシステムの保護や、一貫性のあるユーザーエクスペリエンスの提供、システムの安定性/信頼性の向上が求められます。また、ユーザーにこの機器がWindowsで動作しているということを気付かせたくないかもしれません。これらを実現するのがロックダウン機能です(図1)。
ロックダウン機能は、Windows 10 IoT Enterpriseで使用できる、特定の目的を持った専用機器として動作させるための複数の機能の総称です。Windows Embedded Standard 7ではほぼ同等の機能がEmbedded Enabling Features(EEF)という名称で用意されていましたが、OSアーキテクチャの変更に伴い、幾つかの機能は統廃合されています。
ロックダウン機能を使用する目的はさまざまですが、その1つに、ユーザーができること、できないことの明確化があげられます。図2はこのような目的で使用されることが多いロックダウン機能をまとめたものです。
Write Filterは、Windowsシステムやアプリケーション、ユーザーが行うディスクへの書込みをフィルターする機能です。Write Filterが有効な環境では、本来ディスクへ行われる書き込みはオーバーレイ領域と呼ばれる特別な領域に書き込まれます。ディスクへの書き込みが行われないため、フラッシュストレージの摩耗を抑えられ、設定変更などを行っても再起動すれば元の状態に戻るシステムの構築に役立ちます。
Write Filterは、規定では全ての書込みをオーバーレイ領域にリダイレクトしますが、除外設定を行うことで、ディスクに書き込みするデータをあらかじめ指定できます。これにより“システムへの変更はディスクに書き込ませない”、“アプリケーションの設定変更はディスクに保存する”などの柔軟な運用が可能になります。つまり、Write Filterとは、ディスクへ書き込むデータと書き込まないデータをあらかじめ指定しておく機能とも言えます。
Windows Embedded Standard 7ではWrite Filterは3つの機能で構成されていましたが、Windows 10 IoT Enterpriseでは3つの機能がUnified Write Filter(統合書込みフィルター)という名称で1つの機能に統合されています。
Shell Launcherはユーザーにあらかじめ指定されたアプリケーションのみが動作可能な環境、いわゆるキオスクモードを提供します。通常のWindowsでは、デスクトップ(Explorerシェル)上でアプリケーションが動作しています。Explorerシェルにはタスクバーやスタートメニューなどが含まれているため、この環境ではOS設定の変更や新しいプロセスの起動を容易に行えますが、Shell Launcherを使用することでこれの抑制が可能です。
Shell Launcherでは、指定されたアプリケーションが、Explorerシェルを使用せずに起動します。この時タスクバーやスタートメニューは使用できず、指定されたアプリケーションのみが使用できる環境(カスタムシェル)となります。カスタムシェルはユーザーごとに指定が可能ですので、“ユーザーはカスタムシェルで業務アプリケーションのみを使用”、“管理者はExplorerシェルでWindowsの全ての機能にアクセス可能”といったユーザーアカウントごとに異なる環境を構築することが可能になります。
なお、Shell Launcherでユーザーに割り当てることができるアプリケーションはクラシックWindowsプラットフォームアプリ(CWPアプリ)のみであり、ユニバーサルWindowsプラットフォームアプリ(UWPアプリ)を割り当てたい場合は、Assigned Access機能を使用します。
Keyboard Filterはその名の通り、キーボード入力をフィルターすることで、キーボード入力によるスタートメニュー表示(Winキー)、タスク切り替え(Alt+Tabキー)やプロセスの終了(Alt+F4)といった、“管理者が想定しない”操作が行われることを防止するのに役立ちます。
フィルターは単一キー入力や組み合わせ入力(コンビネーション)ごとに有効/無効が設定できるので、ユーザーに許可するキーボード操作と、許可しないキーボード操作をあらかじめ指定しておくことで、管理者が想定した通りのユーザーエクスペリエンスを提供する事が可能になります。
また、Keyboard Filterでは、キー入力のフィルター以外にKeyboard Breakoutを使用することができます。先に紹介した、Shell LauncherやAssigned Accessを用いたキオスク端末で、メンテナンスなどのために管理者アカウントのサインインが必要になった際、アプリケーションがサインアウトの機能を持っていない場合や、Ctrl+Alt+Delキーの入力をブロックしている場合であっても、あらかじめ設定したキー入力でサインイン画面に移行することが可能になります。
Copyright © ITmedia, Inc. All Rights Reserved.