(57)【要約】【課題】ファイルの保存や新規作成など、ユーザが行う一つのコンテンツ操作に対しファイルシステムのログは複数取得される。この複数のログを実操作に対応したログにするために、予め定義したパターンと一致するログが取得された場合、定義しておいた一つのログとして出力する手法が提案されている。しかし、アプリケーションに依存するという問題がある。【解決手段】本発明は、アプリケーションに依存せずに、作成ログを集約するログ分析装置を提供する。ログ分析装置は、作成ログ登録プログラムと、単独の作成ログと判断するためのパラメータsを備える。作成ログ登録プログラムは、ホスト名とフルパスが一致する作成ログと削除ログとがs秒以内に取得された場合、その作成ログは実操作と無関係と判断し、ＤＢへ登録しない。これにより、アプリケーションに依存せずに、実操作と相関のある作成ログの取得が可能となる。【選択図】図５
2010262491.tif 000002
【特許請求の範囲】
【請求項１】
ファイル操作について取得されるログ集約システムであって、
集約した操作ログを格納するログ登録ＤＢと、
取得された前記操作ログとして、作成操作を示す「作成」ログと削除操作を示す「削除」ログとを入力として受け付け、集約した操作ログを、前記ログ登録ＤＢへ登録するログ集約手段と、を備え、
前記ログ集約手段は、予め設定された時間ｓを記憶し、
前記操作ログは、当該操作が行われた時刻と、操作内容と、前記操作対象となるファイルを特定するファイル特定情報と、を含んで構成され、
前記ログ集約手段は、
前記ファイル特定情報が同一と示すファイルに対して前記時間ｓ内に行われた、という条件を満たす、前記作成ログと前記削除ログとを前記ログ登録ＤＢへ登録せず、前記条件を満たさない前記「作成」ログを前記ログ登録ＤＢへ登録する
ことを特徴とするログ集約システム。
【請求項２】
請求項１に記載のログ集約システムにおいて、
取得された前記操作ログが予め格納された操作ログＤＢを備え、
前記ログ集約手段は、前記操作ログＤＢから、前記入力としての前記操作ログを一つずつ、読み込み、
前記条件を満たさない前記「作成」ログを、前記登録ＤＢに登録する
ことを特徴とするログ集約システム。
【請求項３】
請求項１に記載のログ集約システムにおいて、
ファイルシステム監視手段を備え、
前記ファイスシステム監視手段は、対象とするファイルシステムを監視することにより前記操作ログを取得して、バッファに格納し、
前記ログ集約手段は、予め設定された、前記バッファに格納された前記操作ログを処理するための間隔ｔを記憶し、
前記ログ集約手段は、
前記間隔ｔごとに、前記バッファに格納された前記操作ログを、前記入力として受け付け、
処理を開始した時刻より前記時間ｓ以上古い、操作が行われた時刻が記録されている操作ログを、前記バッファから削除する
ことを特徴とするログ集約システム。
【請求項４】
請求項１ないし３いずれか一に記載のログ集約システムにおいて、
前記操作ログは、前記「作成」ログと前記「削除」ログ以外の操作を示すその他のログを含み、
前記集約手段は、入力として受け付けた前記その他のログを前記登録ＤＢに登録する
ことを特徴とするログ集約システム。
【請求項５】
請求項１ないし４いずれか一に記載のログ集約システムにおいて、
前記ファイル特定情報は、ホスト名とフルパスとを含む
ことを特徴とするログ集約システム。
【請求項６】
請求項３記載のログ集約システムにおいて、
前記ファイルシステム監視手段は、
前記ファイルシステムを監視して前記操作ログを取得した場合、当該操作ログの種類を判定し、
前記操作ログが前記「作成」ログあるいは前記「削除」ログであった場合に、当該操作ログを前記バッファへ格納する
ことを特徴とするログ集約システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルの操作ログ情報を集約する技術に関する。
【背景技術】
【０００２】
情報漏洩事故が社会問題となっている。情報漏洩対策として、情報処理装置において、ファイル操作やメール送受信といった操作に関する操作ログ（単にログともいう）を取得し、漏洩事故発生時の原因究明や不正の抑止に活用する方法が多く知られている。
【０００３】
情報処理装置が備えるOSは、記憶装置に記録するまたは記録されているデータを管理するための仕組みとしてファイルシステムを備える。ユーザがファイル操作を行うときは、ファイルシステムを介してファイルが操作されるため、ファイルシステムを監視することで、ファイル操作ログを取得することができる。
【０００４】
しかしながら、ユーザが行った一つの操作に対して、記憶装置へのファイル操作を行うファイルシステムでは複数の操作が行われることがある。このような場合、ファイルシステムの操作ログは複数取得されることになってしまい、分かりづらい。例えば、電子ファイルを作成した場合、ファイルシステムからは「作成」「削除」「作成」「変更」のような複数の操作が行われる。
【０００５】
これに対し、これらを実操作に対応したログにして、分析を容易にするために、あらかじめ定義したパターンと一致する処理が、所定の時間以内に行われた場合に、複数の操作から一つの実操作を表すログを作成する手法が提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】米国特許出願公開第2008/077988号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１の方法で集約したログを作成する場合、予めパターンを定義しておく必要がある。しかしながら、ユーザにとって同じ操作であっても、アプリケーションや操作方法毎に、ファイルシステムが行う処理内容が異なることが分かっている。
【０００８】
例えば、新たに電子ファイルが作成される「作成」という処理（電子メールの添付ファイルも対象とするファイルの保存処理も含む）の場合、メーラなど使用するアプリケーションプログラム（単に、アプリケーションという）やファイルの拡張子、ファイルの作成方法により、処理内容が異なる。
【０００９】
特許文献１の方法に従うと、このような場合、個別にパターンを定義する必要がある。そのため、パターンが登録されていない方法で、あるいは、登録されていないアプリケーションでファイル操作を行った場合、実操作に対応していないログが作成される可能性がある。
【課題を解決するための手段】
【００１０】
本発明は、前記課題を解決する、アプリケーションに依存せずに集約したログを作成するログ集約システムを提供する。
【００１１】
より具体的には、本発明は、「作成」処理に関して、アプリケーションごとのパターンの定義を必要とせずに、集約された「作成」ログの出力装置を提供する。
【００１２】
例えば、一つのファイルの「作成」処理に関して、「作成」ログ出力後に、ホスト名とファイルのフルパスが一致する「削除」ログが、あらかじめ定めた「単独の作成ログではない」、と判断するための時間ｓ以内に出力されているときに、その「作成」ログと「削除」ログは実操作には対応しないログと判断して登録しない、という処理を特徴とする。
【００１３】
上記態様により、予めパターンを登録する必要も無く、利用者の実操作に対応した、分かりやすい作成ログを、アプリケーションに依存せずに提供可能になるため、万が一情報漏洩事故が起きた場合の漏洩元の特定や要因分析が容易になる。また、登録されるログの量を減らすことが出来るので、必要な記憶装置容量を減らすことも可能になる。
【００１４】
本発明が提供するログ集約システムは、より具体的には、集約した操作ログを格納するログ登録ＤＢと、取得された前記操作ログとして、作成操作を示す「作成」ログと削除操作を示す「削除」ログとを入力として受け付け、集約した操作ログを、前記ログ登録ＤＢへ登録するログ集約手段と、を備え、前記ログ集約手段は、予め設定された時間ｓを記憶し、前記操作ログは、当該操作が行われた時刻と、操作内容と、前記操作対象となるファイルを特定するファイル特定情報と、を含んで構成され、
前記ログ集約手段は、前記ファイル特定情報が同一と示すファイルに対して前記時間ｓ内に行われた、という条件を満たす、前記作成ログと前記削除ログとを前記ログ登録ＤＢへ登録せず、前記条件を満たさない前記「作成」ログを前記ログ登録ＤＢへ登録することを特徴とする。
【００１５】
また、上記ログ集約システムは、対象とするファイルシステムを監視することにより前記操作ログを取得して、バッファに格納するファイスシステム監視手段を備え、
前記ログ集約手段は、予め設定された、前記バッファに格納された前記操作ログを処理するための間隔ｔを記憶し、前記間隔ｔごとに、前記バッファに格納された前記操作ログを、前記入力として受け付け、処理を開始した時刻より前記時間ｓ以上古い、操作が行われた時刻が記録されている操作ログを、前記バッファから削除する、ものであってもよい。
【発明の効果】
【００１６】
本発明によれば、アプリケーションに依存せずに、集約されたログを出力可能になる。
【図面の簡単な説明】
【００１７】
【図１】あらかじめ取得されたログの集約システムの機能構成を例示する図である。
【図２】ログ集約装置のハードウェア構成を例示する図である。
【図３】ファイル操作ログのデータ構造を例示する図である。
【図４】取得されたログを集約する処理の流れを例示するフローチャートである。
【図５】単独の作成ログかを判断しログを登録する処理の流れを例示するフローチャートである。
【図６】一定時間ごとにログを集約するシステムの機能構成を例示する図である。
【図７】監視プログラムの処理の流れを例示するフローチャートである。
【図８】一定時間Ｔが経過した場合の作成ログ登録処理の流れを例示するフローチャートである。
【図９】終了命令を受け取った場合の作成ログ登録処理の流れを例示するフローチャートである。
【発明を実施するための形態】
【００１８】
以下、図面を用いて、集約した「作成」ログを出力する実施例を説明する。
【実施例１】
【００１９】
実施例１として、あらかじめ取得されたログを集約するシステムを、図１を用いて説明する。
【００２０】
あらかじめ取得されたログの集約システム10は、ログ集約装置100と操作ログＤＢ102とログ登録ＤＢ104を含んで構成される。操作ログＤＢ102とログ登録ＤＢ104はログ集約装置100と通信媒体（ネットワークまたはネットワークを伝播するデジタル信号や搬送波）や記録媒体を介してデータのやり取りが可能である。実施例１において、ログ集約装置100は「作成」ログ登録プログラム102aと、ログを単独と判断するための、予め決められた時間ｓ102bを、図２に示すメモリ204またはストレージ202に備える。
【００２１】
図２は、ログ集約装置100のハードウェア構成を示す。ログ集約装置100はＣＰＵ200、ストレージ202、メモリ204、入力装置206、出力装置208、通信装置210、媒体読み書き装置212等を有する。ＣＰＵ200、ストレージ202、メモリ204、入力装置206、出力装置208、通信装置210、記録媒体読み書き装置212等はバスなどの内部通信線214によって互いに接続されている。ＣＰＵ200がストレージ202やメモリ204に格納されているプログラムを実行することにより、通信装置210は、上記通信媒体を介してのデータのやり取りを行い、媒体読み書き装置212は、記録媒体を介してのデータのやり取りを行う。
【００２２】
図３は、本実施例で用いるファイル操作ログのデータ構造を示す。図３−ａ）は、ログ集約装置100以外の装置に備わるファイルシステムから取得されるログの例であり、図３−ｂ）は、本実施例の処理により集約されてログ登録ＤＢ104に登録されるログの例である。ログは操作タイプ300a, 300b、ログ取得時刻302a, 302b、ホスト名304a, 304b、ファイルパス306a, 306bにより構成される。ファイルパスとは、例えば、ルートディレクトリからのパスでファイルを識別するフルパスである。
【００２３】
それぞれのログはログ取得時刻の早いものから順に格納されている。なお、ログのデータ構造の構成要素である操作タイプは、例えば、「作成」「削除」「変更」「名称変更」の４種類からなり、「作成」はファイルの作成、「削除」はファイルの削除、「変更」はファイルの中身やプロパティの変更、「名称変更」はファイルの名前の変更があったことを意味する。
【００２４】
以下、本実施例における処理内容を説明する。
【００２５】
以下に説明する処理は、ＣＰＵ200がログ登録プログラム102aを実行することにより実現されるものであるが、説明の便宜上、プログラムを実行主体として説明する。
【００２６】
図４を用いて、「作成」ログ登録プログラム102aの処理手順を説明する。ステップ400aはループ処理の開始を表し、400bと対になっている。つまり、処理がステップ400bまで進んだとき、ステップ400aに戻り、ステップ400aに示される条件を満たす場合、繰り返し処理を行う。ここでは、操作ログＤＢ102中の全てのログに対してステップ402の処理を行うことを意味する。
【００２７】
ステップ402の詳細を図５を用いて説明する。以下の操作も「作成」ログ登録プログラムが行うものである。
【００２８】
操作ログＤＢ102中のi番目のログをログ登録ＤＢ104へ登録するかどうか判定することを考える。まず、ステップ500でi番目のログが「作成」であるかどうかを判定する。本実施例では「作成」ログの集約を目的としているため、i番目のログが「作成」でない場合（ステップ500でNO）は、i番目のログは不要となるので、登録せずにi番目のログの分析を終了する。
【００２９】
i番目のログが「作成」だったとき（ステップ500でYES）はステップ502へ進み、登録判定フラグをtrueにする。ステップ504a, 504bはループ処理であることを表す。ステップ504a-504bのループ処理でi番目の「作成」ログを打ち消す「削除」ログが存在するかどうかを判定する。
【００３０】
今、jを操作ログＤＢ102中のi＋１番目以降のログの番号とし、j番目のログとi番目のログを比較することを考える。
【００３１】
まず、ステップ506でi番目のログとj番目のログの取得時刻の差がｓ秒以内であるかどうかを判定する。i番目のログとj番目のログの差がｓ秒より大きいとき（ステップ506でNO）、i番目のログは単独な「作成」ログと判定できるので、ステップ504a-504bのループ処理を抜けステップ512へ進む。
【００３２】
一方、ステップ506でi番目のログとj番目のログの差がｓ秒以下のとき（ステップ506でYES）は、ステップ508へと進む。ステップ508ではi番目のログがj番目のログのホスト名とファイルパスと一致する「削除」ログかどうかを判定する。
【００３３】
ステップ506と508の条件を満たすとき（ステップ508でYES）、i番目の「作成」ログはj番目の「削除」ログで打ち消される、ＰＣ内部での動きと考えることができる。つまり、i番目の「作成」ログはユーザの実操作ではないログであると判定できるため、504a-504bのループ処理を抜け、ステップ510へ進む。ステップ510では登録判定フラグをfalseにし、i番目のログが登録されないようにし、ステップ512へ進む。
【００３４】
ステップ508の条件を満たさない場合（ステップ508でNO）は、504a-504bのループ処理を続行し、j＋１番目のログに対して同様の分析処理を行う。
【００３５】
ステップ512ではi番目のログを登録するかどうか判定する。
【００３６】
登録判定フラグがfalseの場合は登録を行わず、i番目のログの分析処理を終了する。登録判定フラグがtrueの場合はステップ514へ進み、ログ登録ＤＢ104へi番目のログを登録し、i番目のログの分析処理を終了する。
【００３７】
本実施例によれば、予め取得した操作ログＤＢ102中の操作ログに一切改変を加えることなく単独の「作成」ログを取得できるという、更なる効果がある。
【実施例２】
【００３８】
図６は、一定時間ごとにログを集約するシステムを、実施例２として示した図である。
【００３９】
実施例２は、ログの取得と集約とを平行して行い、取得したログを繰り返し（たとえば、一定時間ごとに）集約し、集約したログをログ登録ＤＢに登録する形態を想定している。
【００４０】
一定時間ごとにログを分析し、集約するシステム60は、ログ集約装置600とログ登録ＤＢ602を含んで構成される。実施例１と同様に、ログ登録ＤＢ602はログ集約装置600と通信媒体（ネットワークまたはネットワークを伝播するデジタル信号や搬送波）や記録媒体を介してデータのやり取りが可能である。本実施例においては、ログ集約装置600は、監視プログラム600a、バッファ600b、「作成」ログ登録プログラム600c、Ｔ秒カウンタ600d、ログを単独と判断するための、予め決められた時間ｓ600e、「作成」ログ登録プログラムを起動させる間隔Ｔ600fを、図２に示すメモリ204またはストレージ202に備える。
【００４１】
ログ集約装置600のハードウェア構成は、実施例１と同様、図２で示される。また、本実施例で用いるファイル操作ログのデータ構造も実施例１と同様に図３で示されるものである。
【００４２】
以下に説明する処理は、実施例１と同様、上記各種プログラムをCPU200が実行することにより実現されるものであるが、説明の便宜上、プログラムを実行主体として説明する。
【００４３】
本実施例では、ログの取得とログの集約の大きく２つに操作が分かれる。ログの取得は監視プログラム600aとバッファ600bによって行われ、ログの集約はバッファ600bと「作成」ログ登録プログラム600cとＴ秒カウンタ600dとログを単独と判断するための時間ｓ600eと「作成」ログ登録プログラムを起動させる間隔Ｔ600fによって行われる。
【００４４】
バッファ600bの操作は、公知の技術に基づき、取得処理または集約処理が競合しないように行われるものとする。例えば、監視プログラムがバッファ600bへログを追加する処理を行っているときに、監視プログラムがバッファ600bへ他の新たなログを追加しようとしたり、「作成」ログ登録プログラムがバッファ600b中のログの取得処理を開始しようとしたりする場合、後から開始する処理はバッファ600bを操作している現在の処理が終了するのを待ってから処理を開始する。
【００４５】
まず、ログの取得処理について説明する。監視プログラム600aはファイルシステムを監視し、新しいログが取得されたときに図７で示される処理を行う。
【００４６】
ファイルシステムから新規にログを取得した場合、まずステップ700で、取得したログの操作を調べる。本実施例で判定に用いるログの操作は「作成」と「削除」であるため、「作成」または「削除」の場合、ステップ702へ進み、ログデータをバッファ600bに送る。本実施例において、ログが「作成」、「削除」のいずれでもない、その他のログの場合は、集約処理に不要であるため、バッファ600ｂへログデータを送ることなく処理を終了する。
【００４７】
次に、ログの集約処理について説明する。「作成」ログ登録プログラム600cの手順を説明する。本実施例の場合、ログの取得処理と、集約処理とを並行して行うため、「作成」ログ登録プログラム600cは本システム60の開始あるいは前回の集約から一定時間が経過した場合と、一定時間の経過に関わらずユーザが本システム60を終了させた場合と、で処理が異なる。
【００４８】
一定時間が経過した場合の処理の流れを、図８を用いて説明する。以下の処理は特別な記述がない限り「作成」ログ登録プログラムが行うものである。
【００４９】
まず、ステップ800で、集約処理の開始時刻をＴ_startとする。なお、Ｔ_start＝前回集約開始時刻＋一定時間Ｔ600fである。
【００５０】
ステップ802では、バッファ600b中にログがあるかを判定する。バッファ600b中にログがない、つまり一定時間Ｔ600f内に「作成」または「削除」ログが発生しなかった場合は、集約処理を終了する。バッファ600b中にログが存在する場合はステップ804へ進む。
【００５１】
ステップ804では、countを０に初期化する。ここで、countはバッファ600b中の何番目のログまで登録判定処理を行ったかを表す。ステップ806a, 806bは、図４のステップ400a, 400bと同様、ループ処理を表す。
【００５２】
バッファ600b中のi番目のログの登録判定を行うことを考える。ステップ808では、i番目のログの登録判定を行うかどうかを判定する。ログの登録判定を行うかどうかはi番目のログの取得時刻が時刻Ｔ_startよりｓ秒以上過去であるかによって判定する。本実施例の場合、ユーザがシステムを終了させない限り、集約処理終了後、再びログの取得処理と集約処理が行われていく。そのため、集約処理開始直前で取得されたログの登録判定は次回集約処理で行う。
【００５３】
ステップ810では、countの値を１増加させる。ここでは、i番目のログの登録処理を行っているため、countの値はiとなっている。
【００５４】
ステップ402は、実施例１と同じく図５で示される処理であり、i番目のログが単独の「作成」のログと判断された場合は、そのログが登録される。
【００５５】
最後に、ステップ814で、バッファ600b中のcount番目までを削除する。削除後にバッファ600b中に残ったログは、先頭から順に１番目、２番目のログとなるように変更され、次回の集約処理時に用いられる。
【００５６】
ログ集約装置600がユーザからの終了命令を受け取った場合の「作成」ログ登録プログラムの処理を、図９を用いて説明する。
【００５７】
「作成」ログ登録プログラムは、ユーザからの終了命令を受け取った場合、バッファ600b中の全てのログについて集約処理を行う。まず、ステップ900で、バッファ600b中にログが存在するかどうかを判定する。バッファ600b中にログがない、つまり一定時間内に「作成」または「削除」ログが発生しなかった場合は、集約処理を終了する。バッファ600b中にログが存在する場合はステップ902aへ進む。ステップ902a, 902bは、図４のステップ400a, 400bと同様、ループ処理を表す。ループ内の処理であるステップ402は、実施例１と同じく図５で示される処理であり、単独の「作成」ログかどうかを判定し、単独の「作成」ログの場合、ログ登録ＤＢ104へ登録する。
【００５８】
ステップ902a〜902bの処理により、全てのログについて集約処理が終了したら、ステップ904へ進む。
【００５９】
ステップ904では、登録判定を行ったログ、つまりバッファ600b内の全てのログを削除する。
【００６０】
本実施例によれば、ログの取得処理と集約処理を平行して行うことで、ログの取得から集約までの手間が省けるという、更なる効果がある。
【符号の説明】
【００６１】
10…あらかじめ取得されたログの分析システム、100…ログ分析装置、100a…「作成」ログ登録プログラム、100b…単独のログと判断するための時間、102…操作ログＤＢ、104…ログ登録ＤＢ
200…ＣＰＵ、202…ストレージ、204…メモリ、206…入力装置、208…出力装置、210…通信装置、212…媒体読み書き装置、214…バス、300a, 300b…ログの操作タイプ、302a, 302b…ログ取得時刻、304a, 304b…ホスト名、306a, 306b…ファイルパス、60…一定時間ごとにログを分析するシステム、600…ログ分析装置、600a…監視プログラム、600b…バッファ、600c…「作成」ログ登録プログラム、600d…Ｔ秒カウンタ、600e…単独のログと判断するための時間、600f…「作成」ログ登録プログラムを起動させる間隔、602…ログ登録ＤＢ。
【図１】
2010262491.tif 000003
【図２】
2010262491.tif 000004
【図３】
2010262491.tif 000005
【図４】
2010262491.tif 000006
【図５】
2010262491.tif 000007
【図６】
2010262491.tif 000008
【図７】
2010262491.tif 000009
【図８】
2010262491.tif 000010
【図９】
2010262491.tif 000011