(57)【要約】【課題】漏洩元データの及び不審なユーザを効率的に把握可能とする。【解決手段】電子帳票サーバ１０は、漏洩データ中の選択された特徴データに基づいて、対象となる複数の世代の帳票データを対象に検索し、検索結果から世代別の前記特徴データの存在件数をカウントする。また、電子帳票サーバ１０は、帳票データに係るログデータに基づいて世代別のデータ存在期間を算出し、帳票データのデータ存在期間に帳票データにアクセスしたユーザをログデータから抽出する。そして、電子帳票サーバ１０は、帳票データの世代別の特徴データの存在件数とログデータとに基づいて、ユーザ別の特徴データの存在件数を集計する。【選択図】図１
2008165511.tif 000002
【特許請求の範囲】
【請求項１】
漏洩データ中の選択された特徴データに基づいて、対象となる複数の世代の帳票データを対象に検索を行う第１の検索手段と、
前記第１の検索手段の検索結果から世代別の前記特徴データの存在件数をカウントする第１のカウント手段と、
前記帳票データに係るログデータに基づいて前記帳票データの世代別のデータ存在期間を算出する算出手段と、
前記帳票データのデータ存在期間に前記帳票データにアクセスしたユーザを前記帳票データの前記ログデータから抽出するユーザ抽出手段と、
前記帳票データの世代別の特徴データの存在件数と前記ログデータとに基づいて、ユーザ別の前記特徴データの存在件数を集計する第１のユーザ別集計手段とを有することを特徴とする漏洩データ追跡装置。
【請求項２】
ユーザ別の前記特徴データの存在件数が上位のユーザの前記ログデータに基づいて、前記特徴データによる前記帳票データの全文検索を行う第２の検索手段と、
前記第２の検索手段の検索結果から世代別の前記特徴データの存在件数をカウントする第２のカウント手段と、
世代別の特徴データの存在件数と前記ログデータとに基づいて、ユーザ別の前記特徴データの存在件数を集計する第２のユーザ別集計手段とを有することを特徴とする請求項１に記載の漏洩データ追跡装置。
【請求項３】
前記帳票データと漏洩データ中の前記特徴データとに基づいて、漏洩対象期間の絞込みを行う期間絞込み手段を更に有することを特徴とする請求項１又は２に記載の漏洩データ追跡装置。
【請求項４】
漏洩データ追跡装置による漏洩データ追跡方法であって、
漏洩データ中の選択された特徴データに基づいて、対象となる複数の世代の帳票データを対象に検索を行う検索ステップと、
前記検索ステップの検索結果から世代別の前記特徴データの存在件数をカウントするカウントステップと、
前記帳票データに係るログデータに基づいて前記帳票データの世代別のデータ存在期間を算出する算出ステップと、
前記帳票データのデータ存在期間に前記帳票データにアクセスしたユーザを前記帳票データの前記ログデータから抽出するユーザ抽出ステップと、
前記帳票データの世代別の特徴データの存在件数と前記ログデータとに基づいて、ユーザ別の前記特徴データの存在件数を集計するユーザ別集計ステップとを含むことを特徴とする漏洩データ追跡方法。
【請求項５】
漏洩データ中の選択された特徴データに基づいて、対象となる複数の世代の帳票データを対象に検索を行う検索ステップと、
前記検索ステップの検索結果から世代別の前記特徴データの存在件数をカウントするカウントステップと、
前記帳票データに係るログデータに基づいて前記帳票データの世代別のデータ存在期間を算出する算出ステップと、
前記帳票データのデータ存在期間に前記帳票データにアクセスしたユーザを前記帳票データの前記ログデータから抽出するユーザ抽出ステップと、
前記帳票データの世代別の特徴データの存在件数と前記ログデータとに基づいて、ユーザ別の前記特徴データの存在件数を集計するユーザ別集計ステップとをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、帳票データの漏洩を追跡可能な技術に関するものである。
【背景技術】
【０００２】
従来、データの外部漏洩、特に個人情報を含むデータが外部に漏洩した場合、その漏洩元データがどれであるかを特定する作業、あるいはデータを漏洩した者を特定する作業には多大な工数が必要であった。
【０００３】
この点、確かに、漏洩したデータが特定のデータファイルやデータベースのテーブルと同一レイアウトであった場合や漏洩データの内容に特殊性があり、一見してどのデータが流出したのかが明らかな場合であれば、そのファイルやテーブルをアクセスしたユーザを特定して「容疑者」を絞り込むことも比較的簡単な作業となる。
【０００４】
しかし、漏洩データが特定のデータファイルやデータベースのテーブルと同一レイアウトではない場合、例えば、電子帳票ソフトを利用してデータファイルやデータベースからデータを抽出し、更にデータの一部を加工（項目の追加や削除、ソート等）した場合は、漏洩元の特定は難事となる。何故なら、電子帳票の「世代」を含めた種類が多く、電子帳票のアクセスログも長期間では膨大なデータ量になるからである。そこで、一度漏洩事故が起きれば、詳細なログを相当な工数を費やして分析するか（通常こちらを選ばざるを得ない）、漏洩した者を特定することを断念するかの苦しい二者択一を迫られていた。
【０００５】
特許文献１には、漏洩した文字列から、漏洩を生じさせた業務を特定することが可能な技術が開示されている。また、特許文献２には、漏洩したファイルから２次的に派生して作成されたファイルを、最初に漏洩したファイルから検索し、この派生して作成されたファイルに関する情報を提示する技術が開示されている。
【０００６】
【特許文献１】特開２００６−３３０８１８号公報
【特許文献２】特開２００６−２６８７５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１及び２に開示される発明は、情報漏洩元を絞り込む又は特定することは可能であるが、誰が漏洩させたのかを絞り込むことができない。従って、「容疑者」を洗い出して犯人を特定するまでには相当の時間を要し、その間に新たな漏洩事故が発生したり、人海戦術により解決しようとすると多額のコストが必要になるという問題があった。
【０００８】
そこで、本発明の目的は、漏洩元データの及び不審なユーザを効率的に把握可能とすることにある。
【課題を解決するための手段】
【０００９】
本発明の漏洩データ追跡装置は、漏洩データ中の選択された特徴データに基づいて、対象となる複数の世代の帳票データを対象に検索を行う第１の検索手段と、前記第１の検索手段の検索結果から世代別の前記特徴データの存在件数をカウントする第１のカウント手段と、前記帳票データに係るログデータに基づいて前記帳票データの世代別のデータ存在期間を算出する算出手段と、前記帳票データのデータ存在期間に前記帳票データにアクセスしたユーザを前記帳票データの前記ログデータから抽出するユーザ抽出手段と、前記帳票データの世代別の特徴データの存在件数と前記ログデータとに基づいて、ユーザ別の前記特徴データの存在件数を集計する第１のユーザ別集計手段とを有することを特徴とする。
本発明の漏洩データ追跡方法は、漏洩データ追跡装置による漏洩データ追跡方法であって、漏洩データ中の選択された特徴データに基づいて、対象となる複数の世代の帳票データを対象に検索を行う検索ステップと、前記検索ステップの検索結果から世代別の前記特徴データの存在件数をカウントするカウントステップと、前記帳票データに係るログデータに基づいて前記帳票データの世代別のデータ存在期間を算出する算出ステップと、前記帳票データのデータ存在期間に前記帳票データにアクセスしたユーザを前記帳票データの前記ログデータから抽出するユーザ抽出ステップと、前記帳票データの世代別の特徴データの存在件数と前記ログデータとに基づいて、ユーザ別の前記特徴データの存在件数を集計するユーザ別集計ステップとを含むことを特徴とする。
本発明のプログラムは、漏洩データ中の選択された特徴データに基づいて、対象となる複数の世代の帳票データを対象に検索を行う検索ステップと、前記検索ステップの検索結果から世代別の前記特徴データの存在件数をカウントするカウントステップと、前記帳票データに係るログデータに基づいて前記帳票データの世代別のデータ存在期間を算出する算出ステップと、前記帳票データのデータ存在期間に前記帳票データにアクセスしたユーザを前記帳票データの前記ログデータから抽出するユーザ抽出ステップと、前記帳票データの世代別の特徴データの存在件数と前記ログデータとに基づいて、ユーザ別の前記特徴データの存在件数を集計するユーザ別集計ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、漏洩データ中の特徴データの帳票データ内の存在件数と帳票データに係るログデータとに基づいて、ユーザ毎の帳票データ内の特徴データの存在件数を集計するように構成したので、漏洩元のデータ及び不審なユーザを効率的に把握することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
【００１２】
図１は、本発明の実施形態に係る電子帳票システムの構成を概略的に示す図である。なお、図１の通信回線上における各装置の接続構成は、飽くまでも一例であり、用途や目的に応じて様々な構成をとり得ることはいうまでもない。
【００１３】
電子帳票サーバ１０は、ＬＡＮ等の通信回線１５を介して帳票参照端末３０と通信接続可能な送受信機能を備えている。また、電子帳票サーバ１０は、電子帳票ＤＢ（データベース）における帳票データの管理、生成機能を有するだけでなく、生成した帳票データの出力を行うためにＷｅｂサーバとしての機能を備える。
【００１４】
また、電子帳票サーバ１０は、後述するハードディスク２８を備え、ハードディスク２８内には、電子帳票ＤＢ、アクセスログ、商品マスタ、売上明細ＤＢ、メンテナンスＤＢ、在庫ＤＢ、顧客マスタ、購入履歴ＤＢ及びサービス履歴ＤＢを格納している。
【００１５】
帳票参照端末３０は、帳票の閲覧及び計算結果の取得を行う者が使用するクライアント端末であり、汎用のブラウザアプリケーションを備える構成のものが考えられる。この場合、電子帳票サーバ１０は、帳票フォームと帳票データとを合成して生成した帳票出力用データを、ＨＴＭＬやＸＭＬとスタイルシートの組み合わせ等によるマークアップランゲージを用いた表示データとして生成するための機能を備える。そして、電子帳票サーバ１０は、帳票参照端末３０が備えるブラウザからのＧｅｔ要求に応じて送信する。なお、ＨＴＭＬは、Hyper Text Markup Languageの略称であり、ＸＭＬは、eXtensible Markup Languageの略称である。なお、上記説明では帳票参照端末３０に汎用のブラウザアプリケーションを備える構成を説明したが、これに限らず専用のクライアント用アプリケーションを使用しても良い
【００１６】
次に、電子帳票サーバ１０のハードウェア構成について説明する。図２は、電子帳票サーバ１０のハードウェア構成を概略的に示すブロック図である。
【００１７】
図２において、ＣＰＵ２１は、システムバス３０に接続される各デバイスを統括的に制御する。また、ＲＯＭ２３或いはハードディスク２８には、ＣＰＵ２１の制御プログラムであるオペレーティングシステム（ＯＳ）や、電子帳票サーバ１０の後述する各種機能を実現するためのプログラムが記憶されている。
【００１８】
ＲＡＭ２２は、ＣＰＵ２１の主メモリとして使用し、ＯＳ用エリア、プログラムエリア、ワークエリア、一時退避領域等として機能する。
【００１９】
ＬＡＮアダプタ２４は、ＬＡＮ（通信回線１５）を介して外部機器（帳票参照端末３０）との通信を制御する通信回線接続機構である。ビデオアダプタ２５は、ディスプレイとの接続機構である。
【００２０】
記憶媒体ドライブ２９は、フレキシブルディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＤＶＤ−Ｒ等の記憶媒体に対するデータの読み書きを制御する。なお、上述した電子帳票サーバ１０の各種機能を実現するためのプログラムは、これらの記録媒体から取得し、ＣＰＵ２１に供給するようにしてもよいし、インターネット等の通信媒体を介して他の通信装置から取得し、ＣＰＵ２１に供給するようにしてもよい。
【００２１】
キーボード２６及びマウス２７は、ユーザの操作手段であり、ユーザの操作に応じた入力情報がＣＰＵ２１に入力される。
【００２２】
本実施形態に係る電子帳票サーバ１０の機能を実現するためのプログラムは、Ｗｅｂサーバ機能を実現するための機能を含む。即ち、帳票データを生成した後にブラウザで閲覧可能なＪＰＥＧやＧＩＦ等の画像フォームに変換する。そして、予め設定されているタグ等の情報とともにブラウザ表示用の帳票データ（以下、ブラウザ表示用の帳票データを、単に帳票データと称す）を生成するものである。
【００２３】
帳票参照端末３０のハードウェア構成も電子帳票サーバ１０と同様である。即ち、帳票参照端末３０のハードディスク２８等に帳票参照端末３０のＣＰＵ２１が後述する各種機能を実現するためのプログラムが格納される。このプログラムは、ハードディスク２８の他に、記憶媒体ドライブ２９を介してＣＰＵ２１に供給してもよいし、インターネット等の通信媒体を介して供給されてもよい。帳票参照端末３０側のプログラムに、帳票出力データを表示するためのブラウザが含まれていることは勿論である。
【００２４】
図３は、本実施形態に係る電子帳票システムの主要動作を示すフローチャートである。
図３において、Ｓ３２１では、電子帳票サーバ（以下、単にサーバと称す）１０のＣＰＵ２１は、図４に示す漏洩データ追跡条件指定画面を表示させるための画面情報を帳票参照端末（以下、単に端末と称す）３０に送信する。
【００２５】
Ｓ３０１では、端末３０のＣＰＵ２１は、受信した画面情報に基づいて、漏洩データ追跡条件指定画面を表示する。
【００２６】
Ｓ３０２では、ユーザによって図４の漏洩データ追跡条件指定画面の画面が操作され、サーバ１０におけるデータ読込み方法と特徴データの選択方法とが、読み込み方法選択項目４０１及び特徴データ選択方法選択項目４０２で選択されると、端末３０のＣＰＵ２１は、選択された読み込み方法と特徴データの選択方法とを入力する。特徴データの選択方法として、「手入力」が選択された場合、テキストボックス４０３でユーザは漏洩データの漏洩元を特定する際の手がかりになるようなデータ（特徴データ）を入力又は選択する。即ち、特徴データは、一又は複数の漏洩データに含まれるデータである。特徴データを指定しない場合には、「ファイル全体」を指定すればよい。「ファイル全体」が指定された場合には、帳票ファイル全体に基づいて電子帳票から漏洩データを検索する。また、「行選択」、「カラム選択」が選択された場合には、検索対象とする行やカラムの範囲を指定項目において指定すれば、指定範囲内に属するデータに基づいて電子帳票を検索する。
【００２７】
Ｓ３０３では、端末３０のＣＰＵ２１は、図４の漏洩データ追跡条件指定画面上の「追跡検索」ボタン４０４が押下されたか否かを判定する。「追跡検索」ボタン４０４が押下された場合は、処理はＳ３０４に移行し、追跡検索ボタンが押下されていない場合は、処理はＳ３０２に戻る。
【００２８】
Ｓ３０４では、端末３０のＣＰＵ２１は、追跡検索処理の開始をサーバ１０に指示する。このとき、図４の画面上で指定された追跡条件もともにサーバ１０に送信される。
【００２９】
Ｓ３２２では、サーバ１０のＣＰＵ２１は、追跡条件を受信してＲＡＭ２２に記憶する。
【００３０】
Ｓ３２３では、サーバ１０のＣＰＵ２１は、受信した追跡条件に基づいて、データ存在期間特定処理を実行する。データ存在期間特定処理とは、漏洩データの地域的偏りや顧客属性の偏り等から、漏洩データが存在していた時期、即ちデータ漏洩が可能であった時期を絞り込む処理を意味する。データ存在期間特定処理の詳細については図５を参照して説明する。
【００３１】
Ｓ３２４では、サーバ１０のＣＰＵ２１は、Ｓ３２３の処理で調査対象期間が限定されている場合は、調査対象期間内の全帳票ファイルのアクセスログを収集する。一方、調査対象期間が限定されていない場合は、アクセスログを収集可能な期間内の帳票ファイルのアクセスログを全て収集する。アクセスログの一部がハードディスク２８に存在しない場合はアクセスログをアーカイブして記録した記憶媒体のシリアル番号をハードディスクに予め記憶しておき、そのシリアル番号の記憶媒体内のアクセスログをレストアするために、当該シリアル番号の記憶媒体を読取りドライブに挿入するようサーバのオペレータに促すメッセージをサーバ１０の操作用表示装置に表示しても良い。
【００３２】
図９は、アクセスログのデータ構成例を模式的に示す図である。図９の例においては、アクセスしたユーザの識別情報である「ユーザＩＤ」、アクセスされた年月日と時刻を示す「年月日時刻」、アクセス対象となって帳票データの識別情報である「アクセス帳票」、当該帳票の世代を示す「世代」、当該帳票データに対して指定された抽出（検索）条件である「抽出条件」がアクセスログとして記録されている。
【００３３】
Ｓ３２５では、サーバ１０のＣＰＵ２１は、全対象帳票ファイルの検索が終了したかを判定する。全対象帳票ファイルの検索が終了した場合、処理はＳ３２７に移行する。一方、全対象帳票ファイルの検索が終了していない場合、処理はＳ３２６に移行する。
【００３４】
Ｓ３２６では、サーバ１０のＣＰＵ２１は、調査対象期間の全帳票ファイルについて、特徴データに基づいて帳票ファイルの全文検索を行い、特徴データの少なくとも一部が存在した帳票ファイル名と、少なくとも一部の特徴データの検出箇所に該当する帳票データの世代、当該帳票データのサーバ内での存在期間、及び、特徴データの存在数を、ハードディスク２８内でワークファイル１として記憶する。そして、記憶したワークファイル１を特徴データの存在数で降順にソートする。
【００３５】
Ｓ３２７では、Ｓ３３６の帳票検索結果に基づいて照合処理Ｉを実行する。照合処理Ｉ
の詳細については図６のフローチャートで説明する。
【００３６】
Ｓ３２８では、サーバ１０のＣＰＵ２１は、上述したワークファイル１及び後述するワークファイル２、３に基づいて、図１０に示すようなレポートＩを表示させるための情報
を作成して、端末３０に送信する。
【００３７】
図１０は、レポートＩの構成例を示す図である。図１０に示すレポートＩは、以下の項
目を含む。
（１）特徴データの推定存在期間の有無とその理由
（２）特徴データを多く含む帳票ファイル名称及びその世代のトップ２０のランキング（ワークファイル１）
（３）推定存在期間内に特徴データを多く含む帳票ファイルにアクセスしたユーザのユーザＩＤと累計特徴データ存在数のトップ１０のランキング（ワークファイル３）
（４）上記（３）のトップ５ユーザのアクセスログ明細（ワークファイル２）
【００３８】
Ｓ３０５では、端末３０のＣＰＵ２１は、レポートＩの画面情報の受信を待つ。Ｓ３０６は、一定時間間隔でレポートＩの画面情報の受信判定を行う処理である。レポートＩの画面情報を受信した場合、処理はＳ３０７に移行する。一方、レポートＩの画面情報を受信していない場合、処理はＳ３０５に戻る。
【００３９】
Ｓ３０７では、端末３０のＣＰＵ２１は、レポートＩの画面情報に基づいて、レポートＩの画面表示を行う。必要であれば、ユーザの操作に応じてレポートＩの印刷処理も行う。
【００４０】
Ｓ３０８では、端末３０のＣＰＵ２１は、ユーザの操作によって特定ユーザを指定する入力があったか否かを判定する。特定ユーザの指定入力があった場合、処理はＳ３０９に移行する。一方、特定ユーザの指定入力がない場合、処理はＳ３１０に移行する。ここで指定される特定ユーザは、ユーザがレポートＩを参照して、不審に思って指定したユーザである。
【００４１】
Ｓ３０９では、端末３０のＣＰＵ２１は、特定ユーザの指定情報をサーバ１０に送信する。なお、Ｓ３０８では、特定ユーザの指定がなかった場合においても、特定ユーザの指定がない旨の情報が端末３０からサーバ１０に対して送信される。
【００４２】
Ｓ３２９では、サーバ１０のＣＰＵ２１は、端末３０からの特定ユーザの指定情報（特定ユーザの指定がない旨の情報を含む）の受信を待つ。
【００４３】
Ｓ３３０では、サーバ１０のＣＰＵ２１は、後述するワークファイル３で突出して特徴データ存在数が多かった帳票ファイルにアクセスした３名以上のユーザ（４位以下の特徴データ存在数に比べて、例えば１．３倍以上の特徴データ存在数がある帳票ファイルにアクセスしたユーザ）、又は、Ｓ３２９で受信した特定ユーザの指定情報に示される特定ユーザを不審ユーザとし、この不審ユーザに該当するユーザが存在するか否かを判定する。不審ユーザが存在する場合には、処理はＳ３３１に移行する。一方、不審ユーザが存在しない場合には、処理はＳ３３４に移行する。
【００４４】
Ｓ３３４とＳ３３５を実行しても不審ユーザが存在しない場合は、推定存在期間の限定を外し、Ｓ３３５のランキング上位のユーザから３名ずつＳ３３４〜Ｓ３３５の処理を、Ｓ３３０において不審ユーザが存在すると判定されるまで繰り返す。
【００４５】
Ｓ３３１では、サーバ１０のＣＰＵ２１は、漏洩データを含む全帳票ファイルの不審ユーザのアクセスログを、全てのログ項目について抽出する。
【００４６】
Ｓ３３２では、サーバ１０のＣＰＵ２１は、Ｓ３３４の処理結果に基づいて照合処理ＩＩを実行する。照合処理ＩＩの詳細は、図７のフローチャートを用いて説明する。
【００４７】
Ｓ３３３では、サーバ１０のＣＰＵ２１は、後述するワークファイル４〜６に基づいてレポートＩＩを表示させるための画面情報を作成して、端末３０に送信し、処理を終える。
【００４８】
レポートＩＩは以下の項目を含む。
（５）洩データの漏洩推定期間の有無とその理由
（６）漏洩データの元に成った電子帳票とその世代の候補ランキング（ワークファイル４）
（７）漏洩推定期間に漏洩データを多く含んだ電子帳票にアクセスしたユーザＩＤと
累計漏洩データ存在数のランキング（ワークファイル６）
（８）上記（７）のトップ５ユーザのアクセスログ明細（ワークファイル５）
【００４９】
Ｓ３１０では、端末３０のＣＰＵ２１は、レポートＩＩの画面情報の受信を待つ。Ｓ３１１は、一定時間間隔で実行されるレポートＩＩの画面情報の受信判定である。レポートＩＩの画面情報を受信したと判定された場合、処理はＳ３１２に移行する。一方、レポートＩＩの画面情報を受信していないと判定された場合、Ｓ３０８の特定ユーザの指定判定からの処理に移行する。
【００５０】
Ｓ３１２では、端末３０のＣＰＵ２１は、レポートＩＩの画面情報に基づいて、レポートＩＩの画面表示を行う。必要であれば、ユーザの操作に応じてレポートＩＩの印刷処理も行う。
【００５１】
Ｓ３１３では、端末３０のＣＰＵ２１は、不図示の画面上の「終了」ボタンが押下されたか否かを判定する。「終了」ボタンが押下された場合、処理は終了する。一方、「終了」ボタンが押下されていない場合、処理はＳ３０１に戻る。
【００５２】
Ｓ３３４では、サーバ１０のＣＰＵ２１は、アクセスログに基づいて対象期間の対象ユーザが実行したクエリーを全て再実行し、実行結果の各帳票ファイルに対して漏洩全データによる対象帳票全ての全文検索を実行する。具体的には漏洩データの所定行単位または所定項目（群）単位で対象帳票データに対して検索を複数回実行する。そして、サーバ１０のＣＰＵ２１は、漏洩データの少なくとも一部が存在した帳票ファイル名称、少なくとも一部の漏洩データが検出された箇所に該当する世代、帳票ファイルのサーバ１０での存在期間、及び、漏洩データの存在数を、ハードディスク２８内のワークファイル７に記憶する。次に、サーバ１０のＣＰＵ２１は、ワークファイル７を漏洩データの存在数で降順にソートする。
【００５３】
Ｓ３３５では、サーバ１０のＣＰＵ２１は、Ｓ３３４の処理結果に基づいて照合処理ＩＩＩを実行し、処理をＳ３３０に戻す。照合処理ＩＩＩの詳細については、図８のフローチャートを用いて説明する。
【００５４】
図５は、図３のＳ３２３のデータ存在期間特定処理の詳細を示すフローチャートである。本処理では、サーバ１０のＣＰＵ２１は、特徴データ中に時間特定性があるデータが含まれるかを判定し、時間特定性があるデータが存在した場合は、そのデータに基づいて特徴データの存在期間を特定する。
【００５５】
以下の説明は、製造業や製品の販売業を想定した一例であり、対象企業の業種・業態に応じて様々な対象データを分析することができる。例えばサービス業であればサービスの提供履歴ＤＢ（データベース）に基づいて同様の特定処理を行うことができる。
【００５６】
まず、Ｓ５００では、サーバ１０のＣＰＵ２１は、特徴データに基づいて商品マスタの帳票ファイルを検索する。
【００５７】
Ｓ５０１では、サーバ１０のＣＰＵ２１は、Ｓ５００の検索結果に基づいて処理を分岐する。検索結果データに商品コードとシリアル番号がともに含まれている場合、処理をＳ５０２に進めて以下のＳ５０２〜Ｓ５０５の処理を実行する。検索結果データに商品コードとシリアル番号がともに含まれていない場合、処理をＳ５１２に進めて以下のＳ５１２〜Ｓ５１５の処理を実行する。
【００５８】
Ｓ５０２では、サーバ１０のＣＰＵ２１は、商品コードとシリアル番号の組をキーにして売上明細ＤＢを検索し、販売年月日範囲と地域範囲を特定する。
【００５９】
Ｓ５０３では、サーバ１０のＣＰＵ２１は、商品コードとシリアル番号の組をキーにしてサービス履歴ＤＢを検索し、メンテナンス年月範囲と地域範囲を特定する。
【００６０】
Ｓ５０４では、サーバ１０のＣＰＵ２１は、商品コードとシリアル番号の組をキーにして在庫年月日を検索し、在庫年月範囲と在庫場所を抽出する。
【００６１】
Ｓ５０５では、サーバ１０のＣＰＵ２１は、Ｓ５０２〜Ｓ５０４で特定又は抽出した情報の時期や場所に偏りがあるものがないか判定し、偏りがあればその年月範囲を候補としてＲＡＭ２２のワークエリアに記憶し、処理をＳ５０６に進める。
【００６２】
他方、Ｓ５１２では、サーバ１０のＣＰＵ２１は、Ｓ５００の検索結果データに商品コード又は機種コードがあるかを判定し、商品コード又は機種コードがある場合、以下のＳ５１３〜Ｓ５１５の処理を実行する。一方、商品コードも機種コードもない場合、処理をＳ５０６に進める。
【００６３】
Ｓ５１３では、サーバ１０のＣＰＵ２１は、検索結果データに、商品マスタへの登録期日から登録廃止期日までの期間が短い（例えば３ヶ月）機種コードや商品コードが含まれれば、その登録期日から登録廃止期日までの期間を候補としてＲＡＭ２２のワークエリアに記憶する。
【００６４】
Ｓ５１４では、サーバ１０のＣＰＵ２１は、検索結果データに販売数が少ない（例えば、所定の数量より少ない）商品の商品コードがある場合、在庫ＤＢを参照してその商品の販売期間を計算し、その期間を候補としてＲＡＭ２２のワークエリアに記憶する。
【００６５】
Ｓ５１５では、サーバ１０のＣＰＵ２１は、Ｓ５１３でＲＡＭ２２のワークエリアに記憶された各期間が重畳する年月範囲を計算し、計算した年月範囲を候補としてＲＡＭ２２のワークエリアに記憶し、処理をＳ５０６に進める。
【００６６】
Ｓ５０６では、サーバ１０のＣＰＵ２１は、検索結果データに顧客の個人情報が含まれているかを判定する。検索結果データに顧客の個人情報が含まれている場合、以下のＳ５０８〜Ｓ５１０を実行する。一方、検索結果データに顧客の個人情報が含まれていない場合、処理をＳ５１２に進める。
【００６７】
Ｓ５０８では、サーバ１０のＣＰＵ２１は、顧客マスタから当該顧客の顧客登録年月日範囲を特定する。Ｓ５０９では、サーバ１０のＣＰＵ２１は、購入履歴ＤＢから当該顧客の購入履歴を検索し、当該顧客の購入商品を抽出する。次に、サーバ１０のＣＰＵ２１は、売上明細ＤＢを検索し、販売年月日範囲と地域範囲を特定する。
【００６８】
Ｓ５１０では、サーバ１０のＣＰＵ２１は、購入商品についてサービス履歴ＤＢを検索し、メンテナンス年月範囲と地域範囲を特定する。
【００６９】
Ｓ５１１では、サーバ１０のＣＰＵ２１は、Ｓ５０８〜Ｓ５１０で偏りがあるものがないか判定し、偏りがあればその年月範囲を候補としてＲＡＭ２２のワークエリアに記憶し、処理をＳ５１６に進める。
【００７０】
Ｓ５１６では、サーバ１０の次の３つの期間候補を算出してＲＡＭ２２及びハードディスク２８に記憶する。
（ａ）狭い対象期間として、Ｓ５１４の重畳期間又はＳ５０５の期間と、Ｓ５１１の期間との論理積で算出される期間
（ｂ）位対象期間として、Ｓ５１４の重畳期間又はＳ５０５の期間と、Ｓ５１１の期間との論理和で算出される期間
（ｃ）広い対象期間として、Ｓ５１３のいずれか１つの商品の販売期間又はＳ５０２乃至Ｓ５０４の期間の論理和と、Ｓ５０８乃至Ｓ５１０の期間の論理和との、論理和で算出される期間
【００７１】
図６は、図３のＳ３２７の照合処理Ｉの詳細を示すフローチャートである。Ｓ６０１では、サーバ１０のＣＰＵ２１は、ワークファイル１に存在する帳票ファイル名称、世代及び帳票ファイルのサーバ存在期間とアクセスログとを照合して、該当する帳票ファイル名称と世代の帳票データを検索したことを示すアクセスログを特定し、それらのアクセスログに含まれるユーザＩＤ及び年月日時刻を抽出してハードディスク２８内のワークファイル２に記憶する。また、当該世代の帳票データに含まれる特徴データの存在数を算出し、ワークファイル２に記憶する。
【００７２】
Ｓ６０２では、サーバ１０のＣＰＵ２１は、ワークファイル２を当該世代の帳票データ内の特徴データの存在数で降順にソートする。
【００７３】
Ｓ６０３では、サーバ１０のＣＰＵ２１は、ワークファイル２を更にユーザＩＤ毎にソートした後、特徴データの存在数をユーザＩＤ毎にサマリーして、特徴データの存在数の降順にユーザＩＤと特徴データの存在総数をハードディスク２８内のワークファイル３に記憶する。
【００７４】
Ｓ６０４では、サーバ１０のＣＰＵ２１は、ワークファイル３内のユーザＩＤの順序でワークファイル２をソートする。
【００７５】
図７は、図３のＳ３３２の照合処理ＩＩの詳細を示すフローチャートである。Ｓ７０１では、サーバ１０のＣＰＵ２１は、Ｓ３３１で抽出したユーザログに基づいて決定した帳票ファイルを対象として全漏洩データについて全文検索を行う。具体的には漏洩データの所定行単位または所定項目（群）単位で対象帳票データに対して検索を複数回実行する。そして、サーバ１０のＣＰＵ２１は、その検索の結果得られた、漏洩データの少なくとも一部が存在した帳票ファイル名称、少なくとも一部の漏洩データが検出された箇所に該当する世代、帳票ファイルのサーバ存在期間、及び、漏洩データの存在数をハードディスク２８内のワークファイル４に記憶する。
【００７６】
Ｓ７０２では、サーバ１０のＣＰＵ２１は、ワークファイル４における帳票ファイル名称と世代とを漏洩データの存在数で降順にソートする。そして、サーバ１０のＣＰＵ２１は、このソート順に従って、帳票ファイル名称と世代別の漏洩データの存在数のランキングを算出する。
【００７７】
Ｓ７０３では、サーバ１０のＣＰＵ２１は、ワークファイル４に存在する帳票ファイル名称、世代及び帳票ファイルのサーバ存在期間と対象ユーザのアクセスログとを照合して、該当する帳票ファイル名称と世代の帳票データを検索したことを示すアクセスログを特定し、それらのアクセスログに含まれるユーザＩＤ及び年月日時刻を抽出してハードディスク２８内のワークファイル５に記憶する。また、当該世代の帳票データに含まれる漏洩データの存在数を算出し、ワークファイル５に記憶する。
【００７８】
Ｓ７０４では、サーバ１０のＣＰＵ２１は、当該世代の帳票データに含まれる漏洩データの存在数の降順にワークファイル５をソートする。そして、サーバ１０のＣＰＵ２１は、特定ユーザのアクセスログに基づく、ユーザ別の帳票ファイル名称と世代別の特徴データの存在数ランキングを算出する。
【００７９】
Ｓ７０５では、サーバ１０のＣＰＵ２１は、ワークファイル５をユーザＩＤ毎にソートした後、漏洩データの存在数をユーザ毎にサマリーして、漏洩データの存在数の降順にユーザＩＤと漏洩データの存在総数をワークファイル６として記憶する。
【００８０】
Ｓ７０６では、サーバ１０のＣＰＵ２１は、ワークファイル６のユーザＩＤの順序でワークファイル５をソートする。
【００８１】
図８は、図３のＳ３３５の照合処理IIIの詳細を示すフローチャートである。
【００８２】
Ｓ８０１では、サーバ１０のＣＰＵ２１は、ワークファイル７に存在する帳票ファイル名称、世代及び帳票ファイルのサーバ存在期間と対象全ユーザのアクセスログを照合して、該当する帳票ファイル名称と世代の帳票データを検索したことを示すアクセスログを特定し、それらのアクセスログに含まれるユーザＩＤ及び年月日時刻を抽出してハードディスク２８内のワークファイル８に記憶する。また、当該世代の帳票データに含まれる漏洩データの存在数を算出し、ワークファイル８に記憶する。
【００８３】
Ｓ８０２では、サーバ１０のＣＰＵ２１は、当該世代の帳票データに含まれる漏洩データの存在数の降順にワークファイル９をソートする。
【００８４】
Ｓ８０３では、サーバ１０のＣＰＵ２１は、ワークファイル８を更にユーザＩＤ毎にソートした後、漏洩データの存在数をユーザ毎にサマリーして、漏洩データの存在数の降順にユーザＩＤと漏洩データの存在総数をハードディスク２８内のワークファイル９に記憶する。
【００８５】
Ｓ８０４では、サーバ１０のＣＰＵ２１は、ワークファイル９のユーザＩＤの順序でワークファイル８をソートし、処理をＳ３２９に戻す。
【００８６】
以上のように、本実施形態においては、漏洩データ中の特徴データ又は漏洩データの調査対象帳票データ内の存在件数とアクセスログとに基づいて、ユーザ毎の帳票データ内の特徴データの存在件数を集計するように構成したので、漏洩元データの及び不審なユーザを効率的に把握することができる。なお、上述のＳ７０１及びＳ８０１ではユーザログに基づいて決定した帳票ファイルを対象として全漏洩データについて全文検索を行っているが、ユーザログに基づいて決定した帳票ファイルを対象として特徴データについて全文検索を行う処理とすることも可能である。
【図面の簡単な説明】
【００８７】
【図１】本発明の実施形態に係る電子帳票システムの構成を概略的に示す図である。
【図２】電子帳票サーバのハードウェア構成を概略的に示すブロック図である。
【図３】本発明の実施形態に係る電子帳票システムの主要動作を示すフローチャートである。
【図４】漏洩データ追跡条件指定画面の構成例を示す図である。
【図５】図３のＳ３２３のデータ存在期間特定処理の詳細を示すフローチャートである。
【図６】図３のＳ３２７の照合処理Ｉの詳細を示すフローチャートである。
【図７】図３のＳ３３２の照合処理ＩＩの詳細を示すフローチャートである。
【図８】図３のＳ３３５の照合処理ＩＩＩの詳細を示すフローチャートである。
【図９】アクセスログのデータ構成例を模式的に示す図である。
【図１０】レポートＩの構成例を示す図である。
【符号の説明】
【００８８】
１０  電子帳票サーバ
１５  通信回線
３０  帳票参照端末
２０  システムバス
２１  ＣＰＵ
２２  ＲＡＭ
２３  ＲＯＭ
２４  ＬＡＮアダプタ
２５  ビデオアダプタ
２６  キーボード
２７  マウス
２８  ハードディスク
２９  記憶媒体ドライブ
【図１】
2008165511.tif 000003
【図２】
2008165511.tif 000004
【図３】
2008165511.tif 000005
【図４】
2008165511.tif 000006
【図５】
2008165511.tif 000007
【図６】
2008165511.tif 000008
【図７】
2008165511.tif 000009
【図８】
2008165511.tif 000010
【図９】
2008165511.tif 000011
【図１０】
2008165511.tif 000012