説明

情報処理装置、情報処理方法及びプログラム

【課題】情報処理装置の電源オフ時における記憶装置の不正使用を簡易な構成で検出することが可能な情報処理装置、情報処理方法及びプログラムを提供する。
【解決手段】自己診断機能を有する記憶装置を備えた情報処理装置において、自己の装置のシャットダウン時に、前記自己診断機能によって提供される前記記憶装置の稼働履歴を記録した稼働履歴情報を含む診断情報を前記記憶装置から取得する第1取得手段と、前記第1取得手段が取得した診断情報を照合用情報として保持する保持手段と、自己の装置の起動時に、前記自己診断機能によって提供される前記診断情報を前記記憶装置から取得する第2取得手段と、前記保持手段が保持する前記照合用情報と前記第2取得手段が取得した前記診断情報とに含まれた前記稼働履歴情報を比較し、当該稼働履歴情報の差に基づいて、自己の装置の電源オフ時に前記記憶装置が使用されたか否かを判定する判定手段と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【0002】
従来より、複数台の記憶装置を用いることで、データのアクセス速度の向上や、データの冗長性を向上させることが行われている。例えば、HDD(Hard Disk Drive)と、このHDDよりも高速アクセス可能なSSD(Solid State Drive)とからなる二台構成の記憶装置を用いることで、HDDから読み出したデータをSSDにキャッシュとして格納する構成の情報処理装置が存在している。係る情報処理装置では、HDDに記憶されたデータのうち、アクセスされる頻度の高いデータをSSDに格納し、このデータの利用時にSSDから読み出すことで、該データの読み出し速度の高速化を図ることが可能となっている。
【0003】
また、二台の記憶装置を用いてRAID1(ミラーリング)のディスクアレイを構成することで、データの冗長化を図る技術が知られている。例えば、特許文献1には、固定的にデータバックアップ用の記憶装置を搭載することなく、着脱可能な記憶装置を用いてミラーリングを実行する技術が開示されている。この構成を採用した情報処理装置では、データの書き込み時に、同一内容のデータを両方の記憶装置に同時に書き込み、一方の記憶装置のデータが破損した際に、他方の記憶装置から読み出すことで、障害耐性を高めることが可能となっている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2002−24071号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、上記構成の情報処理装置では、二台の記憶装置に記憶されたデータの整合性(同一性)を保つため、当該情報処理装置の稼働時に、両記憶装置に記憶されたデータが同期するよう制御されている。しかしながら、情報処理装置の電源がオフの間は、記憶装置の状態を監視することはできないため、情報処理装置の電源オフ時に記憶装置が不正に使用される可能性がある。
【0006】
例えば、情報処理装置の電源がオフの間に一方の記憶装置が取り外され、他の機器によりデータの読み出しや改竄等の不正使用が行われた後、再び元の情報処理装置に接続されたような場合、この情報処理装置は、電源オフの間に一方の記憶装置が不正に使用されたことを検出することができない。なお、ハッシュ関数等を用いてデータの改竄検出を行う技術が知られているが、ハッシュ値算出のため多くのリソースを要するため、より簡易な構成で電源オフ時の不正使用を検出可能な技術が望まれている。
【0007】
本発明は上記に鑑みてなされたものであって、情報処理装置の電源オフ時における記憶装置の不正使用を簡易な構成で検出することが可能な情報処理装置、情報処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上述した課題を解決し、目的を達成するために、本発明は、自己診断機能を有する記憶装置を備えた情報処理装置において、自己の装置のシャットダウン時に、前記自己診断機能によって提供される前記記憶装置の稼働履歴を記録した稼働履歴情報を含む診断情報を前記記憶装置から取得する第1取得手段と、前記第1取得手段が取得した診断情報を照合用情報として保持する保持手段と、自己の装置の起動時に、前記自己診断機能によって提供される前記診断情報を前記記憶装置から取得する第2取得手段と、前記保持手段が保持する前記照合用情報と前記第2取得手段が取得した前記診断情報とに含まれた前記稼働履歴情報を比較し、当該稼働履歴情報の差に基づいて、自己の装置の電源オフ時に前記記憶装置が使用されたか否かを判定する判定手段と、を備える。
【0009】
また、本発明は、自己診断機能を有する記憶装置を備えた情報処理装置で実行される情報処理方法であって、第1取得手段が、自己の装置のシャットダウン時に、前記自己診断機能によって提供される前記記憶装置の稼働履歴を記録した稼働履歴情報を含む診断情報を前記記憶装置から取得する第1取得工程と、保持手段が、前記第1取得工程で取得された前記診断情報を照合用情報として保持する保持工程と、第2取得手段が、自己の装置の起動時に、前記自己診断機能によって提供される前記診断情報を前記記憶装置から取得する第2取得工程と、判定手段が、前記保持工程で保持された前記照合用情報と、前記第2取得工程で取得された前記診断情報とに含まれた前記稼働履歴情報を比較し、当該稼働履歴情報の差に基づいて、自己の装置の電源オフ時に前記記憶装置が使用されたか否かを判定する判定工程と、を含む。
【0010】
また、本発明は、自己診断機能を有する記憶装置を備えた情報処理装置のコンピュータを、自己の装置のシャットダウン時に、前記自己診断機能によって提供される前記記憶装置の稼働履歴を記録した稼働履歴情報を含む診断情報を前記記憶装置から取得する第1取得手段と、前記第1取得手段が取得した診断情報を照合用情報として保持する保持手段と、自己の装置の起動時に、前記自己診断機能によって提供される前記診断情報を前記記憶装置から取得する第2取得手段と、前記保持手段が保持する前記照合用情報と前記第2取得手段が取得した前記診断情報とに含まれた前記稼働履歴情報を比較し、当該稼働履歴情報の差に基づいて、自己の装置の電源オフ時に前記記憶装置が使用されたか否かを判定する判定手段と、して機能させる。
【発明の効果】
【0011】
本発明によれば、情報処理装置の電源オフ時における記憶装置の不正使用を簡易な構成で検出することができる。
【図面の簡単な説明】
【0012】
【図1】図1は、本発明の第1の実施形態に係る情報処理装置の構成の一例を示すブロック図である。
【図2】図2は、図1に示した記憶制御部の機能構成の一例を示すブロック図である。
【図3】図3は、図2に示したSMARTデータベースの一例を模式的に示す図である。
【図4】図4は、図2に示した判定ロジックデータベースの一例を模式的に示す図である。
【図5】図5は、第1の実施形態に係る不正使用検出処理の手順を示すフローチャートである。
【図6】図6は、本発明の第2の実施形態に係る情報処理装置の構成の一例を示すブロック図である。
【図7】図7は、図6に示した記憶制御部の機能構成の一例を示すブロック図である。
【図8】図8は、第2の実施形態に係る不正使用検出処理の手順を示すフローチャートである。
【発明を実施するための形態】
【0013】
以下、添付図面を参照して、本発明にかかる情報処理装置、情報処理方法及びプログラムの最良な実施形態を詳細に説明する。なお、本発明は以下の実施形態に限定されないものとする。
【0014】
[第1の実施形態]
図1は、本発明の第1の実施形態に係る情報処理装置10の構成の一例を示すブロック図である。同図に示すように、情報処理装置10は、CPU(Central Processing Unit)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、表示部14と、入力部15と、記憶制御部16と、通信部17とを備えている。
【0015】
CPU11は、RAM13を作業領域として、ROM12等に記憶された各種制御プログラムとの協働により各種処理を実行し、情報処理装置10を構成する各部の動作を統括的に制御する。
【0016】
ROM12は、情報処理装置の制御にかかるプログラムや各種設定情報等を書き換え不可能に記憶する。RAM13は、揮発性の記憶媒体であって、CPU11の作業エリアとして機能する。
【0017】
表示部14は、LCD(Liquid Crystal Display)等の表示ユニットを有し、CPU11の制御に従い、処理経過や結果等を表示する。
【0018】
入力部15は、キーボードやマウス等の入力デバイスを有し、この入力デバイスを介して入力されたユーザからの命令や情報をCPU11に通知する。
【0019】
記憶制御部16は、第1記憶装置21及び第2記憶装置22の動作を制御し、CPU11から入力されるデータの書き込みや、データの読み出し等の要求に応じた処理を第1記憶装置21及び第2記憶装置22に実行する。ここで、第1記憶装置21及び第2記憶装置22は、磁気ディスク、半導体メモリ、光学ディスク等の記録媒体を有した記憶装置である。なお、本実施形態では、第1記憶装置21をHDDとし、第2記憶装置22をSDDとして説明する。
【0020】
通信部17は、有線又は無線の通信インタフェースであって、図示しない外部装置との間で通信を確立し、データの送受信を実行する。
【0021】
図2は、図1に示した記憶制御部16の機能構成の一例を示すブロック図である。同図に示すように、記憶制御部16は、ディスクコントローラ161と、ディスクキャッシュドライバ162と、情報保持部163と、ディスクドライバ164と、ボリュームマネージャ165と、ファイルシステム166とを備え、ディスクコントローラ161に第1記憶装置21及び第2記憶装置22が接続されている。
【0022】
第1記憶装置21は、SMART(Self−Monitoring, Analysis and Reporting Technology;S.M.A.R.T.)機能を有し、この機能により第1記憶装置21の稼働履歴を記録した稼働履歴情報を含む第1SMART情報211を提供する。ここで、SMART機能とは、記憶装置の障害の早期発見や、故障の予測を目的として記憶装置に予め搭載された自己診断機能であって、多くの記憶装置で採用されている公知技術である。第1記憶装置21では、このSMART機能により、各種の診断項目をリアルタイムに自己診断し、その状態を数値化した第1SMART情報211を第1記憶装置21に内蔵されたフラッシュロム等の記憶媒体(図示せず)に保持する。
【0023】
例えば、第1記憶装置21がHDDの場合、SMART機能により、工場出荷状態からの通電時間の合計を示す稼動時間(Power-On Hours)、電源がオン/オフされた回数を示すオン/オフ回数(Device Power Cycle Count)等の診断項目が診断され、各診断項目に対応する情報(数値)が、HDDの稼動履歴を表す稼動履歴情報として第1SMART情報211に記録される。
【0024】
また、第2記憶装置22は、第1記憶装置21と同様にSMART機能を有し、この機能により第2記憶装置22の稼働履歴を記録した稼働履歴情報を含む第2SMART情報221を提供する。なお、第2SMART情報221は、第2記憶装置22が内蔵するフラッシュロム等の記憶媒体(図示せず)に保持される。
【0025】
例えば、第2記憶装置22がSSDの場合、SMART機能により、工場出荷状態からの通電時間の合計を示す稼動時間(Power-On Hours)、電源がオン/オフされた回数を示すオン/オフ回数(Device Power Cycle Count)、SSDの書き換え回数を示す書換回数(Average Erase Count、Max Erase Count)等の診断項目が診断され、各診断項目に対応する情報(数値)が、SSDの稼動履歴を表す稼動履歴情報として第2SMART情報221に記録される。
【0026】
なお、SMART機能が診断する診断項目、即ち第1SMART情報及び第2SMART情報として提供される情報は、上記の例に限らず、他の情報(例えば、不良セクタ数やセクタの代替処理が発生した回数等)を含んでいてもよい。また、記憶装置を製造するベンダ毎に独自の診断項目が設定されている形態としてもよい。
【0027】
ディスクコントローラ161は、ディスクキャッシュドライバ162から入力されるコマンドに応じて、第1記憶装置21又は第2記憶装置22に対するデータの読み出しや書き込み等を実行する。
【0028】
ディスクキャッシュドライバ162は、ディスクドライバ164から通知される読み出しや書き込み等のコマンドを、ディスクコントローラ161に出力する。また、ディスクキャッシュドライバ162は、第1記憶装置21に記憶されたデータのうち、アクセスされる頻度の高いデータを第2記憶装置22にキャッシュとして記憶させ、このデータの読み出しがディスクドライバ164から要求された際に、当該データを第2記憶装置22から読み出すようディスクコントローラ161を制御する。
【0029】
ディスクキャッシュドライバ162は、情報処理装置10のシャットダウン時に、第2記憶装置22のSMART機能によって提供される第2SMART情報221を取得し、照合用の第2SMART情報(以下、照合用情報という)1631として情報保持部163に記憶する。また、ディスクキャッシュドライバ162は、情報処理装置10の起動時に、第2記憶装置22のSMART機能によって提供される第2SMART情報221を取得し、情報保持部163に記憶された照合用情報1631と比較することで、情報処理装置10が電源オフの間に、他の送致により第2記憶装置22が使用されたか否かを判定する。以下、この判定を「使用判定」という。
【0030】
具体的に、ディスクキャッシュドライバ162は、使用判定の実行に先がけて、情報保持部163のSMARTデータベース1632及び判定ロジックデータベース1633に格納された設定情報に基づいて、第2記憶装置22から提供される第2SMART情報221の中から、使用判定に用いる診断項目(以下、判定項目という)と、この使用判定に用いる判定ロジックとを決定する。
【0031】
図3は、図2に示したSMARTデータベース1632の一例を模式的に示す図である。同図に示すように、SMARTデータベース1632には、記憶装置の種別を特定するための種別情報として、「ベンダ名」、「モデル名」及び「ファームウェア(FW)」等が関連付けて格納されている。また、種別情報毎に、対応する種別の記憶装置が具備するSMART機能により提供されるSMART情報のうち、使用判定に用いる判定項目を指示した「SMARTサポートフラグ」と、この判定項目に応じた判定ロジックの「判定ロジック番号」とが関連付けて格納されている。例えば、「SMARTサポートフラグ」には、SMART情報を構成する診断項目のうち、上述した「稼動時間」、「オン/オフ回数」、「書換回数」等の診断項目を指示する情報が16進表記で設定される。
【0032】
ディスクキャッシュドライバ162は、SMARTデータベース1632を参照し、第2記憶装置22の種別(ベンダ名、モデル名、FW)に対応した判定項目と、判定ロジック番号とを決定する。そして、ディスクキャッシュドライバ162は、判定ロジック番号に対応する判定ロジックを、情報保持部163の判定ロジックデータベース1633から読み出し、この判定ロジックを判定項目について実行することで、第2SMART情報221と照合用情報1631とに含まれた判定項目に対応する情報(稼動履歴情報)を比較する。
【0033】
図4は、図2に示した判定ロジックデータベース1633の一例を模式的に示す図である。同図に示すように、判定ロジックデータベース1633には、「判定ロジック番号」と、この判定ロジック番号に対応する「判定ロジック」とが関連付けて格納されている。ここで、判定ロジックとは、情報処理装置のシャットダウン時に取得されたSMART情報(照合用情報1631)と、情報処理装置の起動時に取得されたSMART情報(第2SMART情報221)との、両SMART情報に含まれた判定項目に対応する情報の比較方法、及び、この比較結果から導き出される状態の判定方法を定めた、ディスクキャッシュドライバ162に使用判定に係る処理を実行させるためのプログラムである。
【0034】
例えば、判定項目が「稼動時間」の場合の判定ロジックは、以下の手順で表すことができる。まず、第2SMART情報221と照合用情報1631とに含まれた「稼動時間」に対応する情報を比較し、その差分を算出する。そして、この差分の値が所定の閾値以下の場合に、情報処理装置10の電源オフ時に第2記憶装置22は使用されていないと判定する。一方、差分の値が閾値を上回った場合に、情報処理装置10の電源オフ時に第2記憶装置22が他の装置で使用されたと判定する。この場合、判定の基準となる閾値は、情報処理装置10のシャットダウン処理から電源オフ状態まで要する時間と、電源オフ状態から起動処理が完了ずるまでに要する時間と、に基づいて定めることが好ましい。
【0035】
また、判定項目が「稼動時間」の場合の他の判定ロジックとして、以下の手順を採用する形態としてもよい。なお、本判定ロジックの場合、情報処理装置10のシャットダウン時に、第2記憶装置22と同様に、第1記憶装置21の第1SMART情報211を照合用情報として情報保持部163に保持するものとする。
【0036】
まず、第2SMART情報221と、当該第2SMART情報221についての照合用情報1631とに含まれた「稼動時間」に対応する情報を比較し、その差分を算出する。次に、第1SMART情報211と、当該第1SMART情報211についての照合用情報1631とに含まれた「稼動時間」に対応する情報を比較し、その差分を算出する。そして、第1SMART情報211と第2SMART情報221とについて算出した両時間を比較し、両時間の差が所定の閾値以下の場合に、情報処理装置10の電源オフ時に第2記憶装置22は使用されていないと判定する。一方、差分の値が閾値を上回った場合に、情報処理装置10の電源オフ時に第2記憶装置22が他の装置で使用されたと判定する。
【0037】
また、判定項目が「オン/オフ回数」の場合の判定ロジックは、以下の手順で表すことができる。まず、第2SMART情報221と照合用情報1631とに含まれた「オン/オフ回数」に対応する情報を比較する。そして、この判定の結果、第2SMART情報221に含まれた情報が、照合用情報1631に含まれた情報より1だけ多い場合、情報処理装置10の電源オフ時に第2記憶装置22は使用されていないと判定する。一方、第2SMART情報221に含まれた情報が、照合用情報1631に含まれた情報より2以上多い場合、情報処理装置10の電源オフ時に第2記憶装置22が他の装置で使用されたと判定する。
【0038】
また、判定項目が「書換回数」の場合の判定ロジックは、以下の手順で表すことができる。まず、第2SMART情報221と照合用情報1631とに含まれた「書換回数」に対応する情報を比較する。そして、この判定の結果、両情報が一致又は両情報の差が所定の閾値以内の場合に、情報処理装置10の電源オフ時に第2記憶装置22は使用されていないと判定する。一方、両情報の差が所定の閾値を超えた場合に、情報処理装置10の電源オフ時に第2記憶装置22が他の装置で使用されたと判定する。
【0039】
なお、判定項目が複数存在する場合には、各判定項目に対応する判定ロジックを組み合わせて使用する形態としてもよい。
【0040】
ディスクキャッシュドライバ162は、上記した判定ロジック(使用判定)を実行し、情報処理装置10の電源オフ時に第2記憶装置22が他の装置で使用されたと判定すると、第2記憶装置22に記憶された全てのデータを消去するコマンドをディスクコントローラ161に出力することで、第2記憶装置22をクリアする。
【0041】
情報保持部163は、フラッシュメモリやEEPROM等の書き込み可能な不揮発性メモリであって、上述した照合用情報1631、SMARTデータベース1632、判定ロジックデータベース1633等を、ディスクキャッシュドライバ162が読み書き可能な状態で保持する。なお、SMARTデータベース1632及び判定ロジックデータベース1633は予め記憶されているものとするが、入力部15等を介して新たな情報の登録や、既存の情報の削除又は変更を行うことも可能であるとする。
【0042】
ディスクドライバ164は、CPU11から入力されるデータの読み出しや書き込み等の要求に応じて、これらの要求を指示するコマンドを、ディスクキャッシュドライバ162に出力する。
【0043】
ボリュームマネージャ165は、第1記憶装置21及び第2記憶装置22の記憶領域から論理ボリュームを作成し、その論理ボリュームをファイルシステム166に提供する機能部である。ファイルシステム166は、ボリュームマネージャ165から提供された論理ボリュームの記憶領域からファイルを作成し、このファイルをCPU11に提供する機能部である。
【0044】
なお、上述した記憶制御部16の構成のうち、ディスクコントローラ161、ディスクキャッシュドライバ162、ディスクドライバ164、ボリュームマネージャ165及びファイルシステム166は、CPU11とROM12に記憶された所定のプログラムとの協働により実現されるものとする。
【0045】
以下、図5を参照して、記憶制御部16の動作について説明する。ここで図5は、情報処理装置10の起動時にディスクキャッシュドライバ162により実行される不正使用検出処理の手順を示すフローチャートである。
【0046】
まず、ディスクキャッシュドライバ162は、第2記憶装置22から、ベンダ名、モデル名、FWバージョン等の当該第2記憶装置22の種別を表す種別情報を取得する(ステップS11)。なお、第2記憶装置22の種別情報は、第2記憶装置22に内蔵されたフラッシュロム等の記憶媒体(図示せず)に保持されているものとする。
【0047】
次いで、ディスクキャッシュドライバ162は、SMARTデータベース1632から、ステップS21で取得した種別情報に対応するエントリを検索し(ステップS12)、該当するエントリが存在するか否かを判定する(ステップS13)。ここで、該当するエントリが存在しないと判定した場合には(ステップS13;No)、本処理を直ちに終了する。
【0048】
一方、ステップS13において、該当するエントリが存在した場合(ステップS13;Yes)、ディスクキャッシュドライバ162は、このエントリに含まれた「SMARTサポートフラグ」及び「判定ロジック番号」に基づいて、使用判定で用いる判定項目と、判定ロジック番号とを決定する(ステップS14)。なお、ステップS13の判定では、種別情報と完全に一致するエントリを検索する形態としてもよいし、一部一致(例えば、ベンダ名及びモデル名が一致等)するエントリを検索する形態としてもよい。
【0049】
続いて、ディスクキャッシュドライバ162は、ステップS14で決定した判定項目に対応する情報(稼動履歴情報)を、ディスクコントローラ161の照合用情報1631及び第2記憶装置22の第2SMART情報221から夫々取得する(ステップS15)。そして、ディスクキャッシュドライバ162は、ステップS14で決定した判定ロジック番号に対応する判定ロジックを判定ロジックデータベース1633から読み出し、ステップS15で取得した両情報について実行することで(ステップS16)、情報処理装置10の電源オフ時に第2記憶装置22が他の装置で使用されたか否かを判定する(ステップS17)。
【0050】
ここで、情報処理装置10の電源オフ時に第2記憶装置22が使用されていないと判定した場合(ステップS17;No)、本処理を終了する。一方、情報処理装置10の電源オフ時に第2記憶装置22が他の装置で使用されたと判定した場合(ステップS17;Yes)、第2記憶装置22のデータ内容が改竄された可能性があるため、ディスクキャッシュドライバ162は、第2記憶装置22をクリアするコマンドをディスクコントローラ161に出力することで第2記憶装置22をクリアし(ステップS18)、本処理を終了する。
【0051】
以上のように、本実施形態によれば、情報処理装置10のシャットダウン時及び起動時における、第2記憶装置22の稼動履歴(SMART情報)を比較することで、情報処理装置10の電源オフ時に第2記憶装置22が他の装置で使用されたか否かを検出することができる。これにより、情報処理装置10の電源オフ時における第2記憶装置22の不正使用を簡易な構成で検出することが可能となる。
【0052】
また、データの改竄の可能性が有る場合には、第2記憶装置22に記憶されたデータをクリアするため、第1記憶装置21と第2記憶装置22とのデータ不整合による障害発生を、未然に防止することができる。
【0053】
なお、本実施形態では、第2記憶装置22の第2SMART情報221を使用判定の対象としたが、これに限らず、第1記憶装置21の第1SMART情報211をも使用判定の対象とする形態としてもよい。
【0054】
具体的には、情報処理装置10のシャットダウン時に、第1SMART情報211及び第2SMART情報221を取得し、照合用情報として情報保持部163に記憶させることで、第1記憶装置21及び第2記憶装置22の照合用情報を準備する。そして、情報処理装置10の起動時に、第1記憶装置21及び第2記憶装置22の種別に応じた判定項目及び判定ロジックを用いて、第1記憶装置21及び第2記憶装置22から取得した第1SMART情報211及び第2SMART情報221と、照合用情報とを比較することで、情報処理装置10の電源オフ時に、他の装置により第1記憶装置21及び/又は第2記憶装置22が使用されたか否かを判定することができる。
【0055】
なお、第1記憶装置21の使用が確認された場合には、当該第1記憶装置21のデータが改竄された可能性がある旨のメッセージを、表示部14に表示するようディスクキャッシュドライバ162が制御することで、改竄の可能性を情報処理装置10のユーザに報知することが好ましい。
【0056】
[第2の実施形態]
次に、第2の実施形態について説明する。本実施形態では、第1記憶装置21及び第2記憶装置22がRAID1(ミラーリング)構成で使用される例について説明する。なお、上述した第1の実施形態と同様の構成については、同じ符号を付与し説明を省略する。
【0057】
図6は、本発明の第2の実施形態に係る情報処理装置30の構成の一例を示すブロック図である。同図に示すように、情報処理装置30は、CPU11と、ROM12と、RAM13と、表示部14と、入力部15と、記憶制御部31と、通信部17とを備えている。
【0058】
記憶制御部31は、第1記憶装置21及び第2記憶装置22を用いてRAID1のディスクアレイを構成し、CPU11から入力されるデータの書き込みや読み出しの等の要求に応じた処理を第1記憶装置21及び第2記憶装置22に実行する。なお、本実施形態では、第1記憶装置21及び第2記憶装置22が、共にHDD又はSSDであるとして説明する。
【0059】
図7は、図6に示した記憶制御部31の機能構成の一例を示すブロック図である。同図に示すように、記憶制御部31は、RAIDコントローラ311と、RAIDドライバ312と、情報保持部313と、ディスクドライバ164と、ボリュームマネージャ165と、ファイルシステム166とを備え、RAIDコントローラ311に第1記憶装置21及び第2記憶装置22が接続されている。
【0060】
RAIDコントローラ311は、RAIDドライバ312と協働して、第1記憶装置21及び第2記憶装置22を用いてRAID1のディスクアレイを構成し、RAIDドライバ312から入力されるコマンドに応じて、第1記憶装置21又は第2記憶装置22に対するデータの読み出しや書き込み等を実行する。
【0061】
RAIDドライバ312は、ディスクドライバ164から通知される書き込みコマンドに応じ、第1記憶装置21及び第2記憶装置22に、書き込み対象となった同一のデータを書込む制御を行うことにより、論理的に単一な記憶領域を実現させる。また、RAIDドライバ312は、ディスクドライバ164から通知される読み出しコマンドに応じて、第1記憶装置21又は第2記憶装置22から該当するデータを読み出し、ディスクドライバ164に出力する。
【0062】
RAIDドライバ312は、情報処理装置30のシャットダウン時に、第1記憶装置21及び第2記憶装置22のSMART機能によって提供される第1SMART情報211及び第2SMART情報221を取得し、第1照合用情報3131及び第2照合用情報3132として情報保持部313に記憶する。また、RAIDドライバ312は、情報処理装置30の起動時に、第1記憶装置21及び第2記憶装置22のSMART機能によって提供される第1SMART情報211及び第2SMART情報221を取得する。そして、RAIDドライバ312は、第1照合用情報3131と第1SMART情報211、第2照合用情報3132と第2SMART情報221を夫々比較することで、情報処理装置10が電源オフの間に、第1記憶装置21及び/又は第2記憶装置22が他の装置で使用されたか否かを判定する。
【0063】
具体的に、RAIDドライバ312は、使用判定の際に、情報保持部313のSMARTデータベース1632に格納された情報に基づいて、第1記憶装置21及び第2記憶装置22の種別に応じた判定項目と、判定ロジック番号とを夫々決定する。また、RAIDドライバ312は、判定ロジック番号に対応する判定ロジックを情報保持部313の判定ロジックデータベース1633から読み出し、この判定ロジックを判定項目について実行することで、第1SMART情報211と第1照合用情報3131、第2SMART情報221と第2照合用情報3132を夫々比較し、相違するか否かを判定する。そして、RAIDドライバ312は、相違を確認したSMART情報の記憶装置について、情報処理装置30の電源オフ時に他の装置で使用されたと判定する。
【0064】
情報保持部313は、フラッシュメモリやEEPROM等の書き込み可能な不揮発性メモリであって、上述した第1照合用情報3131、第2照合用情報3132、SMARTデータベース1632及び判定ロジックデータベース1633を保持する。
【0065】
なお、上述した記憶制御部31の構成のうち、RAIDドライバ312、ディスクドライバ164、ボリュームマネージャ165及びファイルシステム166は、CPU11とROM12に記憶された所定のプログラムとの協働により実現されるものとする。また、RAIDコントローラ311は、CPU11とROM12に記憶された所定のプログラムとの協働により実現されるものとしてもよいし、RAID用インタフェース等のハードウェアにより実現されるものとしてもよい。
【0066】
以下、図8を参照して、記憶制御部31(RAIDドライバ312)の動作について説明する。ここで図8は、情報処理装置30の起動時にRAIDドライバ312により実行される不正使用検出処理の手順を示すフローチャートである。
【0067】
まず、RAIDドライバ312は、第1記憶装置21及び第2記憶装置22の各々から各記憶装置の種別を表した、製造ベンダ名、モデル名、FWバージョン等の種別情報を取得する(ステップS21)。なお、第1記憶装置21の種別情報は、第1記憶装置21に内蔵されたフラッシュロム等の記憶媒体(図示せず)に保持されているものとする。
【0068】
次いで、RAIDドライバ312は、SMARTデータベース1632から、ステップS21で取得した第1記憶装置21及び第2記憶装置22の種別情報に対応するエントリを各々検索し(ステップS22)、該当するエントリが存在するか否かを判定する(ステップS23)。ここで、該当するエントリが存在しないと判定した場合(ステップS23;No)、RAIDドライバ312は、本処理を直ちに終了する。
【0069】
一方、ステップS23において、該当するエントリが存在した場合(ステップS23;Yes)、RAIDドライバ312は、このエントリに含まれた「SMARTサポートフラグ」及び「判定ロジック番号」に基づいて、使用判定で用いる判定項目と、判定ロジック番号とを決定する(ステップS24)。なお、第1記憶装置21及び第2記憶装置22の一方の記憶装置についてのみエントリが存在した場合には、本処理を終了する形態としてもよいし、存在したエントリについてステップS24の処理を行う形態としてもよい。
【0070】
続いて、RAIDドライバ312は、ステップS24で決定した判定項目に対応する情報を、情報保持部313に保持する第1照合用情報3131及び第1記憶装置21が保持する第1SMART情報211から取得するとともに、情報保持部313に保持する第2照合用情報3132及び第2記憶装置22が保持する第2SMART情報221から取得する(ステップS25)。
【0071】
そして、RAIDドライバ312は、ステップS25で取得した第1記憶装置21及び第2記憶装置22の各々について、ステップS24で決定した判定ロジック番号の判定ロジックを、ステップS25で取得した判定項目に対応する情報について実行することで(ステップS26)、情報処理装置10の電源オフ時に第1記憶装置21及び/又は第2記憶装置22が他の装置で使用されたか否かを判定する(ステップS27)。
【0072】
ここで、情報処理装置10の電源オフ時に第1記憶装置21及び第2記憶装置22の何れも使用されていないと判定した場合(ステップS27;No)、本処理を終了する。
【0073】
また、第1記憶装置21又は第2記憶装置22が使用されたと判定した場合(ステップS27;片方使用)、使用されたと判定した側の記憶装置のデータ内容が改竄されている可能性があるため、RAIDドライバ312は、使用されていないと判定した側の記憶装置に記憶された全てのデータを、使用されたと判定した側の記憶装置にコピーすることでRAID1のディスクアレイを再構築し(ステップS28)、本処理を終了する。
【0074】
また、第1記憶装置21及び第2記憶装置22の両者が使用されたと判定した場合(ステップS27;両方使用)、RAIDドライバ312は、第1記憶装置21及び第2記憶装置22のデータ内容が改竄された可能性がある旨のメッセージを表示部14等に出力させた後(ステップS29)、本処理を終了する。
【0075】
以上のように、本実施形態によれば、情報処理装置30のシャットダウン時及び起動時における、第1記憶装置21及び第2記憶装置22の稼動履歴(SMART情報)を夫々比較することで、情報処理装置10の電源オフ時に第1記憶装置21及び第2記憶装置22が他の装置で使用されたか否かを検出することができる。これにより、情報処理装置10の電源オフ時における第1記憶装置21及び第2記憶装置22の不正使用を簡易な構成で検出することが可能となる。
【0076】
また、データの改竄の可能性が有る場合には、不正使用が行われていない側の記憶装置に記憶された全てのデータを、不正使用された側の記憶装置にコピーし、RAID1構成を再構築するため、第1記憶装置21と第2記憶装置22とのデータ不整合による障害発生を、未然に防止することができる。
【0077】
以上、発明の実施の形態について説明したが、本発明は、上記実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施の形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態にわたる構成要素を適宜組み合わせても良い。
【0078】
例えば、上記実施形態では、二台構成の記憶装置を備えた情報処理装置を例に説明したが、これに限らず、上述した使用判定に係る処理方法は、一台の記憶装置のみを備えた情報処理装置においても適用することが可能である。また、同様に、上述した使用判定に係る処理方法は、三台以上の記憶装置を備えた情報処理装置においても適用することが可能である。
【0079】
また、上記実施形態の不正使用検出処理にかかるプログラムを、コンピュータで読み取り可能な記憶媒体として提供することも可能である。記憶媒体としては、磁気ディスク、光ディスク(CD−ROM、CD−R、DVD等)、光磁気ディスク(MO等)、半導体メモリ等、プログラムを記憶でき、且つ、コンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であってもよい。
【0080】
また、上記実施形態の不正使用検出処理にかかるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。
【産業上の利用可能性】
【0081】
以上のように、本発明にかかる情報処理装置、情報処理方法及びプログラムは、記憶装置の不正使用の検出に有用であり、特に、電源オフ時における記憶装置の不正使用を検出するのに適している。
【符号の説明】
【0082】
10 情報処理装置
11 CPU
12 ROM
13 RAM
14 表示部
15 入力部
16 記憶制御部
161 ディスクコントローラ
162 ディスクキャッシュドライバ
163 情報保持部
1631 照合用情報
1632 SMARTデータベース
1633 判定ロジックデータベース
164 ディスクドライバ
165 ボリュームマネージャ
166 ファイルシステム
17 通信部
21 第1記憶装置
211 第1SMART情報
22 第2記憶装置
221 第2SMART情報
30 情報処理装置
31 記憶制御部
311 RAIDコントローラ
312 RAIDドライバ
313 情報保持部
3131 第1照合用情報
3132 第2照合用情報

