(57)【要約】【課題】ファイル管理に関する管理者の負担を低減するとともに、管理対象のファイルに応じた適正な照合情報を用いてファイルを正確に確認することができる。【解決手段】ファイル管理装置３は、ファイルの改ざん確認或いは過不足確認の際に照合する照合情報に記載する可能性のあるファイル、ディレクトリの共通リスト定義と、個別のファイル管理装置において照合情報のファイル、ディレクトリのリストの要素を決定する要素属性の定義と、を示す共有の共通定義情報の少なくとも一部を取得して、配置されるべきであるファイルのファイルパスとファイルデータのダイジェスト値との組み合わせを示す第１のリスト、配置されるべきファイルのファイルパスを示す第２のリスト、及び、所定のディレクトリ条件を満たすディレクトリのディレクトリパスを示す第３のリスト、を有する照合情報を生成する。【選択図】図２
2019008377.tif 000002
【特許請求の範囲】
【請求項１】
配置されたファイルを管理するファイル管理装置が使用する照合情報を生成する照合情報生成装置であって、
任意のファイル管理装置において、ファイルの改ざん確認或いは過不足確認の際に照合する照合情報について、該照合情報に記載する可能性のあるファイル及びディレクトリのリストである共通リストの定義と、個別のファイル管理装置において、前記照合情報のファイル及びディレクトリのリストの要素を決定する条件である要素属性の定義と、を示す共有の共通定義情報の少なくとも一部を取得する取得部と、
前記取得部が取得した共通定義情報の共通リスト及び要素属性に基づいて、照合情報として、配置されるべきであるファイルであり、かつ、ファイルデータが変化しないファイルのファイルパスとファイルデータのダイジェスト値との組み合わせを示す第１のリスト、配置されるべきファイルであり、かつ、ファイルデータが変化しうるファイルのファイルパスを示す第２のリスト、及び、直下のファイルは同じ照合情報に属する前記第１のリストまたは前記第２のリストに記載のファイルである第１のディレクトリ条件、直下のディレクトリは同じ照合情報に属する前記第１のリストまたは前記第２のリストに記載のファイルを一つ以上配下に配置するディレクトリである第２のディレクトリ条件、直下に前記第１のディレクトリ条件または前記第２のディレクトリ条件に該当しないファイルまたはディレクトリを配置しない第３のディレクトリ条件を満たすディレクトリのディレクトリパスを示す第３のリスト、を有する照合情報を生成する生成部と、
を有することを特徴とする照合情報生成装置。
【請求項２】
前記共通定義情報は、前記照合情報の第１のリスト及び第２のリストの共通リストに記載のファイルがファイル管理装置に配置することが必須であることを示す第１フラグ或いは必須でないことを示す第２フラグを定義する必須フラグ、前記照合情報の第１のリスト及び第２のリストの共通リストに記載のファイルのファイルパス表記の作成条件であるファイルパス条件、前記照合情報の第１のリストの共通リストに記載のファイルのうち配置にあたってファイルデータを変更できないファイルのダイジェスト値、前記照合情報の第３のリストの共通リストに記載のディレクトリのディレクトリパス表記の作成条件であるディレクトリパス条件を前記要素属性として定義し、
前記生成部は、配置されるべきファイル集合に対して、当該ファイル管理装置に応じて個別に備えるべき条件を示す個別定義情報と前記共通定義情報とをともに満たす前記照合情報を生成することを特徴とする請求項１に記載の照合情報生成装置。
【請求項３】
前記共通定義情報から、前記個別定義情報として定義すべき項目として、前記共通定義情報において前記第１のリストに記載を定義されたファイルについて、前記第２フラグのファイルパス、前記ファイルパス条件を満たすファイルパス表記のうち当該ファイル管理装置で個別に決定する要素、前記ダイジェスト値が定義されていないファイルパスのいずれかを抽出し、前記共通定義情報において前記第２のリストに記載を定義されたファイルについて、前記第２フラグのファイル、前記ファイルパス条件を満たすファイルパス表記のうち当該ファイル管理装置で個別に決定する要素のいずれかを抽出し、前記共通定義情報において前記第３のリストに記載を定義されたディレクトリについて、前記ファイルパス条件を満たすディレクトリパス表記のうち当該ファイル管理装置で個別に決定する要素を前記共通定義情報から抽出する個別定義項目抽出部と、
前記個別定義項目抽出部が前記共通定義情報から抽出した項目にしたがい、前記共通定義情報において前記照合情報の第１のリストに記載を定義されたファイルについて、第２フラグのファイルの配置有無、前記ファイルパス条件を満たすファイルパス表記のうち当該ファイル管理装置で個別に決定する要素の値、前記ダイジェスト値が定義されていないファイルのファイルデータの情報と、前記共通定義情報において前記照合情報の第２のリストに記載を定義されたファイルについて、第２フラグのファイルの配置有無、前記ファイルパス条件を満たすファイルパス表記のうち当該ファイル管理装置で個別に決定する要素の値の情報と、前記共通定義情報において前記照合情報の第３のリストに記載を定義されたディレクトリについて、前記ファイルパス条件を満たすディレクトリパス表記のうち当該ファイル管理装置で個別に決定する要素の値の情報との入力を前記個別定義情報として受け付ける個別情報入力部と、
をさらに有することを特徴とする請求項２に記載の照合情報生成装置。
【請求項４】
前記ファイルパス条件及び前記ディレクトリパス条件は、前記照合情報の第１リスト、第２のリスト及び第３のリストに記載するファイルまたはディレクトリの全体または一部を、prefix範囲と定義し、前記prefix範囲を当該ファイル管理装置で個別に決定したディレクトリパス（prefix）の配下に配置することを許可し、前記ディレクトリパス（prefix）以外は、当該ファイル管理装置で個別に決定することを許可しないことを特徴とする請求項２または３に記載の照合情報生成装置。
【請求項５】
前記ファイルパス条件及び前記ディレクトリパス条件は、前記照合情報の第１リスト、第２のリスト及び第３のリストに記載するファイルパスまたはディレクトリパスを構成する文字列の一部をワイルドカード部分と定義し、前記ワイルドカード部分を当該ファイル管理装置で個別に決定した任意の文字列に置換することを許可し、前記ワイルドカード部分以外は当該ファイル管理装置で個別に決定することを許可しないことを特徴とする請求項２または３に記載の照合情報生成装置。
【請求項６】
前記ファイルパス条件及び前記ディレクトリパス条件は、前記照合情報の第１リスト、第２のリスト及び第３のリストに記載するファイルパスまたはディレクトリパスを構成する文字列を、正規表現によって定義することを特徴とする請求項２または３に記載の照合情報生成装置。
【請求項７】
配置されたファイルを管理するファイル管理装置と、前記ファイル管理装置が使用する照合情報を生成する照合情報生成装置とを有する管理システムであって、
前記照合情報生成装置は、
任意のファイル管理装置において、ファイルの改ざん確認或いは過不足確認の際に照合する照合情報について、該照合情報に記載する可能性のあるファイル及びディレクトリのリストである共通リストの定義と、個別のファイル管理装置において、前記照合情報のファイル及びディレクトリのリストの要素を決定する条件である要素属性の定義と、を示す共有の共通定義情報の少なくとも一部を取得する取得部と、
前記取得部が取得した共通定義情報の共通リスト及び要素属性に基づいて、照合情報として、配置されるべきであるファイルであり、かつ、ファイルデータが変化しないファイルのファイルパスとファイルデータのダイジェスト値との組み合わせを示す第１のリスト、配置されるべきファイルであり、かつ、ファイルデータが変化しうるファイルのファイルパスを示す第２のリスト、及び、直下のファイルは同じ照合情報に属する前記第１のリストまたは前記第２のリストに記載のファイルである第１のディレクトリ条件、直下のディレクトリは同じ照合情報に属する前記第１のリストまたは前記第２のリストに記載のファイルを一つ以上配下に配置するディレクトリである第２のディレクトリ条件、直下に前記第１のディレクトリ条件または前記第２のディレクトリ条件に該当しないファイルまたはディレクトリを配置しない第３のディレクトリ条件を満たすディレクトリのディレクトリパスを示す第３のリスト、を有する照合情報を生成する生成部と、
を有し、
前記ファイル管理装置は、
配置されたファイルについて、ファイルパスによってファイルデータを識別し、ディレクトリによってファイルパスを分類し、ディレクトリパスによってディレクトリを識別してファイルを管理するファイル管理部と、
配置されたファイルのファイルパス及び前記照合情報が示すファイルパス、配置されたファイルのファイルデータのダイジェスト値及び前記照合情報が示すファイルデータのダイジェスト値、及び、配置されたファイルのディレクトリパス及び前記照合情報が示すディレクトリパス、のいずれか一つを照合する照合部と、
前記照合部による照合結果を基に、取得した照合情報が有するリストの組み合わせに応じて、第１の確認内容である配置されるべきファイルが改ざんされてないことと、第２の確認内容である配置されるべきファイルが削除されてないこと及び第３の確認内容である配置されるべきでないファイルが追加されてないこととの少なくともいずれか一つを確認する確認部と、
を有することを特徴とする管理システム。
【請求項８】
データベースに配置されたファイルを管理する場合に使用する照合情報を生成する照合情報生成装置が実行する照合情報生成方法であって、
任意のファイル管理装置において、ファイルの改ざん確認或いは過不足確認の際に照合する照合情報について、該照合情報に記載する可能性のあるファイル及びディレクトリのリストである共通リストの定義と、個別のファイル管理装置において、前記照合情報のファイル及びディレクトリのリストの要素を決定する条件である要素属性の定義と、を示す共有の共通定義情報の少なくとも一部を取得する取得工程と、
前記取得工程において取得された共通定義情報の共通リスト及び要素属性に基づいて、照合情報として、配置されるべきであるファイルであり、かつ、ファイルデータが変化しないファイルのファイルパスとファイルデータのダイジェスト値との組み合わせを示す第１のリスト、配置されるべきファイルであり、かつ、ファイルデータが変化しうるファイルのファイルパスを示す第２のリスト、及び、直下のファイルは同じ照合情報に属する前記第１のリストまたは前記第２のリストに記載のファイルである第１のディレクトリ条件、直下のディレクトリは同じ照合情報に属する前記第１のリストまたは前記第２のリストに記載のファイルを一つ以上配下に配置するディレクトリである第２のディレクトリ条件、直下に前記第１のディレクトリ条件または前記第２のディレクトリ条件に該当しないファイルまたはディレクトリを配置しない第３のディレクトリ条件を満たすディレクトリのディレクトリパスを示す第３のリスト、を有する照合情報を生成する生成工程と、
を含んだことを特徴とする照合情報生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、照合情報生成装置、管理システム及び照合情報生成方法に関する。
【背景技術】
【０００２】
従来、デジタルコンテンツの基準要約値を作成し、コンテンツの改ざんチェックを行うデジタルコンテンツの改ざん監視装置が提案されている（例えば、特許文献１参照）。この改ざん監視装置は、Ｗｅｂコンテンツの他、ファイル集合の改ざんや不足も監視している。この装置では、システム管理者が、クリーンな環境のスナップショットを作成し、これを照合情報としている。
【０００３】
また、ソフトウェア提供元がソフトウェアを構成するファイル集合の完全性を確認するデータを提供する機能として、ＵＮＩＸ（登録商標）系オペレーティングシステムに標準搭載されているソフトウェアパッケージの管理機能であるＲＰＭがある（例えば、非特許文献１，２参照）。ＲＰＭは、パッケージごとにファイルのダイジェストや署名が提供されて、ＲＰＭデータベースに登録する。そして、ＲＰＭでは、ファイルシステムにインストールされたファイルと、データベースのダイジェスト値とを照合することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−２６５２１７号公報
【非特許文献】
【０００５】
【非特許文献１】RPM  Package  Manager，［online］，［平成２９年６月３日検索］，インターネット＜ＵＲＬ：http://rpm.org/＞及びインターネット＜ＵＲＬ：http://fedoranews.org/alex/tutorial/rpm/14.shtml＞
【非特許文献２】All  you  have  to  know  about  RPM，［online］，［平成２９年６月３日検索］，インターネット＜ＵＲＬ：http://fedoranews.org/alex/tutorial/rpm/14.shtml＞
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来技術では、ファイル管理に関して管理者の負担が重いという問題がある。また、従来技術では、ログファイル等のダイジェスト値を定義できないファイルの過不足を確認できない場合や、過不足確認するべきでないディレクトリを管理対象から除外できない場合があり、管理対象のファイルを正確に確認することが難しい場合があるという問題がある。また、従来技術では、ソフトウェアパッケージに属するファイルの一部を変更可能である場合、ソフトウェアの提供元は、このようなファイルに対する正確な照合情報を提供できず、管理者はファイルの完全性を正確に確認できないという問題があった。
【０００７】
具体的には、特許文献１記載の装置では、各システムでシステム運用者自身がスナップショットの作成及びメンテナンスを行う必要があり、システムでシステム運用者の負担及びトータルコストが高くなる上に、システム運用者の技量に頼るところが多いため、一定の正確性が保持できない場合があった。
【０００８】
特許文献１記載の装置では、このスナップショットにはデータ確認するべきでないファイルが含まれる。例えば、ログファイルやデータベースなどである。これらを照合情報から除外しなければ誤検知が生じる。しかしながら、これらを抽出するには、管理者がソフトウェアの動作仕様を熟知する必要があり、難しい場合があった。
【０００９】
また、特許文献１記載の装置では、スナップショットには過不足確認するべきでないディレクトリが含まれる。例えば、ソフトウェアの正当な動作によって追加削除されるファイルなどである。これらを照合情報から除外しなければ誤検知が生じる。しかしながら、これらを抽出するには管理者がソフトウェアの動作仕様を熟知する必要があり、難しい。このように、従来技術では、ファイル管理に関して管理者の負担が重くい上に、管理対象のファイルを正確に確認することが難しい場合があるという問題があった。
【００１０】
また、非特許文献１，２記載の機能では、ソフトウェアパッケージに属するファイルのファイルパスの一部をカスタマイズ可能な場合（prefix指定、ワイルドカード指定、等）、ソフトウェア提供元は、これらのファイルの照合情報のファイルパスを指定できない。また、非特許文献１，２記載の機能では、ソフトウェアパッケージに属するファイルの一部を、インストール時に削除することが可能な場合（マニュアルファイル等）、ソフトウェア提供元は、これらのファイルを照合情報に掲載するか否かを判断できない。さらに、非特許文献１，２記載の機能では、ソフトウェアパッケージに属するファイルデータの一部を、インストール時に変更することが可能な場合（設定ファイル等）、ソフトウェア提供元はこれらのファイルの照合情報のファイルデータのダイジェスト値を指定できない。したがって、従来技術では、ソフトウェアパッケージに属するファイルの一部を変更可能である場合、ソフトウェアの提供元は、このようなファイルに対する正確な照合情報を提供できなかった。
【００１１】
本発明は、上記に鑑みてなされたものであって、ファイル管理に関する管理者の負担を低減するとともに、管理対象のファイルに応じた適正な照合情報を用いてファイルを正確に確認することができる照合情報生成装置、管理システム及び照合情報生成方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述した課題を解決し、目的を達成するために、本発明に係る照合情報生成装置は、配置されたファイルを管理するファイル管理装置が使用する照合情報を生成する照合情報生成装置であって、任意のファイル管理装置において、ファイルの改ざん確認或いは過不足確認の際に照合する照合情報について、該照合情報に記載する可能性のあるファイル及びディレクトリのリストである共通リストの定義と、個別のファイル管理装置において、照合情報のファイル及びディレクトリのリストの要素を決定する条件である要素属性の定義と、を示す共有の共通定義情報の少なくとも一部を取得する取得部と、取得部が取得した共通定義情報の共通リスト及び要素属性に基づいて、照合情報として、配置されるべきであるファイルであり、かつ、ファイルデータが変化しないファイルのファイルパスとファイルデータのダイジェスト値との組み合わせを示す第１のリスト、配置されるべきファイルであり、かつ、ファイルデータが変化しうるファイルのファイルパスを示す第２のリスト、及び、直下のファイルは同じ照合情報に属する第１のリストまたは第２のリストに記載のファイルである第１のディレクトリ条件、直下のディレクトリは同じ照合情報に属する第１のリストまたは第２のリストに記載のファイルを一つ以上配下に配置するディレクトリである第２のディレクトリ条件、直下に第１のディレクトリ条件または第２のディレクトリ条件に該当しないファイルまたはディレクトリを配置しない第３のディレクトリ条件を満たすディレクトリのディレクトリパスを示す第３のリスト、を有する照合情報を生成する生成部と、を有することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、ファイル管理に関する管理者の負担を低減するとともに、管理対象のファイルに応じた適正な照合情報を用いてファイルを正確に確認することができる。
【図面の簡単な説明】
【００１４】
【図１】図１は、実施の形態に係るファイル管理装置を有する管理システムの概略構成を示す模式図である。
【図２】図２は、図１に示すファイル管理装置の概略構成を示す模式図である。
【図３】図３は、図２に示す確認内容情報のデータ構成の一例を示す図である。
【図４】図４は、図２に示す照合情報が有するリストの内容を説明する図である。
【図５】図５は、図２に示す照合情報の一例を示す図である。
【図６】図６は、図２に示す共通定義情報が定義する内容を説明する図である。
【図７】図７は、図２に示す共通定義情報が定義する要素属性を説明する図である。
【図８】図８は、図２に示す共通定義情報の一例を示す図である。
【図９】図９は、図２に示す項目抽出情報について説明する図である。
【図１０】図１０は、図２に示す個別定義情報を説明する図である。
【図１１】図１１は、図２に示す個別定義情報の一例を示す図である。
【図１２】図１２は、図２に示す条件情報について説明する図である。
【図１３】図１３は、図２に示す生成部による照合情報の生成処理を説明する図である。
【図１４】図１４は、図２に示す照合部の処理を説明する図である。
【図１５】図１５は、図２に示す照合部の処理を説明する図である。
【図１６】図１６は、実施の形態に係る照合情報の生成処理の処理手順のフローチャートである。
【図１７】図１７は、図１６に示す照合情報生成処理の処理手順のフローチャートである。
【図１８】図１８は、図１７に示すリストＢ１設定処理の処理手順のフローチャートである。
【図１９】図１９は、図１７に示すリストＢ２設定処理の処理手順のフローチャートである。
【図２０】図２０は、図１７に示すリストＢ３設定処理の処理手順のフローチャートである。
【図２１】図２１は、実施の形態に係るファイル確認処理の処理手順のフローチャートである。
【図２２】図２２は、図２１に示す照合処理の処理手順を示すフローチャートである。
【図２３】図２３は、図２１に示す確認処理の処理手順を示すフローチャートである。
【図２４】図２４は、図２に示す対応関係情報のデータ構成の一例を示す図である。
【図２５】図２５は、実施の形態の変形例２における照合情報の生成処理を説明する図である。
【図２６】図２６は、実施の形態の変形例２における照合情報の生成処理の他の例を説明する図である。
【図２７】図２７は、実施の形態の変形例２における照合情報の生成処理の他の例を説明する図である。
【図２８】図２８は、実施の形態に係るファイル管理装置を有する管理システムの他の概略構成を示す模式図である。
【図２９】図２９は、図２８に示す照合情報生成装置の概略構成を示す模式図である。
【図３０】図３０は、図２８に示すファイル管理装置の構成である。
【図３１】図３１は、プログラムが実行されることにより、ファイル管理装置が実現されるコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１５】
以下、図面を参照して、本発明の一実施の形態を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
【００１６】
［実施の形態］
まず、実施の形態に係るファイル管理装置について、概略構成、ファイル確認処理の流れ及び具体例を説明する。本実施の形態は、事前に作成された共有の共通定義情報と、装置個別の定義情報とを基に装置に適用するための照合情報を作成し、該照合情報を用いて、ファイルの改ざん、ファイルの削除、データベースに配置されるべきでないファイルの追加のいずれか一つを確認する。
【００１７】
図１は、実施の形態に係るファイル管理装置を有する管理システムの概略構成を示す模式図である。図１に示すように、実施の形態に係る管理システムは、共通定義情報データベース（ＤＢ）２と、複数のファイル管理装置３Ｘ〜３Ｚとが通信可能に接続する構成を有する。
【００１８】
共通定義情報ＤＢ２は、共有の共通定義情報Ｇ１，Ｇ２，Ｇ３を有する。共通定義情報ＤＢ２からは、各ファイル管理装置３Ｘ〜３Ｚに、それぞれのファイル管理装置３Ｘ〜３Ｚが必要とする共有の共通定義情報Ｇ１，Ｇ２，Ｇ３を送信する。共有の共通定義情報Ｇ１，Ｇ２，Ｇ３は、たとえば、ソフトウェア提供者によって作成され、提供される。なお、共有の共通定義情報Ｇ１，Ｇ２，Ｇ３の保管及び流通は、図１のような集中管理方式に限らず、種々の既存手段を適用することが可能である。
【００１９】
ファイル管理装置３Ｘ〜３Ｚは、管理対象であるファイル管理装置３に配置（インストール）された複数のファイルＦを管理する。ファイル管理装置３Ｘ〜３Ｚは、一般的なオペレーティングシステムを搭載したＰＣ（Personal  Computer）やサーバ装置等である。なお、図１に示すファイル管理装置３Ｘ〜３Ｚの数は、あくまで一例であり、これに限られるものではない。また、複数のファイル管理装置３Ｘ〜３Ｚについて、特に区別なく説明する場合には、ファイル管理装置３と記載する。
【００２０】
ファイル管理装置３Ｘ〜３Ｚが管理するファイル集合は、具体的には、ソフトウェアパッケージを構成するファイル集合である。ファイル集合は、例えば、プログラムを実行するプログラムファイルや、プログラムファイルの実行順序を既定する設定ファイルを含む。これらのファイル集合のファイルパスやディレクトリ構造は、インストール先によらず共通であることが多い。そして、プログラムファイル等は、インストール先によらず同じデータであることが多い。これに対し、設定ファイル等はインストール先に応じてデータを編集することが多い。
【００２１】
ファイル管理装置３Ｘ〜３Ｚは、管理対象のファイルについて、ファイルパスによってファイルデータを識別し、ディレクトリによってファイルパスを分類し、ディレクトリパスによってディレクトリを識別する。
【００２２】
ファイル管理装置３Ｘ〜３Ｚは、共通定義情報ＤＢ２内の共有の共通定義情報Ｇ１，Ｇ２，Ｇ３の少なくとも一部を取得する。また、ファイル管理装置３Ｘ〜３Ｚは、自装置個別の個別定義情報Ｌ１ｘ，Ｌ２ｘ，Ｌ３ｘ，Ｌ１ｙ，Ｌ１ｚ，Ｌ２ｚを取得する。個別定義情報Ｌ１ｘ，Ｌ２ｘ，Ｌ３ｘ，Ｌ１ｙ，Ｌ１ｚ，Ｌ２ｚは、ファイル管理装置３Ｘ〜３Ｚのそれぞれに配置されるべきファイル集合に対して、ファイル管理装置３Ｘ〜３Ｚに応じて個別に備えるべき条件を示す情報である。そして、ファイル管理装置３Ｘ〜３Ｚは、取得した共通定義情報Ｇ１，Ｇ２，Ｇ３と個別定義情報Ｌ１ｘ，Ｌ２ｘ，Ｌ３ｘ，Ｌ１ｙ，Ｌ１ｚ，Ｌ２ｚとをともに満たす照合情報Ｒ１ｘ，Ｒ２ｘ，Ｒ３ｘ，Ｒ１ｙ，Ｒ１ｚ，Ｒ２ｚを生成する。
【００２３】
そして、ファイル管理装置３Ｘ〜３Ｚは、生成した照合情報Ｒ１ｘ，Ｒ２ｘ，Ｒ３ｘ，Ｒ１ｙ，Ｒ１ｚ，Ｒ２ｚと管理対象のファイルとを照合する。ファイル管理装置３Ｘ〜３Ｚは、照合結果を基に、ファイルの改ざん、ファイルの削除、データベースに配置されるべきでないファイルの追加のいずれか一つの確認項目Ａ１〜Ａ３について確認を行い、確認結果を出力する。
【００２４】
［ファイル管理装置の構成］
次に、図２を参照して、図１に示すファイル管理装置３の構成について説明する。図２は、図１に示すファイル管理装置３の概略構成を示す模式図である。図２に示すように、記憶部１０、通信部１３、制御部１４、入力部１５及び出力部１６を有する。
【００２５】
記憶部１０は、ＨＤＤ（Hard  Disk  Drive）、ＳＳＤ（Solid  State  Drive）、光ディスク等の記憶装置である。なお、記憶部１０は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ、ＮＶＳＲＡＭ（Non  Volatile  Static  Random  Access  Memory）等のデータを書き換え可能な半導体メモリであってもよい。記憶部１０は、ファイル管理装置３で実行されるＯＳ（Operating  System）や各種プログラムを記憶する。さらに、記憶部１０は、プログラムの実行で用いられる各種情報を記憶する。記憶部１０は、ファイル記憶部１１及び確認用情報記憶部１２を有する。
【００２６】
ファイル記憶部１１は、複数のファイルＦで構成されるファイル集合Ｆｓを複数配置する。ファイル集合Ｆｓは、前述したように、例えば、ソフトウェアパッケージを構成するファイル集合である。
【００２７】
確認用情報記憶部１２は、ファイルの完全性を確認するために制御部１４（後述）が使用する情報を記憶する。確認用情報記憶部１２は、確認内容情報１２１、照合情報１２２、共通定義情報１２３、項目抽出情報１２４、個別定義情報１２５、条件情報１２６、対応関係情報１２７を有する。
【００２８】
まず、確認内容情報１２１について説明する。図３は、図２に示す確認内容情報１２１のデータ構成の一例を示す図である。確認内容情報１２１は、図３に示すように、確認項目と、その内容とが対応付けられている。ここで、配置されるべきファイル集合は、ソフトウェアパッケージについて、プログラムや設定ファイルの不正な（攻撃、あるいは誤運用による）改ざん、追加、削除などが行われていない状態のファイル集合である。一方、ファイル管理装置３に配置されているファイル集合は、これらの状態を維持していない可能性がある。このため、ファイル管理装置３では、完全性確認を実施する必要性が生じる。
【００２９】
ファイル管理装置３では、完全性の確認内容として、図３に示す確認項目Ａ１〜Ａ３が設定される。具体的には、確認項目Ａ１（第１の確認内容）は、ファイル記憶部１１に配置されるべきファイルが改ざんされていないことである。確認項目Ａ２（第２の確認内容）は、ファイル記憶部１１に配置されるべきファイルが削除されていないことである。確認項目Ａ３（第３の確認内容）は、データベースに配置されるべきでないファイルが追加されていないことである。ファイル管理装置３では、これらの確認項目Ａ１〜Ａ３の全て、或いは、少なくともいずれか一つを確認する。
【００３０】
次に、照合情報１２２について説明する。照合情報１２２は、照合情報１２２は、ファイル管理装置３が、自身が管理するファイル集合に対応する照合情報として生成したものである。照合情報１２２は、リストＢ１（第１のリスト）、リストＢ２（第２のリスト）及びリストＢ３（第３のリスト）から構成されている。このリストＢ１〜Ｂ３について、図４を参照して説明する。
【００３１】
図４は、図２に示す照合情報１２２が有するリストＢ１〜Ｂ３の内容を説明する図である。図４の表１２２ａに示すように、リストＢ１には、ファイル記憶部１１に配置されるべきであるファイルであり、かつ、ファイルデータが変化しないファイルの、ファイルパスとファイルデータのダイジェスト値との組み合わせのリストが示される。ここで、ダイジェスト値は、例えば、ファイルデータのhash値である。hash値とは、元のデータをSHA256等のhash関数で変換した値であり、サイズが小さく、かつ元のデータが変化（改ざん）したらhash値も変化することから、改ざんの判定に用いる。
【００３２】
そして、リストＢ２には、ファイル記憶部１１に配置されるべきファイルであり、かつ、ファイルデータが変化しうるファイルのファイルパスのリストが示される。
【００３３】
また、リストＢ３には、以下のディレクトリ条件ｂ３１〜ｂ３３を満たすディレクトリのディレクトリパスのリストを示す。ディレクトリ条件ｂ３１（第１のディレクトリ条件）は、直下のファイルは同じ照合情報に属するリストＢ１またはリストＢ２に記載のファイルである。条件ｂ３２（第２のディレクトリ条件）は、直下のディレクトリは同じ照合情報に属するリストＢ１またはリストＢ２に記載のファイルを一つ以上配下に配置するディレクトリである。条件ｂ３３（第３のディレクトリ条件）は、直下にディレクトリ条件ｂ３１またはディレクトリ条件ｂ３２に該当しないファイルまたはディレクトリを配置しないことである。
【００３４】
図５は、図２に示す照合情報１２２の一例を示す図である。図５に示すように、照合情報Ｒｘｘは、リストＲｘｘ−Ｂ１〜Ｒｘｘ−Ｂ３を有する。具体的には、リストＲｘｘ−Ｂ１には、ファイルＦ１１〜Ｆ１３のファイルパス「ファイルパス１１〜１３」とファイルデータのダイジェスト値「ダイジェスト値１〜３」との組み合わせが記載されている。ファイルＦ１１〜Ｆ１３は、ファイル記憶部１１に配置されるべきであるファイルであり、かつ、ファイルデータが変化しないファイルである。また、リストＲｘｘ−Ｂ２には、ファイルＦ２１〜２３のファイルパス「ファイルパス２１〜２３」を記載されている。ファイル２１〜Ｆ２３は、ファイル記憶部１１に配置されるべきファイルであり、かつ、ファイルデータが変化しうるファイルである。また、リストＲｘｘ−Ｂ３には、ディレクトリ条件ｂ３１〜ｂ３３を満たすディレクトリパスの「ディレクトリパス１〜３」が記載されている。
【００３５】
次に、共通定義情報１２３について説明する。共通定義情報１２３は、共通定義情報ＤＢ２から取得した共有情報である。共通定義情報１２３は、任意のファイル管理装置において、ファイルの改ざん確認或いは過不足確認の際に照合する照合情報について、該照合情報に記載する可能性のあるファイル及びディレクトリのリストである共通リストを定義する。そして、共通定義情報１２３は、個別のファイル管理装置において、照合情報のファイル及びディレクトリのリストの要素を決定する条件である要素属性を定義する。
【００３６】
図６は、図２に示す共通定義情報１２３が定義する内容を説明する図である。図６の表１２３ａに示すように、共通定義情報１２３では、定義Ｄ１及び定義Ｄ２を定義している。すなわち、定義Ｄ１の内容は、任意のファイル管理装置において、照合情報のリストＢ１，Ｂ２，Ｂ３に記載する可能性のあるファイル、ディレクトリのリストである、共通リストＪ１，Ｊ２，Ｊ３の定義である。定義Ｄ２の内容は、個別のファイル管理装置において、照合情報のリストＢ１，Ｂ２，Ｂ３の要素を決定するための条件である要素属性の定義である。照合情報１２２は、この定義Ｄ１の共通リストＪ１〜Ｊ３に対し、定義Ｄ２の要素属性に基づいて、リストＢ１〜Ｂ３の要素が決定される。
【００３７】
続いて、共通定義情報１２３は、ファイル集合の照合情報のリストＢ１，Ｂ２に記載するファイルの共通リストと、照合情報Ｂ３に記載するディレクトリの共通リストと、を定義する。そして、共通定義情報１２３は、これらのファイル、およびディレクトリに対して、以下で説明する属性Ｅ１〜Ｅ４を要素属性として記載し、定義する。ファイルにはＥ１，Ｅ２，Ｅ３、ディレクトリにはＥ４を定義する。
【００３８】
図７は、図２に示す共通定義情報１２３が定義する要素属性を説明する図である。図７の表１２３ｂに示すように、要素属性としてＥ１〜Ｅ４が定義される。まず、要素属性Ｅ１は、照合情報１２２のリストＢ１，Ｂ２の共通リストに記載のファイルがファイル管理装置に配置することが必須であることを示す第１フラグ（Ｔ）或いは必須でないことを示す第２フラグ（Ｆ）を定義する必須フラグを定義する。要素属性Ｅ２は、照合情報１２２のリストＢ１，Ｂ２の共通リストに記載のファイルのファイルパス表記の作成条件であるファイルパス条件を定義する。要素属性Ｅ３は、照合情報のリストＢ１の共通リストに記載のファイルのうち配置にあたってファイルデータを変更できないファイルのダイジェスト値を定義する。要素属性Ｅ４は、照合情報のリストＢ３の共通リストに記載のディレクトリのディレクトリパス表記の作成条件であるディレクトリパス条件を定義する。
【００３９】
共通定義情報１２３の具体例について説明する。図８は、図２に示す共通定義情報１２３の一例を示す図である。図８に共通定義情報Ｇｘは、共通リストＪ１〜Ｊ３を有する。
【００４０】
共通リストＪ１は、照合情報１２２のリストＢ１に記載するファイルの共通リストである。この共通リストＪ１には、各ファイルそれぞれの要素属性として、ファイルパス条件（要素属性Ｅ２）、ダイジェスト値（要素属性Ｅ３）、必須フラグ（要素属性Ｅ１）が共通属性Ｈ１として対応付けられている。具体的には、共通リストＪ１では、ファイル「＃１１」には、「ファイルパス条件１１」、「ダイジェスト値１１」、「必須フラグ１１＝Ｔ」が対応する。共通リストＪ１では、ファイル「＃１２」には、「ファイルパス条件１２」、「ダイジェスト値１２」、「必須フラグ１２＝Ｆ」が対応する。
【００４１】
共通リストＪ２は、照合情報１２２のリストＢ２に記載するファイルの共通リストである。この共通リストＪ２には、各ファイルそれぞれの要素属性として、ファイルパス条件（要素属性Ｅ２）及び必須フラグ（要素属性Ｅ１）が共通属性Ｈ２として対応付けられている。具体的には、共通リストＪ２では、ファイル「＃２１」には、「ファイルパス条件２１」、「必須フラグ２１＝Ｔ」が対応する。共通リストＪ２では、ファイル「＃２２」には、「ファイルパス条件２２」、「必須フラグ２２＝Ｆ」が対応する。
【００４２】
共通リストＪ３は、照合情報１２２のリストＢ３に記載するディレクトリの共通リストである。この共通リストＪ３には、各ディレクトリそれぞれの要素属性として、ディレクトリパス条件（要素属性Ｅ４）が共通属性Ｈ３として対応付けられている。具体的には、共通リストＪ３では、ディレクトリ「＃３１」には、「ディレクトリパス条件３１」が対応する。共通リストＪ３では、ディレクトリ「＃３２」には、「ディレクトリパス条件３２」が対応する。
【００４３】
次に、項目抽出情報１２４について説明する。項目抽出情報１２４は、共通定義情報１２３からの抽出項目を示す情報である。抽出項目は、当該ファイル管理装置３の個別情報として定義すべき項目とすべき内容である。図９は、図２に示す項目抽出情報１２４について説明する図である。図９の表１２４ａに示すように、項目抽出情報１２４は、共通定義情報１２３の各対象からの抽出内容を示すものであり、抽出対象と、該抽出対象からの抽出内容とが対応付けられている。
【００４４】
例えば、共通定義情報１２３において照合情報１２２のリストＢ１に記載することを定義したファイルが対象である場合には、抽出内容は、次の３つである。１つ目は、要素属性Ｅ１である必須フラグが「Ｆ」のファイルである。２つ目は、配置するファイルについて要素属性Ｅ２であるファイルパス条件を満たすファイルパス表記のうちファイル管理装置３で個別に決定する要素である。３つ目は、配置するファイルについて要素属性Ｅ３のダイジェスト値が定義されていないファイルのダイジェスト値である。
【００４５】
そして、共通定義情報１２３において照合情報１２２のリストＢ２に記載することを定義したファイルが対象である場合には、抽出内容は、次の２つである。１つ目は、要素属性Ｅ１である必須フラグが「Ｆ」のファイルである。２つ目は、配置するファイルについて要素属性Ｅ２であるファイルパス条件を満たすファイルパス表記のうちファイル管理装置３で個別に決定する要素である。
【００４６】
また、共通定義情報１２３において照合情報１２２のリストＢ３に記載することを定義したディレクトリが対象である場合には、抽出内容は、配置するファイルについて、要素属性でＥ２のファイルパス条件を満たすディレクトリパス表記のうち、ファイル管理装置で個別に決定する要素である。個別定義項目抽出部１４５（後述）が、この項目抽出情報１２４にしたがって共通定義情報１２３の対象となるファイル或いはディレクトリから項目を抽出し、個別定義情報１２５の項目として定義する。
【００４７】
次に、個別定義情報１２５について説明する。個別定義情報１２５は、項目抽出情報１２４にしたがって共通定義情報１２３から抽出された項目について、ファイル管理装置３に応じて個別に備えるべき条件を示す情報である。例えば、個別定義情報１２５は、外部から入力される情報である。具体的には、個別定義情報１２５は、ファイル管理装置３の管理者による入力部１５の操作によって外部から入力される。もちろん、これに限らず、個別定義情報１２５は、通信部１３を介して外部から入力されもよい。図１０は、図２に示す個別定義情報１２５を説明する図である。図１０の表１２５ａに示すように、個別定義情報１２５は、入力対象に対する入力内容が対応付けられている。
【００４８】
具体的には、共通定義情報１２３において照合情報１２２のリストＢ１に記載することを定義したファイルが対象である場合には、入力内容は、３つである。１つ目は、要素属性Ｅ１である必須フラグが「Ｆ」のファイルの配置の有無である。２つ目は、配置するファイルについて要素属性Ｅ２であるファイルパス条件を満たすファイルパス表記のうちファイル管理装置３で個別に決定する要素の値である。３つ目は、配置するファイルについて要素属性Ｅ３のダイジェスト値が定義されていないファイルのダイジェスト値である。
【００４９】
そして、共通定義情報１２３において照合情報１２２のリストＢ２に記載することを定義したファイルが対象である場合には、入力内容は、次の２つである。１つ目は、要素属性Ｅ１である必須フラグが「Ｆ」のファイルの配置の有無である。２つ目は、配置するファイルについて要素属性Ｅ２であるファイルパス条件を満たすファイルパス表記のうちファイル管理装置３で個別に決定する要素の値である。
【００５０】
また、共通定義情報１２３において照合情報１２２のリストＢ３に記載することを定義したディレクトリが対象である場合には、入力内容は、配置するファイルについて、要素属性Ｅ２であるファイルパス条件を満たすディレクトリパス表記のうち、ファイル管理装置３で個別に決定する要素であるの値である。この個別定義情報１２５は、個別定義情報入力部１４６（後述）によって取得される。そして、共通定義情報１２３と個別定義情報１２５とを基に照合情報１２２が生成される。
【００５１】
個別定義情報１２５の具体例について説明する。図１１は、図２に示す個別定義情報１２５の一例を示す図である。図１１に示す個別定義情報Ｌｘｘは、リストＷｃ１〜Ｗｃ３を有する。
【００５２】
個別定義情報ＬｘｘのリストＷｃ１は、共通定義情報Ｇｘにおいて照合情報１２２のリストＢ１に記載することを定義したファイルに対して、ファイル管理装置３に応じて個別に備えるべき各条件、すなわち、図１０の表１２５ａに示す１段目に記載の入力内容、を示すリストである。
【００５３】
例えば、リストＷｃ１には、ファイル「＃１１」〜「＃１６」に対して、ファイルに応じたファイルパス表記、ダイジェスト値或いはファイルの配置の要否が対応付けられている。具体的には、リストＷｃ１では、１行目に、ファイル「＃１１」に対応するファイルパス表記である「ファイルパス表記（個別要素）１１」が示されている（列Ｌｃ１１参照）。また、２行目には、ファイル「＃１２」に対応するファイルパス表記である「ファイルパス表記（個別要素）１２」と、ファイル「＃１２」についての配置の要否である「配置要」（列Ｌｃ１３参照）とが示されている。また、４行目には、ファイル「＃１４」に対応するファイルパス表記である「ファイルパス表記（個別要素）１４」と、ファイル「＃１４」の「ダイジェスト値１４」（列Ｌｃ１２参照）とが示されている。
【００５４】
個別定義情報ＬｘｘのリストＷｃ２は、共通定義情報Ｇｘにおいて照合情報１２２のリストＢ２に記載することを定義したファイルに対して、ファイル管理装置３に応じて個別に備えるべき各条件、すなわち、図１０の表１２５ａに示す２段目に記載の入力内容、を示すリストである。
【００５５】
例えば、リストＷｃ２には、ファイル「＃２１」〜「＃２３」に対して、ファイルに応じたファイルパス表記或いはファイルの配置の要否が対応付けられている。具体的には、リストＷｃ２では、１行目に、ファイル「＃２１」に対応するファイルパス表記である「ファイルパス表記（個別要素）２１」が示されている（列Ｌｃ２１参照）。また、２行目には、ファイル「＃２２」に対応するファイルパス表記である「ファイルパス表記（個別要素）２２」と、ファイル「＃２２」についての配置の要否である「配置要」（列Ｌｃ２２参照）とが示されている。
【００５６】
個別定義情報ＬｘｘのリストＷｃ３は、共通定義情報Ｇｘにおいて照合情報１２２のリストＢ３に記載することを定義したディレクトリに対して、ファイル管理装置３に応じて個別に備えるべき各条件、すなわち、図１０の表１２５ａに示す３段目に記載の入力内容、を示すリストである。
【００５７】
例えば、リストＷｃ３には、ディレクトリ「＃３１」，「＃３２」に対して、ディレクトリに応じて、ディレクトリパス表記が対応付けられている。具体的には、リストＷｃ３では、１行目に、ディレクトリ「＃３１」に対応するディレクトリパス表記である「ディレクトリパス表記（個別要素）３１」が示されている（列Ｌｃ３１参照）。また、２行目には、ディレクトリ「＃３２」に対応するディレクトリパス表記である「ディレクトリパス表記（個別要素）３２」が示されている。
【００５８】
次に、条件情報１２６について説明する。条件情報１２６は、ファイル記憶部１１に配置されたファイル集合Ｆｓと照合情報１２２とを照合し、確認内容を満たすか否かを判定する際にファイル管理装置３が用いる照合条件を示す情報である。
【００５９】
図１２は、図２に示す条件情報１２６について説明する図である。図１２に示すように、ファイル管理装置３は、照合条件として、照合条件Ｃ１（第１の照合条件）、照合条件Ｃ２（第２の照合条件）、照合条件Ｃ３（第３の照合条件）を用いる。
【００６０】
照合条件Ｃ１は、リストＢ１が示すファイルパスとファイルデータのダイジェスト値との組み合わせに一致する全てのファイルがファイル管理装置３に配置されていることである。照合条件Ｃ２は、リストＢ２が示すファイルパスに一致する全てのファイルがファイル管理装置３に配置されていることである。そして、照合条件Ｃ３は、リストＢ３が示すディレクトリパスに一致する全てのディレクトリがファイル管理装置３に配置されており該ディレクトリの直下にはディレクトリ条件ｂ３１またはディレクトリ条件ｂ３２に該当しないファイルまたはディレクトリが配置されてないことである。ファイル管理装置３は、照合条件Ｃ１〜Ｃ３の少なくとも一つを満たすか否かを判定する。
【００６１】
対応関係情報１２７は、確認項目Ａ１〜Ａ３と、そのために要する照合情報１２２のリストＢ１〜Ｂ３との対応関係を示す情報である。対応関係情報１２７は、確認項目Ａ１〜Ａ３の全てを確認する場合には、リストＢ１〜Ｂ３の全てを必要であることが示す。また、確認項目Ａ１〜Ａ３のいずれかを確認する場合には、リストＢ１〜Ｂ３の一部のみで足りることを示す。
【００６２】
このため、ファイル管理装置３は、対応関係情報１２７を参照し、確認項目Ａ１〜Ａ３の確認の有無に応じて必要となるリストＢ１〜Ｂ３のみを、共有情報ＤＢ２内の共有情報Ｒｓ１〜Ｒｓ３から取得すればよい。すなわち、ファイル管理装置３は、共有情報ＤＢ２内の共有情報Ｒｓ１〜Ｒｓ３のうち、自身が確認する確認項目で用いるリストを取得すればよい。なお、本実施の形態では、ファイル管理装置３が確認項目Ａ１〜Ａ３の全てを確認する場合を例に説明する。
【００６３】
通信部１３は、ネットワーク等を介して接続された他の装置との間で、各種情報を送受信する通信インタフェースである。通信部１３は、ＮＩＣ（Network  Interface  Card）等で実現され、ＬＡＮ（Local  Area  Network）やインターネットなどの電気通信回線を介した他の装置（例えば、共通定義情報ＤＢ２）と制御部１４（後述）との間の通信を行う。例えば、通信部１３は、共通定義情報ＤＢ２から送信された共通定義情報Ｇ１〜Ｇ３を受信し、ファイル管理装置３による確認結果をファイル改ざんやファイル削除等に対する外部の対応装置に出力する。
【００６４】
制御部１４は、ファイル管理装置３全体を制御する。制御部１４は、例えば、ＣＰＵ（Central  Processing  Unit）、ＭＰＵ（Micro  Processing  Unit）等の電子回路や、ＡＳＩＣ（Application  Specific  Integrated  Circuit）、ＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路である。また、制御部１４は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。また、制御部１４は、各種のプログラムが動作することにより各種の処理部として機能する。制御部１４は、ファイル管理部１４１、照合情報生成部１４２及びファイル確認部１４３を有する。
【００６５】
ファイル管理部１４１は、管理対象のファイル記憶部１１のファイルについて、ファイルパスによってファイルデータを識別し、ディレクトリによってファイルパスを分類し、ディレクトリパスによってディレクトリを識別する。
【００６６】
照合情報生成部１４２は、共有の共通定義情報１２３と個別定義情報１２５とを基に、ファイル管理装置３で使用する照合情報１２２を生成する。照合情報生成部１４２は、共通定義情報取得部１４４、個別定義項目抽出部１４５、個別定義情報入力部１４６及び生成部１４７を有する。
【００６７】
共通定義情報取得部１４４は、共通定義情報ＤＢ２が記憶する共有の共通定義情報の少なくとも一部を取得する。共通定義情報取得部１４４は、ファイル記憶部１１に配置されているファイル集合Ｆｓに応じた共通定義情報１２３を、ネットワーク等を経由して、外部の共通定義情報ＤＢ２からダウンロードすることによって取得する。或いは、共通定義情報取得部１４４は、ファイル管理装置３の管理者によるファイル等の入力によって、共通定義情報１２３を取得する。共通定義情報取得部１４４は、取得した共通定義情報１２３を確認用情報記憶部１２に記憶する。
【００６８】
個別定義項目抽出部１４５は、共通定義情報取得部１４４が取得した共通定義情報１２３から、個別定義情報１２５として定義すべき項目を抽出する。個別定義項目抽出部１４５は、項目抽出情報１２４にしたがって、共通定義情報１２３からの項目抽出を行う。抽出する項目は、前述した図９の表１２４ａに示す項目であり、照合情報１２２の各リストＢ１〜Ｂ３に記載することを定義したファイル或いはディレクトリについて、それぞれ設定されている。各項目の説明は、図９を用いて説明しているため省略する。
【００６９】
個別定義情報入力部１４６は、個別定義項目抽出部１４５が共通定義情報１２３から抽出した項目について、個別定義情報の入力を受付ける。入力を受付ける情報の内容は、前述した図１０の表１２５ａに示す項目であり、照合情報１２２の各リストＢ１〜Ｂ３に記載することを定義したファイル或いはディレクトリについて、それぞれ設定されている。各入力情報の説明は、図１０を用いて説明しているため省略する。個別定義情報入力部１４６が入力を受付けた情報に基づく個別定義情報１２５は、例えば、図１１に示す個別定義情報Ｌｘｘである。個別定義情報入力部１４６は、取得した個別定義情報１２５を確認用情報記憶部１２に記憶する。
【００７０】
個別定義情報入力部１４６は、画面に各抽出項目と、その値等の入力欄とを示す操作画面を、ファイル管理装置３の管理者に提示する。この際、例えば、ＸＭＬ（Extensible  Markup  Language）などの構造化されたファイル形式、或いはグラフカルなＵＩ（User  Interface）を用いられる。そして、個別定義情報入力部１４６は、ファイル管理装置３の管理者による入力部１５（後述）の操作によって各入力欄に入力された情報を受付けることによって、個別定義情報１２５を取得する。または、個別定義情報入力部１４６は、通信部１３を介して、各抽出項目に対しての値等の送信要求を外部装置に出力する。そして、個別定義情報入力部１４６は、この送信要求に応じて外部装置から送信された各情報を受信することによって、個別定義情報１２５を取得してもよい。
【００７１】
生成部１４７は、共通定義情報１２３の共通リスト及び要素属性に基づいて、照合情報１２２を生成する。生成部１４７は、ファイル管理装置３に配置されるべきファイル集合に対して、共有の共通定義情報１２３と、当該ファイル管理装置３に応じて個別に備えるべき条件を示す個別定義情報１２５とをともに満たす照合情報１２２を生成する。
【００７２】
生成部１４７は、共通定義情報１２３と個別定義情報１２５とを基に、照合情報１２２のリストＢ１〜Ｂ３へ配置するファイルを決定し、リストＢ１〜Ｂ３に記載するファイルパス、ダイジェスト値、ディレクトリパスを決定する。個別定義情報としてダイジェスト値の代わりにファイルデータが入力された場合、生成部１４７は、リストＢ１に配置するファイルのファイルデータのダイジェスト値の計算も行う。生成部１４７は、生成した照合情報１２２をファイルとして確認用情報記憶部１２に記憶する。或いは、生成部１４７は、生成した照合情報１２２を、ファイル管理装置３で稼働する完全性確認機能、すなわち、ファイル確認部１４３に直接インポートしてもよい。
【００７３】
ファイル確認部１４３は、共有の照合情報の少なくとも一部を用いてファイル記憶部１１のファイルの完全性を確認する。ファイル確認部１４３は、確認対象のファイル集合に応じて、確認のために用いる照合情報を決定し、ファイル記憶部１１に配置されているファイルの完全性を確認する。ファイル確認部１４３は、照合部１４８及び確認部１４９を有する。
【００７４】
照合部１４８は、ファイル記憶部１１に配置されたファイルのファイルパス及び照合情報１２が示すファイルパス、ファイル記憶部１１に配置されたファイルのファイルデータのダイジェスト値及び照合情報１２２が示すファイルデータのダイジェスト値、及び、ファイル記憶部１１に配置されたファイルのディレクトリパス及び照合情報１２２が示すディレクトリパス、のいずれか一つを照合する。そして、照合部１４８は、照合条件Ｃ１、照合条件Ｃ２、或いは、照合条件Ｃ３の少なくとも一つを満たすか否かを判定する。
【００７５】
確認部１４９は、照合部１４８による照合結果を基に、確認項目Ａ１〜Ａ３の少なくともいずれか一つを確認する。確認部１４９は、ファイル記憶部１１に配置されたファイルについて、照合条件Ｃ１を満たす場合には確認項目Ａ１を満たすと判定し、照合条件Ｃ１かつ照合条件Ｃ２を満たす場合には確認項目Ａ２を満たすと判定し、照合条件Ｃ３を満たす場合には確認項目Ａ３を満たすと判定する。本実施の形態では、ファイル管理装置３が、管理対象のファイル集合のファイルについて、照合条件Ｃ１〜Ｃ３全てを判定し、確認項目Ａ１〜Ａ３の全てを確認する場合を例に説明する。
【００７６】
入力部１５は、ファイル管理装置３の管理者からの各種操作を受け付ける入力インタフェースである。例えば、入力部１５は、タッチパネル、音声入力デバイス、キーボードやマウス等の入力デバイスによって構成される。出力部１６は、例えば、液晶ディスプレイなどの表示装置、プリンタ等の印刷装置、情報通信装置等によって実現され、ファイル管理処理に関する情報を出力する。
【００７７】
［生成部の処理］
次に、生成部１４７による照合情報１２２の処理について説明する。図１３は、図２に示す生成部１４７による照合情報１２２の生成処理を説明する図である。
【００７８】
図１３は、左側に共通定義情報Ｇｘ、中央に個別定義情報Ｌｘｘ、右側に照合情報Ｒｘｘを示す。共通定義情報Ｇｘは、共通定義情報取得部１４４によって取得されたものである。個別定義情報Ｌｘｘは、個別定義項目抽出部１４５が共通定義情報Ｇｘから抽出した項目に対してファイル管理装置３において個別に備えるべき条件として個別定義情報入力部１４６が受け付けた情報に基づくものである。照合情報Ｒｘｘは、個別定義情報Ｌｘｘと照合情報Ｒｘｘとを基に、個別定義情報Ｌｘｘと照合情報Ｒｘｘとをともに満たすように生成部１４７によって生成されたものである。
【００７９】
まず、生成部１４７が照合情報ＲｘｘのリストＢ１を作成する場合について説明する。この場合には、生成部１４７は、共通定義情報Ｇｘの共通リストＪ１において照合情報ＲｘｘのリストＢ１に記載を定義されたファイルについて、個別定義情報ＬｘｘのリストＷｃ１を参照して以下の決定処理を行う。
【００８０】
生成部１４７は、共通定義情報Ｇｘの共通リストＪ１において、要素属性Ｅ１である必須フラグとして「Ｆ」が付されたファイルに対し、個別定義情報ＬｘｘのリストＷｃ１を参照して、配置するか否かを決定する。
【００８１】
例えば、共通定義情報Ｇｘのフラグ「Ｆ」であるファイル「＃１２」，「＃１５」については、個別定義情報ＬｘｘのリストＷｃ１では「配置要」とされているため、生成部１４７は、ファイル「＃１２」，「＃１５」をリストＢ１に配置することを決定する。これに対し、共通定義情報Ｇｘのフラグ「Ｆ」であるファイル「＃１３」については、生成部１４７は、個別定義情報ＬｘｘのリストＷｃ１では「配置不要」とされているため、ファイル「＃１３」をリストＢ１に配置しないことを決定する。
【００８２】
そして、生成部１４７は、配置を決定したフラグ「Ｆ」が付されたファイルとフラグ「Ｔ」が付されたファイルとをリストＢ１のファイルとする。具体的には、生成部１４７は、配置を決定したフラグ「Ｆ」のファイル「＃１２」，「＃１５」と、フラグ「Ｔ」のファイル「＃１１」，「＃１４」をリストＢ１のファイルに決定する。
【００８３】
続いて、生成部１４７は、これらのファイルについて、共通定義情報Ｇｘの共通リストＪ１の要素属性Ｅ２であるファイルパス条件を満たすファイルパス表記を決定する。そして、生成部１４７は、決定した表記にしたがって記載したファイルパスをリストＢ１のファイルパスとして記載する。
【００８４】
すなわち、生成部１４７は、ファイル「＃１１」，「＃１２」，「＃１４」，「＃１５」について、個別定義情報ＬｘｘのリストＷｃ１の「ファイルパス表記（個別要素）１１，１２，１４，１５」を、共通定義情報Ｇｘの「ファイルパス条件１１，１２，１４，１５」を満たすファイルパス表記「ファイルパス１１，１２，１４，１５」に決定し、照合情報ＲｘｘのリストＢ１に記載する。
【００８５】
そして、生成部１４７は、配置するファイルについて、共通定義情報Ｇｘの共通リストＪ１に、要素属性Ｅ３であるダイジェスト値が定義されていないファイルについては、ファイルデータのhash値を計算する。生成部１４７は、計算したhash値をダイジェスト値として決定する。そして、生成部１４７は、該決定したダイジェスト値をリストＢ１のダイジェスト値とする。
【００８６】
例えば、ファイル「＃１４」，「＃１５」のダイジェスト値は、共通定義情報Ｇｘの共通リストＪ１に示されていない。このため、生成部１４７は、ファイル「＃１４」，「＃１５」のファイルデータのhash値を計算し、計算したhash値を、ファイル「＃１４」，「＃１５」の「ダイジェスト値１４，１５」として決定する。そして、生成部１４７は、照合情報ＲｘｘのリストＢ１に、ファイル「＃１４」，「＃１５」のダイジェストとして、「ダイジェスト値１４，１５」を記載する。なお、ファイル「＃１１」，「＃１２」については、共通定義情報Ｇｘの共通リストＪ１に記載されてため、生成部１４７は、照合情報ＲｘｘのリストＢ１に「ダイジェスト値１１，１２」を記載する。
【００８７】
次に、生成部１４７が照合情報ＲｘｘのリストＢ２を作成する場合について説明する。生成部１４７は、共通定義情報Ｇｘの共通リストＪ２において照合情報ＲｘｘのリストＢ２に記載を定義されたファイルについて、個別定義情報ＬｘｘのリストＷｃ２を参照して以下の決定処理を行う。
【００８８】
生成部１４７は、照合情報ＲｘｘのリストＢ１の場合と同様に、共通定義情報Ｇｘの共通リストＪ２において、要素属性Ｅ１である必須フラグとして「Ｆ」が付されたファイルに対し、個別定義情報ＬｘｘのリストＷｃ２を参照して、配置するか否かを決定する。
【００８９】
例えば、共通定義情報Ｇｘのフラグ「Ｆ」であるファイル「＃２２」については、個別定義情報ＬｘｘのリストＷｃ２では「配置要」とされているため、生成部１４７は、ファイル「＃２２」をリストＢ２に配置することを決定する。これに対し、共通定義情報Ｇｘのフラグ「Ｆ」であるファイル「＃２３」については、生成部１４７は、個別定義情報Ｗｃ１では「配置不要」とされているため、ファイル「＃２３」をリストＢ２に配置しないことを決定する。
【００９０】
そして、生成部１４７は、配置を決定したフラグ「Ｆ」が付されたファイルとフラグ「Ｔ」が付されたファイルとをリストＢ２のファイルとする。具体的には、生成部１４７は、配置を決定したフラグ「Ｆ」のファイル「＃２２」と、フラグ「Ｔ」のファイル「＃２１」をリストＢ２のファイルに決定する。
【００９１】
続いて、生成部１４７は、これらのファイルについて、共通定義情報Ｇｘの共通リストＪ２のファイルパス条件を満たすファイルパス表記を決定する。そして、生成部１４７は、決定した表記にしたがって記載したファイルパスをリストＢ２のファイルパスとして記載する。
【００９２】
すなわち、生成部１４７は、ファイル「＃２１」，「＃２２」について、個別定義情報ＬｘｘのリストＷｃ２の「ファイルパス表記（個別要素）２１，２２」を、共通定義情報Ｇｘの「ファイルパス条件２１，２２」を満たすファイルパス表記「ファイルパス２１，２２」に決定し、照合情報ＲｘｘのリストＢ２に記載する。
【００９３】
次に、生成部１４７が照合情報ＲｘｘのリストＢ３を作成する場合について説明する。生成部１４７は、共通定義情報Ｇｘの共通リストＪ３において照合情報ＲｘｘのリストＢ３に記載を定義されたディレクトリについて、個別定義情報ＬｘｘのリストＷｃ３を参照して以下の決定処理を行う。
【００９４】
この場合、生成部１４７は、共通定義情報Ｇｘの共通リストＪ３のディレクトリパス条件を満たすディレクトリパス表記を決定し、決定した表記にしたがって記載したディレクトリパスを照合情報ＲｘｘのリストＢ３のディレクトリパスとする。
【００９５】
すなわち、生成部１４７は、ディレクトリ「＃３１」，「＃３２」について、個別定義情報ＬｘｘのリストＷｃ３の「ディレクトリパス表記（個別要素）３１，３２」を、共通定義情報Ｇｘの「ディレクトリパス条件３１，３２」を満たすディレクトリパス表記「ディレクトリパス３１，３２」に決定し、照合情報ＲｘｘのリストＢ３に記載する。
【００９６】
［照合部の処理］
次に、照合部１４８の処理について説明する。図１４及び図１５は、図２に示す照合部１４８の処理を説明する図である。図１４のように、照合部１４８は、まず、確認に用いる照合情報Ｒｘｘを決定し、この照合情報Ｒｘｘを用いて、確認項目Ａ１〜Ａ３に対する確認結果を出力する場合を例に説明する。例えば、照合部１４８は、ファイル管理装置３に配置されている確認対象のファイルが、照合情報Ｒｘｘに記載の条件をすべて満たすか否かを確認する。
【００９７】
ここで、確認対象のファイルとディレクトリとの配置は、図１５右の枠Ｗ２内に示すとおりである。具体的には、ファイルｆ１，ｆ２は、データ改ざん確認（確認項目Ａ１）対象であり、かつ、ディレクトリｄ１直下の過不足確認（確認項目Ａ２）対象のファイルである。ファイルｆ３は、ディレクトリｄ１直下の過不足確認（確認項目Ａ２）対象のファイルである。ディレクトリｄ１は、過不足確認（確認項目Ａ３）対象のディレクトリである。ファイルｆ４は、ファイル完全性確認対象外のファイルである。
【００９８】
そして、このような配置を有するファイル集合に対して設定された照合情報Ｒｘｘの一例を、図１５左の枠Ｗ１内に示す。図１５に示すように、照合情報Ｒｘｘでは、リストＢ１に、データ改ざん確認対象のファイルｆ１，ｆ２のファイルパスとディレクト値との組み合わせが記載される。照合情報Ｒｘｘでは、リストＢ２に過不足確認対象のファイルｆ３のファイルパスが記載され、リストＢ３に過不足確認対象のディレクトリｄ１のディレクトリパスが記載される。なお、枠Ｗ２内のディレクトリｄ２は、直下にリストＢ１，Ｂ２不記載のファイルｆ４を配置するため、リストＢ３には記載されない。なお、アプリケーションの正常な動作の結果、直下のファイルが増減する可能性もあるため、直下にリストＢ１，Ｂ２記載のファイルのみを配置するディレクトリを必ずリストＢ３に記載するとは限らない。
【００９９】
照合部１４８は、照合情報Ｒｘｘの各リストの記載内容と、ファイルｆ１〜ｆ４のファイルパス、ダイジェスト値及びディレクトリと、を照合する（矢印Ｙ１０参照）。そして、確認部１４９は、照合結果を基に、確認対象のファイルが確認項目Ａ１〜Ａ３の全てを満たすか否かを確認する。
【０１００】
ここで、照合部１４８の具体的な処理について説明する。まず、照合部１４８は、確認対象のうちリストＢ１に記載のファイルｆ１，ｆ２について、照合条件Ｃ１を満たすか否かを判定する。この場合、照合部１４８は、ファイル管理装置３に、照合情報ＲｘｘのリストＢ１に記載のファイルパス「/d1/f1」が配置されているか否かを確認する。照合部１４８は、図１５の例の場合、照合情報ＲｘｘのリストＢ１に記載のファイルパス「/d1/f1」がファイル管理装置３に配置されている。このため、照合部１４８は、ファイル管理装置３の「/d1/f1」ファイルのhash値を算出し、照合情報ＲｘｘのリストＢ１に記載のダイジェスト値「データ１」と照合する。
【０１０１】
続いて、照合部１４８は、ファイル管理装置３に、照合情報ＲｘｘのリストＢ１に記載のファイルパス「/d1/f2」が配置されていることを確認し、配置されていることを確認すると、ファイル管理装置３の「/d1/f2ファイル」のhash値を算出し、照合情報ＲｘｘのリストＢ１に記載のダイジェスト値「データ２」と照合する。照合部１４８は、いずれについても算出したhash値とリストＢ１のダイジェスト値とが一致していた場合には、照合条件Ｃ１を満たすと判定する。
【０１０２】
次に、照合部１４８は、確認対象のうちリストＢ２に記載のファイルｆ３について、照合条件Ｃ２を満たすか否かを判定する。この場合、照合部１４８は、ファイル管理装置３に、照合情報ＲｘｘのリストＢ２に記載のファイルパス「/d1/d2/f3」が配置されていることを確認する。図１５の例では、照合部１４８は、照合情報ＲｘｘのリストＢ２に記載のファイルパス「/d1/d2/f3」が配置されていることを確認できるため、照合条件Ｃ２を満たすと判定する。
【０１０３】
次に、照合部１４８は、リストＢ３に記載のディレクトリパス「/d1」について、照合条件Ｃ３を満たすか否かを判定する。この場合、照合部１４８は、照合情報ＲｘｘのリストＢ３に記載のディレクトリパス「/d1」がファイル管理装置３に配置されていることを確認する。図１５の例では、照合情報ＲｘｘのリストＢ３に記載のディレクトリパス「/d1」がファイル管理装置３に配置されていることが確認できる。
【０１０４】
そして、ファイル管理装置３上の「/d1」直下のファイル｛d1/f1,d1/f2｝について、照合部１４８は、以下を確認する。まず、照合部１４８は、「/d1」直下のファイル「/d1/f1」，「/d1/f2」が、照合情報ＲｘｘのリストＢ１またはリストＢ２に記載のファイルであるか否かを判定する。図１５の例では、「/d1」直下のファイル「/d1/f1」，「/d1/f2」はいずれも、照合情報ＲｘｘのリストＢ１に記載のファイルパスである。このため、照合部１４８は、「/d1」直下のファイル「/d1/f1」，「/d1/f2」が、照合情報ＲｘｘのリストＢ１に記載のファイルであると判定できる。
【０１０５】
続いて、照合部１４８は、「/d1」直下のディレクトリ「/d1/d2」について、照合情報ＲｘｘのリストＢ１またはリストＢ２に記載のファイルを、配下に配置するディレクトリパスであることを確認する。図１５の場合には、ディレクトリ「/d1/d2」の配下にはリストＢ２に記載のファイルｆ３が配置されるため、「/d1」直下のディレクトリ「/d1/d2」について、照合情報ＲｘｘのリストＢ２に記載のファイルを、配下に配置するディレクトリパスであることを確認できる。すなわち、図１５の例では、ディレクトリ「/d1」直下のファイルは、いずれもディレクトリ条件ｂ３１，ｂ３２を満たすため、照合部１４８は、照合条件Ｃ３を満たすと判定する。照合部１４８は、以上の照合結果を確認部１４９に出力する。
【０１０６】
［確認部の処理］
次に、図１５の例の場合に対する確認部１４９の処理について説明する。確認部１４９は、照合部１４８の照合結果を基に、確認項目Ａ１〜Ａ３について確認を行う。
【０１０７】
まず、確認部１４９は、ファイル管理装置３に配置されたファイルが、照合情報ＲｘｘのリストＢ１記載の全てのリストについて、照合条件Ｃ１を満たす場合には、確認項目Ａ１を満たすと判定する。すなわち、確認部１４９は、配置されるべきファイルが改ざんされてないと判定する。一方、確認部１４９は、ファイル管理装置３に配置されたファイルが、照合情報ＲｘｘのリストＢ１記載の全てのリストについて、照合条件Ｃ１を満たさない場合には、確認項目Ａ１を満たしていないと判定する。すなわち、確認部１４９は、配置されるべきファイルが改ざんされていると判定する。
【０１０８】
続いて、確認部１４９は、ファイル管理装置３に配置されたファイルが、照合情報ＲｘｘのリストＢ１記載の全てのリストについて照合条件Ｃ１を満たし、かつ、照合情報ＲｘｘのリストＢ２記載の全てのリストについて照合条件Ｃ２を満たす場合には、確認項目Ａ２を満たすと判定する。すなわち、確認部１４９は、配置されるべきファイルが削除されてないと判定する。一方、確認部１４９は、ファイル管理装置３に配置されたファイルが、照合情報ＲｘｘのリストＢ１記載の全てのリストについて照合条件Ｃ１を満たしていない、または、照合情報ＲｘｘのリストＢ２記載の全てのリストについて照合条件Ｃ２を満たしていない場合には、確認項目Ａ２を満たさないと判定する。すなわち、確認部１４９は、配置されるべきファイルが削除されていると判定する。
【０１０９】
そして、確認部１４９は、ファイル管理装置３に配置されたファイルが、照合情報ＲｘｘのリストＢ３記載の全てのリストについて、照合条件Ｃ３を満たす場合には、確認項目Ａ３を満たすと判定する。すなわち、確認部１４９は、配置されるべきでないファイルが追加されてないと判定する。一方、確認部１４９は、ファイル管理装置３に配置されたファイルが、照合情報ＲｘｘのリストＢ３記載の全てのリストについて、照合条件Ｃ３を満たしていない場合には、確認項目Ａ３を満たさないと判定する。すなわち、確認部１４９は、配置されるべきでないファイルが追加されていると判定する。
【０１１０】
なお、ファイル管理装置３は、複数の照合情報Ｒｘ１，Ｒｘ２，Ｒｘ３を登録しておき、複数の照合情報に対して順次または同時に照合及び確認を実施してもよい。また、ファイル管理装置３は、一つまたは複数の照合情報に対する完全性確認の順序や時刻をスケジューラ機能などに事前登録し、自動的に照合処及び確認を実施してもよい。また、ファイル管理装置３は、確認結果に基づきログやアラームなどを生成する他、エラーとなったファイルに対するアクセスを禁止する等の対処を取ってもよい。
【０１１１】
［照合情報の生成処理の処理手順］
次に、ファイル管理装置３による照合情報の生成処理の処理手順について説明する。図１６は、実施の形態に係る照合情報の生成処理の処理手順のフローチャートである。
【０１１２】
図１６に示すように、まず、共通定義情報取得部１４４は、共通定義情報ＤＢ２が記憶する共有の共通定義情報の少なくとも一部を取得する（ステップＳ１）。そして、個別定義項目抽出部１４５は、共通定義情報取得部１４４が取得した共通定義情報１２３から、個別定義情報１２５として定義すべき項目を抽出する（ステップＳ２）。個別定義情報入力部１４６は、個別定義項目抽出部１４５が共通定義情報１２３から抽出した項目を提示して（ステップＳ３）、個別定義情報の入力を受付ける（ステップＳ４）。
【０１１３】
そして、生成部１４７は、共通定義情報１２３の共通リスト及び要素属性に基づき、個別定義情報１２５を参照し、照合情報１２２を生成する生成処理を行う（ステップＳ５）。生成部１４７は、生成した照合情報１２２を出力する（ステップＳ６）。
【０１１４】
［照合情報生成処理の処理手順］
次に、照合情報生成処理（ステップＳ５）の処理手順について説明する。図１７は、図６に示す照合情報生成処理の処理手順のフローチャートである。
【０１１５】
図１７に示すように、生成部１４７は、照合情報生成処理として、共通定義情報１２３と、個別定義情報１２５とを基に、照合情報１２２のリストＢ１の記載内容を設定するリストＢ１設定処理（ステップＳ１１）を行う。続いて、生成部１４７は、照合情報１２２のリストＢ２の記載内容を設定するリストＢ２設定処理（ステップＳ１２）を行う。続いて、生成部１４７は、照合情報１２２のリストＢ３の記載内容を設定するリストＢ３設定処理（ステップＳ１３）を行う。
【０１１６】
［リストＢ１設定処理の処理手順］
次に、リストＢ１設定処理（ステップＳ１１）の処理手順について説明する。図１８は、図１７に示すリストＢ１設定処理の処理手順のフローチャートである。
【０１１７】
生成部１４７は、共通定義情報１２３の共通リストＪ１において照合情報１２２のリストＢ１に記載を定義されたファイルを参照する（ステップＳ２１）。そして、生成部１４７は、ファイルごとに、共通定義情報１２３の必須フラグが「Ｔ」または「Ｆ」のいずれかであるかを判定する（ステップＳ２２）。
【０１１８】
生成部１４７は、このファイルの共通定義情報１２３の必須フラグが「Ｔ」であると判定した場合（ステップＳ２２：Ｔ）、このファイルを照合情報１２２のリストＢ１に配置することを決定する（ステップＳ２３）。
【０１１９】
一方、生成部１４７は、このファイルの共通定義情報１２３の必須フラグが「Ｆ」であると判定した場合（ステップＳ２２：Ｆ）、個別定義情報１２５でこのファイルのリストＢ１への配置が「要」または「不要」のいずれかであるかを判定する（ステップＳ２４）。
【０１２０】
生成部１４７は、個別定義情報１２５でこのファイルのリストＢ１への配置が「要」であると判定した場合（ステップＳ２４：要）、このファイルを照合情報１２２のリストＢ１に配置することを決定する（ステップＳ２３）。これに対し、生成部１４７は、個別定義情報１２５でこのファイルのリストＢ１への配置が「不要」であると判定した場合（ステップＳ２４：不要）、このファイルを照合情報１２２のリストＢ１に配置しないことを決定する（ステップＳ２５）。
【０１２１】
生成部１４７は、ステップＳ２３終了後、リストＢ１への配置を決定したファイルについて、共通定義情報１２３の共通リストＪ１のファイルパス条件を満たすファイルパス表記を決定する（ステップＳ２６）。そして、生成部１４７は、決定した表記にしたがって記載したファイルパスを照合情報１２２のリストＢ１のファイルパスとして設定する（ステップＳ２７）。
【０１２２】
そして、生成部１４７は、配置するファイルについて、共通定義情報１２３はダイジェスト値を定義しているか否かを判定する（ステップＳ２８）。生成部１４７は、共通定義情報１２３はダイジェスト値を定義していると判定した場合（ステップＳ２８：Ｙｅｓ）、このファイルについては、共通定義情報１２３において定義されたダイジェスト値を照合情報１２２のリストＢ１のダイジェスト値に設定する（ステップＳ２９）。一方、生成部１４７は、共通定義情報１２３はダイジェスト値を定義していないと判定した場合（ステップＳ２８：Ｎｏ）、このファイルのファイルデータのhash値を計算し、計算したhash値を、照合情報１２２のリストＢ１のダイジェスト値に設定する（ステップＳ３０）。
【０１２３】
［リストＢ２設定処理の処理手順］
次に、リストＢ２設定処理（ステップＳ１２）の処理手順について説明する。図１９は、図１７に示すリストＢ２設定処理の処理手順のフローチャートである。
【０１２４】
生成部１４７は、共通定義情報１２３の共通リストＪ２において照合情報１２２のリストＢ２に記載を定義されたファイルを参照する（ステップＳ３１）。そして、生成部１４７は、ファイルごとに、共通定義情報１２３の必須フラグが「Ｔ」または「Ｆ」のいずれかであるかを判定する（ステップＳ３２）。
【０１２５】
生成部１４７は、このファイルの共通定義情報１２３の必須フラグが「Ｔ」であると判定した場合（ステップＳ３２：Ｔ）、このファイルを照合情報１２２のリストＢ２に配置することを決定する（ステップＳ３３）。
【０１２６】
一方、生成部１４７は、このファイルの共通定義情報１２３の必須フラグが「Ｆ」であると判定した場合（ステップＳ３２：Ｆ）、個別定義情報１２５でこのファイルのリストＢ２への配置が「要」または「不要」のいずれかであるかを判定する（ステップＳ３４）。
【０１２７】
生成部１４７は、個別定義情報１２５でこのファイルのリストＢ２への配置が「要」であると判定した場合（ステップＳ３４：要）、このファイルを照合情報１２２のリストＢ２に配置することを決定する（ステップＳ３３）。これに対し、生成部１４７は、個別定義情報１２５でこのファイルのリストＢ２への配置が「不要」であると判定した場合（ステップＳ３４：不要）、このファイルを照合情報１２２のリストＢ２に配置しないことを決定する（ステップＳ３５）。
【０１２８】
生成部１４７は、ステップＳ３３終了後、リストＢ３への配置を決定したファイルについて、共通定義情報１２３の共通リストＪ３のファイルパス条件を満たすファイルパス表記を決定する（ステップＳ３６）。そして、生成部１４７は、決定した表記にしたがって記載したファイルパスを照合情報１２２リストＢ３のファイルパスとして設定する（ステップＳ３７）。
【０１２９】
［リストＢ３設定処理の処理手順］
次に、リストＢ３設定処理（ステップＳ１３）の処理手順について説明する。図２０は、図１７に示すリストＢ３設定処理の処理手順のフローチャートである。
【０１３０】
まず、生成部１４７は、共通定義情報１２３の共通リストＪ３において照合情報１２２のリストＢ３に記載を定義されたディレクトリを参照する（ステップＳ４１）。そして、生成部１４７は、記載を定義されたディレクトリについて、それぞれ、共通定義情報１２３の共通リストＪ３のディレクトリパス条件を満たすディレクトリパス表記を決定し（ステップＳ４２）する。生成部１４７は、決定した表記にしたがって記載したディレクトリパスを照合情報１２２のリストＢ３のディレクトリパスとして設定する（ステップＳ４３）。
【０１３１】
［ファイル確認処理の処理手順］
次に、ファイル管理装置３によるファイル確認処理の処理手順について説明する。図２１は、実施の形態に係るファイル確認処理の処理手順のフローチャートである。
【０１３２】
まず、ファイル管理装置３では、ファイル管理部１４１が、管理対象のファイルについて、ファイルパスによってファイルデータを識別し、ディレクトリによってファイルパスを分類し、ディレクトリパスによってディレクトリを識別するファイル管理工程を実行すする。また、ファイル確認部１４３が、確認用情報記憶部１２から、ファイル集合の確認のために用いる照合情報１２２を取得し（ステップＳ５１）、確認用情報記憶部１２に記憶させる。
【０１３３】
そして、照合部１４８は、確認対象のファイル集合に応じて、確認に用いる照合情報１２２を決定し、照合処理を行う（ステップＳ５２）。照合処理は、所定の確認タイミングに達すると、配置されたファイルのファイルパス及び照合情報１２２が示すファイルパス、配置されたファイルのファイルデータのダイジェスト値及び照合情報１２２が示すファイルデータのダイジェスト値、及び、配置されたファイルのディレクトリパス及び照合情報１２２が示すディレクトリパス、のいずれか一つを照合する処理である。
【０１３４】
続いて、確認部１４９は、照合部１４８による照合結果を基に、確認項目Ａ１〜Ａ３の少なくともいずれか一つを確認する確認処理を行い（ステップＳ５３）、通信部１３或いは出力部１６が確認結果を出力する（ステップＳ５４）。
【０１３５】
［照合処理の処理手順］
次に、照合処理（ステップＳ５２）の処理手順について説明する。図２２は、図２１に示す照合処理の処理手順を示すフローチャートである。
【０１３６】
図２２に示すように、照合部１４８は、照合情報１２２のリストＢ１のファイルパスとダイジェスト値との組み合わせを参照する（ステップＳ６１）。そして、照合部１４８は、ファイル管理装置３にリストＢ１記載のファイルパスに一致する全てのファイルが配置されているか否かを確認する（ステップＳ６２）。
【０１３７】
照合部１４８は、ファイル管理装置３にリストＢ１記載のファイルパスに一致する全てのファイルが配置されていないこと確認した場合（ステップＳ６２：Ｎｏ）、ファイル管理装置３に配置されたファイルは照合条件Ｃ１を満たさないと判定する（ステップＳ６３）。
【０１３８】
一方、照合部１４８は、ファイル管理装置３にリストＢ１記載のファイルパスに一致する全てのファイルが配置されていること確認した場合（ステップＳ６２：Ｙｅｓ）、ファイル管理装置３に配置された各ファイルのファイルデータのhash値を計算する（ステップＳ６４）。そして、照合部１４８は、ファイルごとに、リストＢ１のダイジェスト値と計算したhash値とを照合する（ステップＳ６５）。照合部１４８は、全てのファイルについて、リストＢ１のダイジェスト値と計算したhash値とが一致するか否かを判定する（ステップＳ６６）。
【０１３９】
照合部１４８は、全てのファイルについて、リストＢ１のダイジェスト値と計算したhash値とが一致しないと判定した場合（ステップＳ６６：Ｎｏ）、このファイルは照合条件Ｃ１を満たさないと判定する（ステップＳ６３）。一方、照合部１４８は、全てのファイルについて、リストＢ１のダイジェスト値と計算したhash値とが一致すると判定した場合（ステップＳ６６：Ｙｅｓ）、このファイルは照合条件Ｃ１を満たすと判定する（ステップＳ６７）。
【０１４０】
続いて、照合部１４８は、照合情報１２２のリストＢ２のファイルパスを参照する（ステップＳ６８）。照合部１４８は、ファイル管理装置３に、リストＢ２記載の全てのファイルパスが確認対象のファイル集合内に配置されているか否かを判定する（ステップＳ６９）。照合部１４８は、リストＢ２記載の全てのファイルパスが配置されていないと判定した場合（ステップＳ６９：Ｎｏ）、照合条件Ｃ２を満たさないと判定する（ステップＳ７０）。一方、照合部１４８は、リストＢ２記載の全てのファイルパスが配置されていると判定した場合（ステップＳ６９：Ｙｅｓ）、照合条件Ｃ２を満たすと判定する（ステップＳ７１）。
【０１４１】
続いて、照合部１４８は、照合情報１２２のリストＢ３のディレクトリパスを参照する（ステップＳ７２）。そして、照合部１４８は、照合情報１２２のリストＢ３の全てのディレクトリパスがファイル管理装置３に配置されているか否かを判定する（ステップＳ７３）。照合部１４８は、照合情報１２２のリストＢ３の全てのディレクトリパスがファイル管理装置３に配置されていると判定した場合（ステップＳ７３：Ｙｅｓ）、該ディレクトリの直下のファイルは、照合情報１２２のリストＢ１またはリストＢ２に記載のファイルであるか否かを判定する（ステップＳ７５）。
【０１４２】
照合部１４８は、ディレクトリの直下のファイルは、照合情報１２２のリストＢ１またはリストＢ２に記載のファイルでないと判定した場合（ステップＳ７５：Ｎｏ）、直下のディレクトリは、リストＢ１，Ｂ２に記載のファイルを一つ以上配下に配置するディレクリであるか否かを判定する（ステップＳ７６）。
【０１４３】
照合部１４８は、照合情報１２２のリストＢ３の全てのディレクトリパスがファイル管理装置３に配置されていないと判定した場合（ステップＳ７３：Ｎｏ）、直下のディレクトリは、リストＢ１，Ｂ２に記載のファイルを一つ以上配下に配置するディレクリでないと判定した場合（ステップＳ７６：Ｎｏ）、照合条件Ｃ３を満たさないと判定する（ステップＳ７４）。
【０１４４】
これに対し、照合部１４８は、ディレクトリの直下のファイルは、照合情報１２２のリストＢ１またはリストＢ２に記載のファイルであると判定した場合（ステップＳ７５：Ｙｅｓ）、または、直下のディレクトリは、リストＢ１，Ｂ２に記載のファイルを一つ以上配下に配置するディレクリであると判定した場合（ステップＳ７６：Ｙｅｓ）、照合条件Ｃ３を満たすと判定する（ステップＳ７７）。照合部１４８は、照合条件Ｃ１〜Ｃ３に対する照合結果を確認部１４９に出力する（ステップＳ７８）。
【０１４５】
［確認処理の処理手順］
次に、確認処理（ステップＳ５３）の処理手順について説明する。図２３は、図２１に示す確認処理の処理手順を示すフローチャートである。
【０１４６】
図２３に示すように、確認部１４９は、照合部１４８による照合結果を取得すると（ステップＳ８１）、ファイル管理装置３に配置されたファイルが、照合情報１２２のリストＢ１記載の全てのリストについて、照合条件Ｃ１を満たすか否かを判定する（ステップＳ８２）。確認部１４９は、照合情報１２２のリストＢ１記載の全てのリストについて、照合条件Ｃ１を満たすと判定した場合（ステップＳ８２：Ｙｅｓ）、配置されるべきファイルが改ざんされていないこと（確認項目Ａ１）を確認する（ステップＳ８３）。これに対し、確認部１４９は、照合情報１２２のリストＢ１記載の全てのリストについて、照合条件Ｃ１を満たしていないと判定した場合（ステップＳ８２：Ｎｏ）、配置されるべきファイルがない、或いは、配置されるべきファイルが改ざんされていることを確認する（ステップＳ８４）。
【０１４７】
続いて、確認部１４９は、ファイル管理装置３に配置されたファイルが、照合情報１２２のリストＢ１記載の全てのリストについて照合条件Ｃ１を満たし、かつ、照合情報１２２のリストＢ２記載の全てのリストについて照合条件Ｃ２を満たすか否かを判定する（ステップＳ８５）。
【０１４８】
確認部１４９は、照合情報１２２のリストＢ１記載の全てのリストについて照合条件Ｃ１を満たし、かつ、照合情報１２２のリストＢ２記載の全てのリストについて照合条件Ｃ２を満たすと判定した場合には（ステップＳ８５：Ｙｅｓ）、配置されるべきファイルが削除されていない（確認項目Ａ２）と判定する（ステップＳ８６）。これに対し、確認部１４９は、照合情報１２２のリストＢ１記載の全てのリストについて照合条件Ｃ１を満たし、かつ、照合情報１２２のリストＢ２記載の全てのリストについて照合条件Ｃ２を満たしていないと判定した場合には（ステップＳ８５：Ｎｏ）、配置されるべきファイルが削除されていると判定する（ステップＳ８７）。
【０１４９】
そして、確認部１４９は、ファイル管理装置３に配置されたファイルが、照合情報１２２のリストＢ３記載の全てのリストについて、照合条件Ｃ３を満たすか否かを判定する（ステップＳ８８）。確認部１４９は、照合情報１２２のリストＢ３記載の全てのリストについて、照合条件Ｃ３を満たすと判定した場合（ステップＳ８８：Ｙｅｓ）、配置されるべきでないファイルが追加されてない（確認項目Ａ３）と判定する（ステップＳ８９）。確認部１４９は、照合情報１２２のリストＢ３記載の全てのリストについて、照合条件Ｃ３を満たさないと判定した場合（ステップＳ８８：Ｎｏ）、配置されるべきでないファイルが追加されていると判定する（ステップＳ９０）。
【０１５０】
続いて、確認部１４９は、確認結果を作成し（ステップＳ９１）、通信部１３又は出力部１６に出力して確認処理を終了する。
【０１５１】
［実施の形態の効果］
このように、本実施の形態に係るファイル管理装置３は、事前に作成された共有の共通定義情報１２３の少なくとも一部を基に、このファイル管理装置３に適合する照合情報１２２を生成する。すなわち、本実施の形態に係るファイル管理装置３は、共有の共通定義情報に加え、当該ファイル管理装置３に応じて個別に備えるべき条件を示す個別定義情報１２５を用いて、個別定義情報１２５と共通定義情報１２３とをともに満たす照合情報を生成する。
【０１５２】
言い換えると、本実施の形態に係るファイル管理装置３では、管理者が入力する個別定義情報と、外部から取得した共有の共通定義情報１２３の少なくとも一部とを用いて、照合情報１２２を生成する。したがって、本実施の形態に係るファイル管理装置３によれば、管理者が入力する情報は、ファイルの一部を変更したファイル等に関する個別定義情報のみでよく、照合情報作成に関する管理者の負担を低減することができる。これによって、本実施の形態では、ファイル管理装置３の管理者による照合情報作成コストも軽減できる。
【０１５３】
そして、従来では、ソフトウェアパッケージに属するファイルの一部を変更可能である場合、ソフトウェアの提供元は、このようなファイルに対する正確な照合情報を提供できない場合があった。この場合、システム管理者は、一部を変更可能なファイルについての照合情報を取得することができず、ファイルの完全性を確認できないという問題があった。
【０１５４】
例えば、従来では、ソフトウェアパッケージに属するファイルのファイルパスの一部をカスタマイズ可能な場合（prefix指定、ワイルドカード指定等）、ソフトウェア提供元は、これらのファイルの照合情報のリストＢ１〜Ｂ３のファイルパスを指定できない場合があった。
【０１５５】
これに対し、本実施の形態では、ソフトウェア提供者は、照合情報のリストＢ１〜Ｂ３のファイルパスに対して、要素属性Ｅ２にファイルパス条件を示す共通定義情報Ｇ１〜Ｇ３を作成して提供する。そして、ファイル管理装置３の管理者は、共通定義情報の定義Ｄ１のファイルパス条件を満たす範囲で、管理対象のファイルのファイルパスを決定する。そして、ファイル管理装置３の管理者は、このように決定したファイルパスを照合情報１２２のリストＢ１〜Ｂ３のファイルパスに指定する。このため、本実施の形態では、照合情報のリストＢ１〜Ｂ３のファイルパスを滞りなく決定することができる。
【０１５６】
また、例えば、従来では、ソフトウェアパッケージに属するファイルの一部を、インストール時に削除することが可能な場合（マニュアルファイル等）、ソフトウェア提供元は、これらのファイルを照合情報のリストＢ２，Ｂ３に掲載するか否かを判断できない。
【０１５７】
これに対し、本実施の形態では、ソフトウェア提供者は、照合情報のリストＢ１，Ｂ２のファイルに対して、共通定義情報の要素属性Ｅ２の必須フラグを作成して提供する。ファイル管理装置３の管理者は、共通定義情報の定義Ｄ２の必須フラグが「否（Ｆ）」のファイルについて、インストールするか否かを決定し、インストールしないことに決定したファイルを照合情報のリストＢ１，Ｂ２から削除する。このため、本実施の形態では、照合情報のリストＢ１，Ｂ２に掲載するファイルの決定を滞りなく実行できる。
【０１５８】
また、例えば、従来では、ソフトウェアパッケージに属するファイルデータの一部を、インストール時に変更することが可能な場合（設定ファイル等）、ソフトウェア提供元はこれらのファイルの照合情報のリストＢ１のファイルデータのダイジェスト値を指定できない場合があった。
【０１５９】
これに対し、本実施の形態では、ソフトウェア提供者は、照合情報のリストＢ１のファイルに対して、共通定義情報の要素属性Ｅ３である固定値フラグを作成して提供する。ファイル管理装置３の管理者は、共通定義情報のＥ３の固定値フラグが「否（Ｆ）」のファイルについて、データを変更するか否かを決定し、変更することに決定したファイルのダイジェスト値を照合情報のリストＢ１のダイジェスト値に設定する。このため、本実施の形態では、照合情報のリストＢ１のファイルデータのダイジェスト値の決定を滞りなく実行できる。
【０１６０】
このように、本実施の形態では、ファイル管理装置３においてソフトウェアパッケージに属するファイルの一部が変更された場合であっても、ファイル管理装置３は、この変更したソフトウェアパッケージに対する正確な照合情報を生成できる。したがって、本実施の形態によれば、ファイル管理装置３においてソフトウェアパッケージに属するファイルの一部を変更した場合であっても、配置されたファイルに適合する照合情報を用いて、ファイルの完全性を正確に確認できる。
【０１６１】
また、本実施の形態では、照合情報の全てをソフトウェア提供者及びファイル管理装置３の管理者に決定させるのではない。本実施の形態によれば、対応可能である一部の情報をソフトウェア提供者及びファイル管理装置３の管理者が設定するのみで、ファイル管理装置３に適した照合情報を生成可能である。したがって、本実施の形態によれば、ファイル管理装置３の管理者に加え、ソフトウェア提供者の負担も低減することができる。
【０１６２】
また、本実施の形態では、照合情報１２２として、配置されるべきであるファイルであり、かつ、ファイルデータが変化しないファイルのファイルパスとファイルデータのダイジェスト値との組み合わせを示すリストＢ１を有する照合情報を用いる。そして、本実施の形態では、配置されたファイルのファイルパス及び照合情報１２２が示すファイルパス、配置されたファイルのファイルデータのダイジェスト値及び照合情報１２２が示すファイルデータのダイジェスト値を照合し、配置されるべきファイルが改ざんされてないことを確認している。したがって、本実施の形態によれば、ファイル管理装置３の管理者の負担なく、ファイルの過不足を確認することが可能になる。
【０１６３】
そして、本実施の形態では、照合情報１２２として、配置されるべきファイルであり、かつ、ファイルデータが変化しうるファイルのファイルパスを示すリストＢ２を有する照合条件を用いる。そして、本実施の形態では、照合情報１２２として、直下のファイルは同じ照合情報に属するリストＢ１またはリストＢ２に記載のファイルである第１のディレクトリ条件、直下のディレクトリは同じ照合情報に属するリストＢ１またはリストＢ２に記載のファイルを一つ以上配下に配置するディレクトリである第２のディレクトリ条件、直下に第１のディレクトリ条件または第２のディレクトリ条件に該当しないファイルまたはディレクトリを配置しない第３のディレクトリ条件を満たすディレクトリのディレクトリパスを示すリストＢ３、を有する照合情報を用いる。
【０１６４】
そして、本実施の形態では、配置されたファイルのファイルパス及び照合情報１２２が示すファイルパス、配置されたファイルのディレクトリパス及び照合情報１２２が示すディレクトリパス、ディレクトリ条件を照合することによって、ログファイル等のダイジェスト値を定義できないファイル、及び、ディレクトリの過不足確認を適切に行うことができる。
【０１６５】
このように、実施の形態によれば、ファイル管理に関するファイル管理装置３の管理者の負担を低減するとともに、管理対象のファイルに応じた適正な照合情報を用いてファイルを正確に確認することができる。
【０１６６】
［実施の形態の変形例１］
実施の形態として、ファイル管理装置３が、確認項目Ａ１〜Ａ３の全てを確認する場合について説明したが、もちろん、ファイル管理装置３は、確認項目Ａ１〜Ａ３のいずれかを選択して確認を行ってもよい。その場合には、確認対象の確認項目によって使用する照合情報のリストの組み合わせが異なる。言い換えると、ファイル管理装置３は、取得した照合情報１２２が有するリストＢ１〜Ｂ３の組み合わせに応じて、確認項目Ａ１と、確認項目Ａ２，Ａ３との少なくともいずれか一つを確認する。
【０１６７】
図２４は、図２に示す対応関係情報１２７のデータ構成の一例を示す図である。図２４に示すように、対応関係情報１２７は、改ざん確認（確認項目Ａ１）、過不足確認（確認項目Ａ２，Ａ３）の確認をする、または、しない、の組み合わせに応じて、照合情報のリストＢ１〜Ｂ３が必要、または、不要であるかを対応付けている。
【０１６８】
上述したように、改ざん確認（確認項目Ａ１）、過不足確認（確認項目Ａ２，Ａ３）のいずれについても実行する場合には、１行目の方法１に示すように、照合情報１２２のリストＢ１〜Ｂ３の全てが必要である。また、改ざん確認（確認項目Ａ１）のみを実行する場合には、２行目の方法２に示すように、リストＢ１のみが必要である。また、過不足確認（確認項目Ａ２，Ａ３）のみを実行する場合には、３行目の方法３に示すように、リストＢ２，Ｂ３のみが必要である。なお、改ざん確認（確認項目Ａ１）、過不足確認（確認項目Ａ２，Ａ３）のいずれについても実行しない場合には、４行目に示すように、リストＢ１〜Ｂ３のいずれも不要である。このように、ファイル管理装置３は、確認項目の組み合わせに応じて、必要となるリストＢ１〜Ｂ３を取得すればよい（確認項目決定方法１）。一方、取得可能な照合情報、すなわち、作成・配布された照合情報にリストＢ１，Ｂ２，Ｂ３全てが備わっておらず、リストＢ１のみ、リストＢ２，Ｂ３のみ、といったケースが存在し、これらのケースにおいて実施可能な確認項目を確認する方法もある（確認項目決定方法２）。例えば、リストＢ１のみの照合情報であれば、確認項目Ａ１のみ確認し、リストＢ２、Ｂ３のみの照合情報であれば、確認項目Ａ２，Ａ３のみを確認する。確認項目決定方法１と確認項目決定方法２は矛盾しないため、１つのシステムで両方実現可能であるが、確認項目決定方法２のみを実施するシステムであってもよい。
【０１６９】
［実施の形態の変形例２］
次に、実施の形態の変形例２について説明する。図２５は、実施の形態の変形例２における照合情報の生成処理を説明する図である。図２５に示すように、｛prefix｝は、共通定義情報Ｇｘ、個別定義情報Ｃｘ、照合情報ＲｘｘのリストＢ１〜Ｂ３において共通の値である。
【０１７０】
共通定義情報Ｇｘでは、ファイルパス条件及びディレクトリパス条件は、照合情報のリストＢ１、リストＢ２及びリストＢ３に記載するファイルまたはディレクトリの全体または一部を、prefix範囲と定義する。そして、共通定義情報Ｇｘでは、ファイルパス条件及びディレクトリパス条件は、prefix範囲を当該ファイル管理装置３で個別に決定したディレクトリパス（prefix）の配下に配置することを許可する。さらに、共通定義情報Ｇｘでは、ファイルパス条件及びディレクトリパス条件は、ディレクトリパス（prefix）以外は、ファイル管理装置３で個別に決定することを許可しない。
【０１７１】
例えば、照合情報Ｒｘｘのファイルパスの作成処理を例に説明する。共通定義情報Ｇｘは、ファイルパスの一部をprefix定義する（図２５の（１）参照）。また、個別定義情報Ｌｘｘでは、prefixの値を定義する（図２５の（２）参照）。生成部１４７は、共通定義情報Ｇｘでは、ファイルパス条件にしたがい、共通定義情報Ｇｘと個別定義情報Ｌｘｘの定義からファイルパスを作成する。具体的には、ファイル「＃１１」については、共通定義情報Ｇｘは、ファイル「＃１１」のファイルパスを「/［prefix1］/f11」と定義する。そして、個別定義情報Ｌｘｘでは、prefixの値を「dc」と定義する。生成部１４７は、共通定義情報Ｇｘと個別定義情報Ｌｘｘの定義から、ファイル「＃１１」のファイルパスとして「/dc/f11」を作成する（図２５の（３）参照）。なお、照合情報Ｒｘｘにおいて、複数のprefixを定義することもできる。例えば、２つのprefix（例：prefix1,prefix2）を定義することにより、個別にディレクトリパスを決定した２つのディレクトリ配下のファイル集合を定義することができる。
【０１７２】
図２６は、実施の形態の変形例２における照合情報の生成処理の他の例を説明する図である。図２６に示すように、｛wildcard｝は、共通定義情報Ｇｘ、個別定義情報Ｃｘ、照合情報ＲｘｘのリストＢ１〜Ｂ３において任意の値であり、共通である必要はない。
【０１７３】
共通定義情報Ｇｘでは、ファイルパス条件及びディレクトリパス条件は、照合情報のリストＢ１、リストＢ２及びリストＢ３に記載するファイルパスまたはディレクトリパスを構成する文字列の一部をワイルドカード部分と定義する。そして、共通定義情報Ｇｘでは、ワイルドカード部分を当該ファイル管理装置３で個別に決定した任意の文字列に置換することを許可する。そして、共通定義情報Ｇｘでは、ワイルドカード部分以外は当該ファイル管理装置で個別に決定することを許可しない。
【０１７４】
例えば、照合情報Ｒｘｘのファイルパスの作成処理を例に説明する。共通定義情報Ｇｘは、ファイルパスの一部をワイルドカード定義する（図２６の（１）参照）。また、個別定義情報Ｌｘｘでは、ワイルドカードの値を定義する（図２６の（２）参照）。生成部１４７は、共通定義情報Ｇｘでは、ファイルパス条件にしたがい、共通定義情報Ｇｘと個別定義情報Ｌｘｘの定義からファイルパスを作成する（図２６の（３）参照）。具体的には、ファイル「＃１２」については、共通定義情報Ｇｘは、ファイル「＃１２」のファイルパスを「/d2/[wildcard12].exe」と定義する。そして、個別定義情報Ｌｘｘでは、ファイル「＃１２」のファイルパスについて、「[wildcard12]=“fc12”」と定義する。生成部１４７は、共通定義情報Ｇｘと個別定義情報Ｌｘｘの定義から、ファイル「＃１２」のファイルパスとして「/d2/fc12.exe」を作成する。
【０１７５】
図２７は、実施の形態の変形例２における照合情報の生成処理の他の例を説明する図である。図２７に示すように、正規表現は、共通定義情報Ｇｘ、個別定義情報Ｌｘｘ、照合情報ＲｘｘのリストＢ１〜Ｂ３において任意の値であり、共通である必要はない。
【０１７６】
共通定義情報Ｇｘでは、ファイルパス条件及びディレクトリパス条件は、照合情報のリストＢ１、リストＢ２及びリストＢ３に記載するファイルパスまたはディレクトリパスを構成する文字列を、正規表現によって定義する。
【０１７７】
例えば、照合情報Ｒｘｘのファイルパスの作成処理を例に説明する。共通定義情報Ｇｘは、ファイルパスの一部を正規表現定義する（図２７の（１）参照）。また、個別定義情報Ｌｘｘでは、正規表現の値を定義する（図２７の（２）参照）。生成部１４７は、共通定義情報Ｇｘでは、ファイルパス条件にしたがい、共通定義情報Ｇｘと個別定義情報Ｌｘｘの定義からファイルパスを作成する（図２７の（３）参照）。具体的には、ファイル「＃１２」については、共通定義情報Ｇｘは、ファイル「＃１２」のファイルパスを「/d2/f12.*\.exe」とし、一部を正規表現による任意文字列「.*」で定義する。そして、個別定義情報Ｌｘｘでは、ファイル「＃１２」のファイルパスについて、任意文字列の値を「“test”」と定義する。生成部１４７は、共通定義情報Ｇｘと個別定義情報Ｌｘｘの定義から、ファイル「＃１２」のファイルパスとして「/d2/f12test.exe」を作成する。
【０１７８】
ここで、従来技術（例えば、非特許文献１，２記載の機能）では、ソフトウェアパッケージに属するファイルのファイルパスの一部をカスタマイズ可能な場合（prefix指定、ワイルドカード指定、等）、ソフトウェア提供元は、これらのファイルの照合情報のファイルパスを指定できない。
【０１７９】
これに対し、本実施の形態の変形例２では、ソフトウェア提供者は、一部に対し、prefix定義、ワイルドカード定義或いは正規表現定義を行った共通定義情報を提供する。そして、ファイル管理装置３の管理者は、共通定義情報のファイルパス条件及びディレクトリパス条件を満たす範囲で、prefix、ワイルドカード或いは正規表現の値を入力するのみで、決定する。そして、ファイル管理装置３の管理者は、このように決定したファイルパスを照合情報１２２のリストＢ１〜Ｂ３のファイルパスに指定する。このため、本実施の形態では、ソフトウェアパッケージに属するファイルのファイルパスの一部にprefix指定やワイルドカード指定が行なわれた場合であっても、照合情報のリストＢ１〜Ｂ３のファイルパスを滞りなく決定することができる。
【０１８０】
［実施の形態の変形例３］
次に、実施の形態の変形例３について説明する。図２８は、実施の形態に係るファイル管理装置を有する管理システムの他の概略構成を示す模式図である。図２８に示すように、実施の形態の変形例に係る管理システムは、各ファイル管理装置２０３Ｘ〜２０３Ｚとは別に、照合情報生成装置２０２を有する構成である。また、複数のファイル管理装置２０３Ｘ〜２０３Ｚについて、特に区別なく説明する場合には、ファイル管理装置２０３と記載する。
【０１８１】
照合情報生成装置２０２は、共有定義情報ＤＢ２から共有の共通定義情報を取得する（矢印Ｙ２１参照）。そして、照合情報生成装置２０２は、ファイル管理装置２０３Ｘ〜２０３Ｚの管理者による入力情報等を基に、個別に備えるべき条件を示す個別定義情報を取得する。そして、照合情報生成装置２０２は、各ファイル管理装置２０３Ｘ〜２０３Ｚに対応する照合情報を生成し、それぞれ対応する照合情報をファイル管理装置２０３Ｘ〜２０３Ｚに出力する（矢印Ｙ２２〜Ｙ２４参照）。各ファイル管理装置２０３Ｘ〜２０３Ｚは、照合情報生成装置２０２がそれぞれ生成した照合情報を使用してファイル管理を行う。なお、図２８では、共通定義情報ＤＢ２の配下に１つの照合情報生成装置２０２を記載しているが、より一般的な構成においては、共通定義情報ＤＢ２は、異なるシステムに属する複数の照合情報生成装置２０２に対して、共通定義情報を提供する。
【０１８２】
［照合情報生成装置の構成］
図２９は、図２８に示す照合情報生成装置２０２の概略構成を示す模式図である。図２９に示すように、照合情報生成装置２０２は、図２に示すファイル管理装置２と比して、制御部４２に代えて、照合情報生成部１４２を有する制御部２１４を有する。また、照合情報生成装置２０２は、照合情報１２２、共通定義情報１２３、項目抽出情報１２４、個別定義情報１２５を確認用情報記憶部１２に記憶する。共通定義情報１２３は、共有の共通右定義情報ＤＢ２から取得される。個別定義情報１２５は、通信部１３等を介して入力されたファイル管理装置２０３Ｘ〜２０３Ｚの管理者による入力情報に基づく。
【０１８３】
照合情報生成装置２０２は、図１６〜図２０までの処理手順を実行することによって、照合情報生成対象のファイル管理装置２０３Ｘ〜２０３Ｚごとに照合情報を生成し、対象となるファイル管理装置２０３Ｘ〜２０３Ｚに、生成した照合情報を出力する。
【０１８４】
［ファイル管理装置の構成］
図３０は、図２８に示すファイル管理装置２０３の構成である。ファイル管理装置２０３は、図２に示すファイル管理装置２と比して、制御部４２に代えて、ファイル管理部１４１及びファイル確認部１４３を有する制御部３１４を有する。また、照合情報生成装置２０２は、ファイル管理に用いる確認内容情報１２１、照合情報１２２、条件情報１２６、対応関係情報１２７を確認用情報記憶部１２に記憶する。ファイル管理装置２０３は、照合情報生成装置２０２から出力された照合情報を用い、図２１〜図２３までの処理手順を実行することによって、ファイルの完全性を確認する。
【０１８５】
本実施の形態に係る管理システムは、この変形例１のように、ファイル管理装置２０３と別個に照合情報生成装置２０２を設け、１台の照合情報生成装置２０２が複数のファイル管理装置２０３の照合情報を生成する構成であってもよい。
【０１８６】
［実施の形態のシステム構成について］
図１に示したファイル管理装置３，２０３、照合情報生成装置２０２と各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、ファイル管理装置３，２０３、照合情報生成装置２０２の機能の分散及び統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散または統合して構成することができる。
【０１８７】
また、ファイル管理装置３，２０３、照合情報生成装置２０２においておこなわれる各処理は、全部または任意の一部が、ＣＰＵ、ＧＰＵ（Graphics  Processing  Unit）、及び、ＣＰＵ、ＧＰＵにより解析実行されるプログラムにて実現されてもよい。また、ファイル管理装置３，２０３、照合情報生成装置２０２においておこなわれる各処理は、ワイヤードロジックによるハードウェアとして実現されてもよい。
【０１８８】
また、実施の形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的に行うこともできる。もしくは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上述及び図示の処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて適宜変更することができる。 
【０１８９】
［プログラム］
図３１は、プログラムが実行されることにより、ファイル管理装置３，２０３、照合情報生成装置２０２が実現されるコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０、ＣＰＵ１０２０を有する。また、コンピュータ１０００は、ハードディスクドライブインタフェース１０３０、ディスクドライブインタフェース１０４０、シリアルポートインタフェース１０５０、ビデオアダプタ１０６０、ネットワークインタフェース１０７０を有する。これらの各部は、バス１０８０によって接続される。
【０１９０】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、例えばディスプレイ１１３０に接続される。
【０１９１】
ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、ファイル管理装置３，２０３、照合情報生成装置２０２の各処理を規定するプログラムは、コンピュータ１０００により実行可能なコードが記述されたプログラムモジュール１０９３として実装される。プログラムモジュール１０９３は、例えばハードディスクドライブ１０９０に記憶される。例えば、ファイル管理装置３，２０３、照合情報生成装置２０２における機能構成と同様の処理を実行するためのプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。なお、ハードディスクドライブ１０９０は、ＳＳＤにより代替されてもよい。
【０１９２】
また、上述した実施の形態の処理で用いられる設定データは、プログラムデータ１０９４として、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して実行する。
【０１９３】
なお、プログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムモジュール１０９３及びプログラムデータ１０９４は、ネットワーク（ＬＡＮ、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール１０９３及びプログラムデータ１０９４は、他のコンピュータから、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【０１９４】
以上、本発明者によってなされた発明を適用した実施の形態について説明したが、本実施の形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施の形態に基づいて当業者等によりなされる他の実施の形態、実施例及び運用技術等は全て本発明の範疇に含まれる。
【符号の説明】
【０１９５】
２  共通定義情報データベース（ＤＢ）
３，２０３  ファイル管理装置
１０  記憶部
１１  ファイル記憶部
１２  確認用情報記憶部
１３  通信部
１４，２１４，３１４  制御部
１５  入力部
１６  出力部
１２１  確認内容情報
１２２  照合情報
１２３  共通定義情報
１２４  項目抽出情報
１２５  個別定義情報
１２６  条件情報
１２７  対応関係情報
１４１  ファイル管理部
１４２  照合情報生成部
１４３  ファイル確認部
１４４  共通定義情報取得部
１４５  個別定義項目抽出部
１４６  個別定義情報入力部
１４７  生成部
１４８  照合部
１４９  確認部
２０２  照合情報生成装置
【図１】
2019008377.tif 000003
【図２】
2019008377.tif 000004
【図３】
2019008377.tif 000005
【図４】
2019008377.tif 000006
【図５】
2019008377.tif 000007
【図６】
2019008377.tif 000008
【図７】
2019008377.tif 000009
【図８】
2019008377.tif 000010
【図９】
2019008377.tif 000011
【図１０】
2019008377.tif 000012
【図１１】
2019008377.tif 000013
【図１２】
2019008377.tif 000014
【図１３】
2019008377.tif 000015
【図１４】
2019008377.tif 000016
【図１５】
2019008377.tif 000017
【図１６】
2019008377.tif 000018
【図１７】
2019008377.tif 000019
【図１８】
2019008377.tif 000020
【図１９】
2019008377.tif 000021
【図２０】
2019008377.tif 000022
【図２１】
2019008377.tif 000023
【図２２】
2019008377.tif 000024
【図２３】
2019008377.tif 000025
【図２４】
2019008377.tif 000026
【図２５】
2019008377.tif 000027
【図２６】
2019008377.tif 000028
【図２７】
2019008377.tif 000029
【図２８】
2019008377.tif 000030
【図２９】
2019008377.tif 000031
【図３０】
2019008377.tif 000032
【図３１】
2019008377.tif 000033