(58)【調査した分野】(Int.Cl.,DB名)
前記利用場所ごとの前記入出力デバイスの設定を記述したオリジナル構成ファイルを前記情報端末装置が前記オペレーティング・システムをロードする前に前記ネットワーク・サーバに送信するステップを有し、
前記構成ファイルが所定の前記利用場所に適用する前記ネットワーク・サーバのポリシーによって前記オリジナル構成ファイルを修正して作成されている請求項2に記載の方法。
前記修正した変数でイネーブルに設定する前記入出力デバイスの数が前記デフォルトの変数でイネーブルに設定する前記入出力デバイスの数より少ない請求項8に記載の情報端末装置。
【発明を実施するための形態】
【0015】
[情報端末装置のハードウェア]
本実施の形態は、システム・ファームウェアを実装するラップトップ型のパーソナル・コンピュータ(PC)、タブレット型のPC、および電話機能付きPDA(Personal Digital Assistant)のようなモバイル・タイプの情報端末装置に適用することができる。本明細書に添付する図面に記載する同一の要素および対応する要素には同一の参照番号を付与して重複した説明を省略または簡略化することにする。
図1は、本実施の形態にかかる情報端末装置10の概略の構成を示す機能ブロック図である。情報端末装置10は、CPU11、システム・メモリ13、ファームウェアROM21、入出力インターフェース群15、入出力デバイス群17およびコネクタ群19を含んでいる。
【0016】
入出力インターフェース群15は、一例としてインテル(登録商標)社で提供するPCH(Platform Controller Hub)というチップ・セットで構成することができる。入出力デバイス群17は、情報端末装置10の筐体に内蔵されている入出力デバイスの集合である。コネクタ群19は、外部の入出力デバイスを接続したり、ネットワークに接続したりするためのコネクタの集合である。
【0017】
情報端末装置10は、一例においてシステムを構成する基本的なバスの規格としてPCI Express(PCIe)を採用している。入出力インターフェース群15は、PCIeインターフェース15aの他に一例としてUSBインターフェース15b、SPIインターフェース15c、SATA Express(SATAe)インターフェース15d、NVMeインターフェース15e、イーサネット(登録商標)インターフェース15f、メモリ・インターフェース15gおよびビデオ・インターフェース15hを含んでいる。
【0018】
入出力デバイス群17は、一例においてBluetooth(登録商標:以下、BLTHとして示す)コントローラ17a、SSD17b、無線モジュール17c、およびカメラ17dを含んでいる。SSD17bは、ブート・イメージやアプリケーション・プログラムを格納する。無線モジュール17cは、WiFi(登録商標)、およびWWANなどの広域のネットワークに接続する通信規格のモジュールを含んでいる。カメラ17dは、IRカメラおよび可視カメラを含んでいる。
【0019】
さらに入出力デバイス群17は、ユーザ入力デバイス17e、ディスプレイ17f、オーディオ・デバイス17g、および指紋認証装置(FPR)17hを含んでいる。ユーザ入力デバイス17eは、キーボード、タッチパネル、およびマウスなどのいずれかまたは複数を含んでいる。オーディオ・デバイス17gは、スピーカおよびマイクロフォンを含んでいる。コネクタ群19は、USBコネクタ19a〜19c、イーサネット(登録商標)ジャック19d、オーディオ・ジャック19e、およびビデオ・コネクタ19fなどのいずれかまたは複数を含んでいる。ビデオ・コネクタ19fは、HDMI(登録商標)、DP(DisplayPort)、DVI(Digital Visual Interface)およびVGAなどのいずれかの規格または複数の規格で構成してもよい。
【0020】
さらに入出力デバイス群17は、USBハブ17i、17j、GPS17kおよびLANカード17lを含んでいる。本実施の形態の適用において、
図1で示した入出力インターフェース群15、入出力デバイス群17およびコネクタ群19は、本実施の形態を説明するために例示的に示したものであり、情報端末装置10がこれらのすべての要素を含んでいる必要はなく、さらに他の入出力デバイスを含んでいてもよい。また、システム・メモリ13およびディスプレイ17fは、CPU11に接続することでもよい。
【0021】
[PCIeバス・システム]
図2は、入出力インターフェース群15に組み込まれたPCIeバス・システムの構成の一部を説明するための図である。CPU11には、PCIeルート・コンプレックス41が接続されている。PCIeルート・コンプレックス41は3つのポートを備えており、それぞれにメモリ・インターフェース15g、PCIeブリッジ43およびビデオ・インターフェース15hといったPCIインターフェースが接続されている。
【0022】
PCIeブリッジ43には、USBインターフェース15b、SPIインターフェース15c、SATAeインターフェース15d、NVMeインターフェース15e、およびイーサネット(登録商標)インターフェース15fといったPCIeインターフェースが接続されている。PCIeルート・コンプレックス41またはPCIeブリッジ43に接続されるPCIeインターフェースは、それぞれエンド・ポイント(EP)と各デバイスに対するインターフェースとなるファンクションで構成されている。
【0023】
メモリ・インターフェース15g、ビデオ・インターフェース15hおよびSPIインターフェース15cには、それぞれシステム・メモリ13、ディスプレイ17fおよびファームウェアROM21が接続されている。USBインターフェース15b、SATAeインターフェース15d、NVMeインターフェース15eおよびイーサネット(登録商標)インターフェース15fには、USBハブ17i、17j、SSD17b−1、SSD17b−2、およびLANカード17iが接続されている。
【0024】
PCIeインターフェース15b〜15hのポートは、データの経路となる送受信の差動ペアを単位とする有限数のレーンで構成されている。情報端末装置10のシステム・ファームウェアは起動時に、各PCIeインターフェース15b〜15hに利用可能なレーン数を割り当てる。PCIeインターフェース15b〜15hは割り当てられたレーン数が多いほど帯域が広がって高速のデータ転送を実現できる。
【0025】
システム・ファームウェアは、使用することがないPCIeインターフェースを停止すると他の入出力デバイスに割り当てるレーン数を多くすることができる。PCIeインターフェースは、プリブート中にシステム・ファームウェアのセット・アップ画面で設定することができるが面倒で時間もかかる。またレーン数に制限があることからシステムによっては、NVMeインターフェース15eとSATAeインターフェース15dは、排他使用にしていずれか一方しか利用できないようにしている場合もある。この場合、使用しないPCIeインターフェースを停止することでレーン数の低下を防ぎ同時に動作させることも可能になる。
【0026】
[USBデバイス]
図3は、USBインターフェース15bに対するUSBデバイスの接続形態を説明するための図である。USBインターフェース15bは、USBホスト・コントローラ101およびルート・ハブ103を含む。ルート・ハブ103は、一例として2個のポートを備えており、各ポートにUSBハブ17i、17jが接続されている。USBハブ17iは4個のポートを備えており、各ポートにBLTHコントローラ17a、ユーザ入力デバイス17e、オーディオ・デバイス17g、およびFPR17hが接続されている。
【0027】
USBハブ17jも4個のポートを備えており、各ポートにカメラ17d、およびUSBコネクタ19a〜19cが接続されている。USBの規格ではルート・ハブ103に、アドレスのビット数から計算して理論的に最大で127台までのUSBデバイスを接続できることになっているが、伝送速度の低下やバス・パワー・デバイスに対する電力供給能力の点から情報端末装置10では利用できるポート数に制限を設けている。
【0028】
したがって、制限以上のUSBデバイスを実装する場合には、プリブート中にシステム・ファームウェアのセット・アップ画面で動作させるUSBデバイスを設定する必要がある。また、使用しないUSBデバイスをイネーブルに設定することは無駄な消費電力を発生させることにもなる。後に説明するように、USBハブ17iに接続される入出力デバイスは、ネットワーク・サーバ300(
図5、
図7)のセキュリティ・ポリシー405a(
図10)に従うと、特定の場所ではではすべてがディスエーブルに設定される。その場合、USBハブ17jも停止させることができる。
【0029】
[システム・ファームウェアの構成]
コンピュータのファームウェアは、主としてハードウェアと、OS、デバイス・ドライバまたはアプリケーションなどの上位のプログラムとの間のインターフェースを提供するコードである。ファームウェアは、周辺デバイスを専用に制御するデバイス・ファームウェアとシステム全体の動作にかかわるシステム・ファームウェア(プラットフォーム・ファームウェアともいう。)に分けることができる。
図4は、ファームウェアROM21が格納するシステム・ファームウェアの構成を説明するための図である。システム・ファームウェアはBIOSでもよいがここではUEFIファームウェアを例示して説明する。
【0030】
POSTコード201は、情報端末装置10が実装するデバイスの検出、検査および初期化を実行する。入出力マネージャ203は、ネットワーク・サーバ300と協働して、入出力インターフェース群15および入出力デバイス群17(以下、特に言及する場合を除いて両者を含めて入出力デバイス群17という。)の設定に関する処理をする。本実施の形態における入出力デバイス群17の設定は、個々の入出力デバイスに対するイネーブル/ディスエーブルの設定、個々の入出力インターフェースの全体および一部のポートに対するイネーブル/ディスエーブルの設定とする。
【0031】
UEFIドライバ205は、プリブートを実行する際に必要な無線モジュール17c、FPR17hといった入出力デバイス群17のいくつかを制御するコードを含む。プリブートはACPIが規定するS5ステート(パワーオフ)、およびS4ステート(ハイバネーション)のときに、起動操作によりリセットされたCPU11がPOSTの実行を開始してからOSの実行を開始する前までのUEFIファームウェアによるブート・ルーチンをいう。なおCPU11がリセットしてからOSが実行できる状態になるまでのプリブートを含むブート・ルーチンを単にブートということにする。
【0032】
認証コード206はFPR17hやパスワード入力によるユーザ認証、ネットワーク・サーバ300によるユーザ認証およびネットワーク・サーバ300との間で交換するデータの暗号化および復号などを行う。診断コード207は、所定のデバイスや記憶領域のウィルス感染の検査、および対策処理などを行う。セット・アップ・コード208は、プリブートの間に所定のキーが押下されたときにディスプレイ17fにユーザがデバイスを設定するためのセット・アップ画面を表示する。デフォルトの変数209は、GV(Global Variables)およびCV(Configuration Variables)などのUEFIファームウェアがプリブートの際に参照したり書き込んだりする変数を格納する。
【0033】
GVは、起動ディスクの種類や優先順位などに関するブート関連データを含む。CVは、プリブート段階でUEFIファームウェアがデバイスに設定する属性情報およびパラメータの他に、セット・アップ画面を通じてユーザが設定したデバイスの種類、動作モードおよびイネーブル/ディスエーブルなどの設定情報を含む。一例においてデフォルトの変数209は、ほとんどの入出力デバイスをイネーブルに設定する。修正した変数210は、ネットワーク・サーバ300が作成した修正構成ファイル407(
図11)を受け取った入出力マネージャ203がデフォルトの変数209を修正した値である。
【0034】
POSTコード201は、変数209または変数210を参照して入出力デバイス群17を設定する。いずれの変数を利用してプリブートをするかは、
図12、
図13の手順で説明するように入出力マネージャ203が判断する。本明細書では、変数209を利用してプリブートする方法をローカル・ブートといい、変数210を参照してプリブートする方法をリモート・ブートということにする。
【0035】
オリジナル構成ファイル211は、情報端末装置10が搭載する入出力デバイス群17のイネーブル/ディスエーブルを、利用場所ごとに設定するためにユーザが作成したプロファイルに相当する。オリジナル構成ファイル211については
図6を参照して説明する。端末ID213は、情報端末装置10を特定する一意の識別子で、たとえばMACアドレスや工場で付与した識別子を採用することができる。
【0036】
[ネットワーク・ブートの環境]
図5は、ネットワーク・サーバ300がネットワーク・ブートの際に情報端末装置10の入出力デバイス群17を制御するときの様子を説明するための図である。ネットワーク301は、PAN(Personal Area Network)、LAN(Local Area Network)、MAN(Metropolitan Area Network)、WAN(Wide Area Network)、インターネット、およびイントラネットなどのいずれかまたは複数のネットワークを含んでいる。ネットワーク301には、ネットワーク・サーバ300と、WLANルータ303〜307、および3G、LTE、WiMAXなどの移動体通信規格のWWAN基地局309が接続されている。
【0037】
情報端末装置10は、ネットワーク301に接続可能なさまざまな利用場所51〜57に移動してWLANルータ303〜305のいずれかまたはWWAN基地局309に接続する。たとえば、WLANルータ303にはオフィスで接続し、WLANルータ305には自宅で接続し、WLANルータ307には空港で接続する。また、WWAN基地局309には電車内や道路で接続する。
【0038】
[オリジナル構成ファイル]
図6は、ファームウェアROM21が格納するオリジナル構成ファイル211の一例を示す図である。オリジナル構成ファイル211には、情報端末装置10を特定する端末ID(#001)と使用するユーザのユーザIDが関連付けられている。オリジナル構成ファイル211は、情報端末装置10の入出力デバイス群17に関するイネーブル(E)またはディスエーブル(D)の設定情報を記述する。オリジナル構成ファイル211は、実装する入出力デバイス群17に対して、ユーザが情報端末装置10を頻繁に使用する利用場所ごとの設定情報で構成している。
【0039】
オリジナル構成ファイル211は、利用場所の一例として、オフィス、自宅、航空機、電車およびその他を記述している。ユーザはオリジナル構成ファイル211に、自分が最も頻繁に利用する任意の利用場所を記述することができる。
図12、
図13の手順で説明するように、ネットワーク・サーバ300は、オリジナル構成ファイル211にさまざまなポリシーを反映して修正構成ファイル407(
図11)を作成する。
【0040】
本実施の形態では、修正構成ファイル407で修正した変数210でイネーブルに設定される入出力デバイスの数は、デフォルトの変数209でイネーブルに設定される入出力デバイスの数より少ない。ただし、コントロール・サーバ300が、修正構成ファイル407で修正した変数210でイネーブルに設定する入出力デバイスの数を、デフォルトの変数209でイネーブルに設定する入出力デバイスの数より多くなるようなポリシーを有していてもよい。
【0041】
本実施の形態では、ユーザが、利用場所ごとに使用する必要がない入出力デバイスをディスエーブルに設定するようにオリジナル構成ファイル211を作成する。したがって、一旦ネットワーク・サーバ300に送ったオリジナル構成ファイル211が、ネットワーク・サーバ300のポリシーが反映されない修正構成ファイルとしてネットワーク・サーバ300から戻ることがあっても当該修正構成ファイルで修正した変数210でイネーブルに設定される入出力デバイスの数は、デフォルトの変数209でイネーブルに設定される入出力デバイスの数より少なくすることができる。
【0042】
修正構成ファイル407で構成した変数210でリモート・ブートをすると、たとえネットワーク・サーバ300のポリシーが反映されなくても、変数209でローカル・ブートをする場合に比べて、情報端末装置10の消費電力の低減、データ転送の高速化およびポートの有効利用を図ることができる。ユーザは、プリブートの間にセット・アップ・コード208を実行してオリジナル構成ファイル211の作成および更新をすることができる。
【0043】
[ネットワーク・サーバ]
図7は、ネットワーク・サーバ300の概略の構成を示す機能ブロック図である。ネットワーク・コントローラ351はネットワーク301に接続して情報端末装置10と通信する。認証テーブル401は、ユーザを認証するためのデータを格納する。認証部353は、認証テーブル401を参照してユーザを認証したり、情報端末装置10に対してネットワーク・ブートを許可したりする。認証部353は、情報端末装置10との間のデータ転送のために、SSL/TLSなどでセキュアな通信路を構築する。
【0044】
検索テーブル403は、端末IDとユーザのセキュリティ権限に対応する管理者のポリシーを選択するためのデータを格納する。検索部355は、検索テーブル403を参照して端末IDとセキュリティ権限に対応するポリシー番号を探索する。ポリシーは、情報端末装置10の利用場所ごとに動作させる入出力デバイス群17を選択して、オリジナル構成ファイル211を修正する基準となる。ポリシーは消費電力に関する電力ポリシー、プライバシー保護に関するプライバシー・ポリシーおよび機密情報の保護に関するセキュリティ・ポリシーなどを挙げることができる。
【0045】
電力ポリシーでは、ネットワーク環境に応じて無線モジュール17cを設定することができる。たとえばユーザに、屋外ではWiFi(登録商標)だけを利用し、自宅ではイーサネット(登録商標)だけを利用させるために、必要のない無線モジュール17cをディスエーブルにすることができる。プライバシー・ポリシーでは、管理者はプライバシー侵害が発生する可能性のあるイベント会場でのカメラ17dやオーディオ・デバイス17gをディスエーブルにすることができる。本実施の形態では、セキュリティ・ポリシーを例示して説明する。
【0046】
ポリシー・テーブル405は、端末IDとセキュリティ権限の組に対応する複数のセキュリティ・ポリシーを格納する。構成ファイル作成部357は一例においてポリシー・テーブル405から取得したセキュリティ・ポリシー405a(
図10)に基づいて情報端末装置10から受け取ったオリジナル構成ファイル211を修正し修正構成ファイル407を作成する。
【0047】
構成ファイル作成部357は、修正構成ファイル407を情報端末装置10に送る。他の例において、ポリシー・テーブル405に、あらかじめ端末IDとセキュリティ権限の組ごとに修正構成ファイルを作成しておき、構成ファイル作成部357は、適応する修正構成ファイルを情報端末装置10に送るようにしてもよい。診断モード判定部359は、利用場所に応じて情報端末装置10を診断モードで動作させる必要があると判断したときに、情報端末装置10に対して診断モードの実行を指示する。
【0048】
[認証テーブル、検索テーブル、セキュリティ・ポリシー]
図8は、認証テーブル401のデータ構成の一例を示す図である。認証テーブル401は、リモート・ブートを実施する情報端末装置10が、あらかじめネットワーク・サーバ300に登録したユーザIDおよび暗号化したパスワードと、管理者が付与したユーザのセキュリティ権限で構成している。認証部353は、情報端末装置10から受け取ったユーザIDとパスワードが認証テーブル401に登録されたデータと合致するときにユーザを認証する。認証部353は、ユーザのセキュリティ権限を検索部355に提供する。
【0049】
図9は、検索テーブル403のデータ構成の一例を示す図である。検索テーブル403は、端末IDとユーザのセキュリティ権限の組合せに対するセキュリティ・ポリシー(
図10)を特定するためのポリシー番号を関連付けている。したがって、端末IDとセキュリティ権限のいずれか一方が異なる組合せに対して異なるポリシー番号が付与される。一例において検索テーブル403は、一人のユーザが複数の情報端末装置を有する場合、および、1台の情報端末装置を複数のユーザが共有する場合であっても、端末IDとユーザのセキュリティ権限の組合せに対応するポリシー番号を検索することができるようにしている。
【0050】
例示した検索テーブル403は、端末IDが#007の情報端末装置をセキュリティ権限が異なるユーザが共有するためそれぞれの組合せに対して異なるポリシー番号(117、118)を付与している。このとき管理者はセキュリティ権限の低いユーザに対しては、より入出力デバイス群17の動作制限を厳しくするセキュリティ・ポリシーを用意することができる。検索テーブル403は、端末IDが#001でセキュリティ権限が2の組合せに対してポリシー番号111のセキュリティ・ポリシー405a(
図10)を関連付けている。
【0051】
図10は、端末IDが#001でセキュリティ権限が2の場合のセキュリティ・ポリシー405aのデータ構成の一例を示す図である。セキュリティ・ポリシー405aは、入出力デバイス群17に対する所定の利用場所における所定の入出力デバイスに対するディスエーブルの設定情報に相当する。管理者は入出力デバイス群17に対して、一例において、無線通信の傍受による機密情報の漏洩防止、作業空間を通じた機密情報の漏洩防止、およびセキュリティが脆弱な経路からのウィルス感染の防止などにセキュリティ・ポリシーを有している。
【0052】
無線通信の傍受による機密情報の漏洩防止に関するセキュリティ・ポリシーとしては、会社の建物の特定の場所で情報端末装置が実装する無線モジュールをディスエーブルにすることを挙げることができる。作業空間を通じた機密情報の漏洩防止に関するセキュリティ・ポリシーとして、会社の建物の中で盗撮および盗聴を可能にするカメラやマイクロフォンをディスエーブルにすることを挙げることができる。
【0053】
セキュリティが脆弱な経路からのウィルス感染の防止に関するセキュリティ・ポリシーとしては、公衆の場所でUSBコネクタ19a〜19cへの接続を禁止することを挙げることができる。USBコントローラが含むファームウェアは一般的にだれでも書き換えが可能になっているため、不正行為を意図した攻撃者に書き換えられる可能性がある。
【0054】
たとえば、公衆の場所で充電サービスを提供するUSBコントローラのファームウェアが、仮想キーボードをエミュレートするように書き換えられて、不用意に接続した情報端末装置10に機密情報を取り出すための入力を行う可能性がある。ここでは一例としてセキュリティ・ポリシー405aが、利用場所がオフィスの場合に、IRカメラ、可視カメラ、およびマイクロフォンなどの情報の盗撮または盗聴を可能にする入出力デバイスをディスエーブルにする点と、利用場所が一般公衆の場合にUSBコネクタ19a〜19cのようなウィルス感染の経路になり得る入出力デバイスをディスエーブルにする点を示している。
【0055】
構成ファイル作成部357は、セキュリティ・ポリシー405aでオリジナル構成ファイル211を上書きして修正構成ファイル407を作成する。
図11に利用場所がオフィスの場合にセキュリティ・ポリシー405aで修正した修正構成ファイル407の一例を示している。修正構成ファイル407は、オリジナル構成ファイル211のオフィスのフィールドについてIRカメラ、可視カメラ、およびマイクロフォンだけがイネーブルからディスエーブルに修正されており、その他の入出力デバイスについてはオリジナル構成ファイル211の設定が反映されている。
【0056】
[入出力デバイスの設定手順]
図12、
図13は、ネットワーク・サーバ300とUEFIファームウェアが協働してリモート・ブートにより情報端末装置10の入出力デバイス群17を設定する手順を示すフローチャートである。ブロック501で情報端末装置10の電源が起動しCPU11がリセットされる。システム・メモリ13にUEFIファームウェアがロードされてコールド・ブートを開始する。コールド・ブートでは、POSTコード201が原則としてすべてのデバイスの検出、検査および初期化を行う。
【0057】
POSTコード201は起動を開始したときに常に、デフォルトの変数209を参照して入出力デバイス群17の設定を開始する。リモート・ブートが成功すると、入出力デバイス群17の設定にネットワーク・サーバ300のポリシーが反映される場合がある。したがってPOSTコード201は、CPU11、システム・メモリ13およびPCIeバスのような情報端末装置10を動作させるために必要なデバイスに続いて、無線モジュール17c、FPR17h、およびユーザ入力デバイス17eのようなリモート・ブートに必要なデバイスだけを設定することが望ましい。
【0058】
ブロック503で、一例において認証コード206がFPR17hから入力された指紋でユーザ認証をする。ユーザ認証の方法は、パスワード入力でもよいし、虹彩や声紋のような他の生体認証でもよい。ユーザ認証の他の例では、ユーザが身につけたウェアブル端末からBLTHモジュール17aを通じてパスワードを入力するようにしてもよい。この場合、ユーザは情報端末装置10を起動するだけでよく、特別な操作をしないでネットワーク・ブートをすることができる。入出力マネージャ203は、認証コード206から認証が成功したユーザのユーザIDを取得する。
【0059】
ブロック504で、無線モジュール17cがネットワーク301に接続される。入出力マネージャ203はネットワーク・サーバ300による認証を得るためにユーザID、端末IDおよびパスワードをセキュアな通信路でネットワーク・サーバ300に送る。ブロック601で、認証部353は情報端末装置10がプリブートを開始したと認識し、認証テーブル401を参照してユーザを認証する。認証部353は、今回のブートにかかる情報端末装置10の端末IDおよびセキュリティ権限を検索部355に送る。ブロック505で、入出力マネージャ203は情報端末装置10が現在存在している場所を推測させる利用場所情報を取得する。利用場所情報は、オリジナル構成ファイル211に記述しているオフィス、自宅などといった場所を特定する情報に相当する。
【0060】
入出力マネージャ203は、利用場所情報として現在接続しているWLANルータ303〜307のSSIDを利用することができる。ネットワーク・サーバ300がオフィスや自宅などの特定の場所のWLANルータ303〜307のMACアドレスを存在場所に関連付けて管理している場合は、入出力マネージャ203は、ネットワーク・サーバ300から利用場所情報を取得することができる。さらに入出力マネージャ203は、情報端末装置10がWWAN基地局309に接続している場合は屋外に相当する利用場所情報を取得することができる。
【0061】
入出力マネージャ203は、利用場所情報の精度を増すために、上述のようなネットワーク情報に付加情報を加えることができる。付加情報としては、曜日、時間帯などのユーザの生活サイクルに関する情報、情報端末装置10の地理的な位置を示すGPS情報、ユーザが歩行中または電車での移動中であることを示す加速度情報、航空機内であることを示す気圧情報、公衆の場所であることを示す騒音情報およびオフィスや自宅であることを示す充電情報などを利用することができる。
【0062】
ブロック507でオリジナル構成ファイル211が記述するいずれかの利用場所情報の取得が成功した場合はブロック509に移行し、失敗した場合はブロック508に移行する。ブロック508で入出力マネージャ203は、ビープ音やディスプレイ17fへの表示でユーザにプリブートの失敗を知らせることができる。ブロック519でユーザは、同じ場所で再度ブートを実行する場合は、セット・アップ画面を通じてブート方法の設定変更をしてから、デフォルトの変数209でローカル・ブートをすることができる。あるいは入出力マネージャ203は、プリブートが失敗したと判断したときは、デフォルトの変数209でプリブートが完了できるようにブート・ルーチンのパスを変更してからCPU11をリセットしてプリブートを再開することができる。
【0063】
ブロック509で入出力マネージャ203は、ユーザID、利用場所情報(たとえばオフィス)、および端末ID213を含むユーザ情報とオリジナル構成ファイル211をセキュアな通信路でネットワーク・サーバ300に送る。オリジナル構成ファイル211は、ブロック505で取得した利用場所情報に該当するフィールド(この場合オフィス)だけを送るようにしてもよい。ブロック602で検索部355は、検索テーブル403を参照して、受け取った端末IDおよびセキュリティ権限に対応するポリシー番号(たとえば111)を取得して、構成ファイル作成部357にポリシー番号111、ユーザ情報およびオリジナル構成ファイル211を送る。
【0064】
ブロック603で構成ファイル作成部357は、ポリシー・テーブル405のなかからポリシー番号111に対応するセキュリティ・ポリシー405aを取得する。構成ファイル作成部357はオリジナル構成ファイル211をセキュリティ・ポリシー405aの該当する利用場所(この場合オフィス)のフィールドの記述で修正して修正構成ファイル407を作成する。
【0065】
このとき構成ファイル作成部357は、オリジナル構成ファイル211がイネーブルに記述している入出力デバイス群17のなかで、セキュリティ・ポリシー405aがディスエーブルに記述している入出力デバイス群17だけをディスエーブルに記述した修正構成ファイル407を作成する。ブロック605で構成ファイル作成部357は、修正構成ファイル407をセキュアな通信路で情報端末装置10に返送する。
【0066】
ブロック511で入出力マネージャ203は、認証コード206が復号した修正構成ファイル407でプリブートを続行することが可能か否かを判断する。入出力マネージャ203は、復号が失敗したとき、チェックサム・エラーが発生したとき、または、ネットワーク・サーバ300からプリブートができない修正構成ファイルを受け取ったときなどはブロック515に移行してリモート・ブートを停止する。入出力マネージャ203は、ビープ音やディスプレイへの表示でブートできないことをユーザに知らせて、ブロック519に移行することができる。
【0067】
ブロック513で入出力マネージャ203は、修正構成ファイル407で書き換えたデフォルトの変数209を、修正された変数210としてファームウェアROM21に書き込む。ブロック517で入出力マネージャ203は、残りのデバイスに対してPOSTを実行する。残りのデバイスは、CPU11、システム・メモリ13、PCIeコントローラ15aといった情報端末装置10の動作に必須の基本的なデバイス以外のすべてのデバイスとすることができる。あるいは入出力マネージャ203は、ユーザ認証をウェラブル・デバイスでユーザの操作を伴わないで行うような場合は、CPU11をリセットしてプリブートを最初から実行するようにしてもよい。
【0068】
UEFIファームウェアは修正構成ファイル407を反映した変数210でPOSTを実行する。オリジナル構成ファイル211は、すべての利用場所において、ネットワーク・ブートのためだけに必要な入出力デバイス群17をディスエーブルに記述することができる。本実施の形態では、ブロック503で使用するFPR17hは修正構成ファイル407を取得するためだけに必要な入出力デバイスに相当するため、オリジナル構成ファイル211は、すべての利用場所に対してディスエーブルに記述している。
【0069】
図13のブロック521で入出力マネージャ203は、プリブートが完了したことを示す完了メッセージをネットワーク・サーバ300に送信する。ブロック607で診断モード判定部359は、ブロック602で受け取ったユーザ情報に基づいて、情報端末装置10を診断モードで動作させる必要があるか否かを判断する。たとえば、診断モード判定部359は、情報端末装置10が会社の建物のなかでネットワークに接続する場合は、ファームウェアROM21上のデータに対するウィルス・チェックを要求することができる
【0070】
ブロック523で入出力マネージャ203は診断コード207を実行して情報端末装置10を診断モードで動作させる。ブロック525で入出力マネージャ203は、ネットワーク・サーバ300に診断結果を示すメッセージを送る。ブロック607でプリブートの完了メッセージまたは診断モードの実行完了メッセージを受け取った認証部353は、情報端末装置10を認証してブートを許可することを示す許可メッセージを情報端末装置10に送る。
【0071】
認証部353は受け取ったメッセージが診断結果の異常を示しているときは、情報端末装置10に許可メッセージを送らなでもよい。ブロック527で許可メッセージを受け取った入出力マネージャ203はプリブートを終了させて、ブート・ローダを実行する。ブロック529でブート・ローダはSSD17bからOSのロードを開始する。ブロック531で所定のブート・イメージがロードされてブートが完了する。ネットワーク・ブートによる入出力デバイスの設定は、OSの動作環境から切り離されたシステム・ファームウェアの動作環境で実現されるため安全性が高い。
【0072】
上記手順は本実施の形態にかかる一例を示したものであり、すべての手順が必須ではなく本発明に必須の要件は特許請求の範囲に記載の通りである。また当業者は本明細書の記述に基づいて容易に想起できる範囲で手順の順番の変更、付随的な手順の追加などを行うことができる。これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることはいうまでもないことである。
【解決手段】情報端末装置10は、ネットワーク301に接続可能なさまざまな利用場所51〜57に移動してWLANルータ303〜305のいずれかまたはWWAN基地局309に接続する。たとえば、WLANルータ303にはオフィスで接続し、WLANルータ305には自宅で接続する。情報端末装置10は、所定の利用場所で起動するとプロセッサをリセットしてシステム・ファームウェアを実行する。情報端末装置10はオペレーティング・システムをロードする前にネットワーク・サーバ300から入出力デバイスを設定するための構成ファイルを受け取る。構成ファイルには利用場所ごとに所定の入出力デバイスをディスエーブルに設定するネットワーク・サーバ300のポリシーが反映される。情報端末装置10は、構成ファイルに基づいて入出力デバイスを設定する