【特許請求の範囲】
【請求項1】
自己診断機能を有する記憶装置を備えた情報処理装置において、
自己の装置のシャットダウン時に、前記自己診断機能によって提供される前記記憶装置の稼働履歴を記録した稼働履歴情報を含む診断情報を前記記憶装置から取得する第1取得手段と、
前記第1取得手段が取得した診断情報を照合用情報として保持する保持手段と、
自己の装置の起動時に、前記自己診断機能によって提供される前記診断情報を前記記憶装置から取得する第2取得手段と、
前記保持手段が保持する前記照合用情報と前記第2取得手段が取得した前記診断情報とに含まれた前記稼働履歴情報を比較し、当該稼働履歴情報の差に基づいて、自己の装置の電源オフ時に前記記憶装置が使用されたか否かを判定する判定手段と、
を備えたことを特徴とする情報処理装置。
【請求項2】
前記判定手段での判定に用いる前記稼働履歴の種別を示した判定項目と、この判定項目に応じた前記判定手段での判定方法と、を記憶装置の種別毎に定めた設定情報を保持するデータベース手段を更に備え、
前記判定手段は、前記設定情報に基づいて、自己の装置が備える前記記憶装置の種別に対応する前記判定項目と前記判定方法とを決定し、この判定方法を用いて、前記照合用情報及び前記診断情報に含まれた前記判定項目に対応する前記稼働履歴情報を比較することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記判定項目は、工場出荷状態からの通電時間の合計を示す稼働時間、電源がオン/オフされた回数を示すオン/オフ回数、及び、書き換え回数を示す書換回数の何れか又は全てを含むことを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記判定手段は、前記稼働履歴情報の差が所定の値を超えた場合に、自己の装置の電源オフ時に前記記憶装置が使用されたと判定することを特徴とする請求項1〜3の何れか一項に記載の情報処理装置。
【請求項5】
二台構成の前記記憶装置において、一方の記憶装置に記憶されたデータのうち、アクセスされる頻度の高いデータを他方の記憶装置にキャッシュとして記憶させるキャッシュ手段と、
前記判定手段によって前記他方の記憶装置が使用されたと判定された場合、この他方の記憶装置に記憶されたデータを消去する消去手段と、
を更に備えたことを特徴とする請求項1〜4の何れか一項に記載の情報処理装置。
【請求項6】
二台構成の前記記憶装置において、当該記憶装置を用いてRAID1のディスクアレイを構成するRAID手段と、
前記判定手段によって前記記憶装置の何れか一方が使用されたと判定された場合、この使用されたと判定した一方の記憶装置に、他方の記憶装置に記憶された全てのデータをコピーし、前記ディスクアレイを再構築する再構築手段と、
を更に備えたことを特徴とする請求項1〜4の何れか一項に記載の情報処理装置。
【請求項7】
前記診断情報は、SMART情報であることを特徴とする請求項1〜6の何れか一項に記載の情報処理装置。
【請求項8】
自己診断機能を有する記憶装置を備えた情報処理装置で実行される情報処理方法であって、
第1取得手段が、自己の装置のシャットダウン時に、前記自己診断機能によって提供される前記記憶装置の稼働履歴を記録した稼働履歴情報を含む診断情報を前記記憶装置から取得する第1取得工程と、
保持手段が、前記第1取得工程で取得された前記診断情報を照合用情報として保持する保持工程と、
第2取得手段が、自己の装置の起動時に、前記自己診断機能によって提供される前記診断情報を前記記憶装置から取得する第2取得工程と、
判定手段が、前記保持工程で保持された前記照合用情報と、前記第2取得工程で取得された前記診断情報とに含まれた前記稼働履歴情報を比較し、当該稼働履歴情報の差に基づいて、自己の装置の電源オフ時に前記記憶装置が使用されたか否かを判定する判定工程と、
を含むことを特徴とする情報処理方法。
【請求項9】
自己診断機能を有する記憶装置を備えた情報処理装置のコンピュータを、
自己の装置のシャットダウン時に、前記自己診断機能によって提供される前記記憶装置の稼働履歴を記録した稼働履歴情報を含む診断情報を前記記憶装置から取得する第1取得手段と、
前記第1取得手段が取得した診断情報を照合用情報として保持する保持手段と、
自己の装置の起動時に、前記自己診断機能によって提供される前記診断情報を前記記憶装置から取得する第2取得手段と、
前記保持手段が保持する前記照合用情報と前記第2取得手段が取得した前記診断情報とに含まれた前記稼働履歴情報を比較し、当該稼働履歴情報の差に基づいて、自己の装置の電源オフ時に前記記憶装置が使用されたか否かを判定する判定手段と、
して機能させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2010−257340(P2010−257340A)
【公開日】平成22年11月11日(2010.11.11)
【国際特許分類】
【出願番号】特願2009−108381(P2009−108381)
【出願日】平成21年4月27日(2009.4.27)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】