(57)【要約】【課題】  キーワードに対応して検索に用いる検索データをあらかじめ登録してあるデータベース検索システムに於いては、柔軟な検索が困難である。【解決手段】  データ検索装置は、データベースと、主項目キーワードと項目クエリデータを対応づける抽象キーワード表と、前記主項目キーワードと第１の副項目キーワードとを含む条件情報を入力して、前記第１の副項目キーワードに基づいて前記データベースを検索して第１の検索結果を得て、前記第１の検索結果と前記項目クエリデータに基づいて前記データベースを検索して第２の検索結果を得る条件情報解釈部とを備える。【選択図】      図１
2008299705.tif 000002
【特許請求の範囲】
【請求項１】
データベースと、
主項目キーワードと項目クエリデータを対応づける抽象キーワード表と、
前記主項目キーワードと第１の副項目キーワードとを含む条件情報を入力して、前記第１の副項目キーワードに基づいて前記データベースを検索して第１の検索結果を得て、前記第１の検索結果と前記項目クエリデータに基づいて前記データベースを検索して第２の検索結果を得る条件情報解釈部と、
を備えることを特徴とするデータ検索装置。
【請求項２】
前記データベースは入力したログデータを時系列に蓄積した時系列ログデータベースであり、
前記条件情報解釈部は、前記第２の検索結果が前記項目クエリデータで規定される監査基準に適合するか否かの判断をおこなって判断結果を出力することを特徴とする請求項１に記載のデータ検索装置。
【請求項３】
前記項目クエリデータは検索式を含み、
前記条件情報解釈部は前記第１の検索結果に基づいて前記検索式を修正し、修正後の前記検索式を実行して前記第２の検索結果を得ることを特徴とする、請求項１または２に記載のデータ検索装置。
【請求項４】
監視キーワードと監視クエリデータを対応づける監視キーワード表と、
前記時系列ログデータベースに順次追加されるデータに前記監視キーワードが含まれることを検出したさいに、前記監視クエリデータに基づいて前記時系列ログデータを検索して、当該検索結果を付帯情報表に格納する付帯管理情報制御部とをさらに備え、
前記条件情報は第２の副項目キーワードをさらに含み、
前記条件情報解釈部は、前記第２の副項目キーワードに基づいて前記付帯情報表を検索して第３の検索結果を得て、前記第３の検索結果、前記第１の検索結果および前記項目クエリデータに基づいて前記時系列ログデータベースを検索して前記第２の検索結果を得ることを特徴とする、請求項２に記載のデータ検索装置。
【請求項５】
請求項２または４に記載のデータ検索装置と、
前記ログデータを生成して前記データ検索装置に出力するアプリケーションサーバと、
前記条件情報を格納する監査条件データベースとを備え、前記アプリケーションサーバから承認依頼を入力して前記条件情報を前記データ検索装置に出力し、前記データ検索装置から前記判断結果を入力して前記判断結果を承認者端末に出力する監査管理装置と、からなるデータ検索システム。
【請求項６】
データベースと、
主項目キーワードと項目クエリデータを対応づける抽象キーワード表を格納した記憶装置とを備えたコンピュータが、
前記主項目キーワードと第１の副項目キーワードとを含む条件情報を入力して、前記第１の副項目キーワードに基づいて前記データベースを検索して第１の検索結果を得て、前記第１の検索結果と前記項目クエリデータに基づいて前記データベースを検索して第２の検索結果を得る条件情報解釈行程を有することを特徴とするデータ検索方法。
【請求項７】
前記データベースは入力したログデータを時系列に蓄積した時系列ログデータベースであり、
前記コンピュータが、前記第２の検索結果が前記項目クエリデータで規定される監査基準に適合するか否かの判断をおこなって判断結果を出力する監査結果出力行程を有することを特徴とする請求項６に記載のデータ検索方法。
【請求項８】
前記項目クエリデータは検索式を含み、
前記コンピュータが、前記条件情報解釈行程に於いて、前記第１の検索結果に基づいて前記検索式を修正し、修正後の前記検索式を実行して前記第２の検索結果を得ることを特徴とする、請求項６または７に記載のデータ検索方法。
【請求項９】
前記記憶装置は監視キーワードと監視クエリデータを対応づける監視キーワード表をさらに格納し、
前記コンピュータが、前記時系列ログデータベースに順次追加されるデータに前記監視キーワードが含まれることを検出したさいに、前記監視クエリデータに基づいて前記時系列ログデータを検索して、当該検索結果を付帯情報表に格納する付帯情報作成行程をさらに有し、
前記条件情報は第２の副項目キーワードをさらに含み、
前記コンピュータが前記条件情報解釈行程に於いて、前記第２の副項目キーワードに基づいて前記付帯情報表を検索して第３の検索結果を得て、前記第３の検索結果、前記第１の検索結果および前記項目クエリデータに基づいて前記時系列ログデータベースを検索して前記第２の検索結果を得ることを特徴とする、請求項７に記載のデータ検索方法。
【請求項１０】
データベースと、
主項目キーワードと項目クエリデータを対応づける抽象キーワード表を格納した記憶装置とを備えたコンピュータに、
前記主項目キーワードと第１の副項目キーワードとを含む条件情報を入力して、前記第１の副項目キーワードに基づいて前記データベースを検索して第１の検索結果を得て、前記第１の検索結果と前記項目クエリデータに基づいて前記データベースを検索して第２の検索結果を得る条件情報解釈処理を実行させることを特徴とするデータ検索プログラム。
【請求項１１】
前記データベースは入力したログデータを時系列に蓄積した時系列ログデータベースであり、
前記コンピュータに、前記第２の検索結果が前記項目クエリデータで規定される監査基準に適合するか否かの判断をおこなって判断結果を出力する監査結果出力処理をさらに実行させることを特徴とする請求項１０に記載のデータ検索プログラム。
【請求項１２】
前記項目クエリデータは検索式を含み、
前記コンピュータに、前記条件情報解釈処理に於いて、前記第１の検索結果に基づいて前記検索式を修正し、修正後の前記検索式を実行して前記第２の検索結果を得させることを特徴とする、請求項１０または１１に記載のデータ検索プログラム。
【請求項１３】
前記記憶装置は監視キーワードと監視クエリデータを対応づける監視キーワード表を格納し、
前記コンピュータに、前記時系列ログデータベースに順次追加されるデータに前記監視キーワードが含まれることを検出したさいに、前記監視クエリデータに基づいて前記時系列ログデータを検索して、当該検索結果を付帯情報表に格納する付帯情報作成行程をさらに実行させ、
前記条件情報は第２の副項目キーワードをさらに含み、
前記コンピュータに前記条件情報解釈行程に於いて、前記第２の副項目キーワードに基づいて前記付帯情報表を検索して第３の検索結果を得て、前記第３の検索結果、前記第１の検索結果および前記項目クエリデータに基づいて前記時系列ログデータベースを検索して前記第２の検索結果を得させることを特徴とする、請求項１１に記載のデータ検索プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ検索装置、データ検索システム、データ検索方法および、データ検索プログラムに関する。
【背景技術】
【０００２】
特許文献１には、フィルタリング設定項目ファイルに基づいてアクセスログファイルのフィルタリングを行い、その結果に基づいてログの正当性を確認するアクセスログ解析システムが記載されている。しかしながら、本技術はアクセスログファイルの内容に応じて、フィルタリング設定項目ファイルを柔軟に変更するものではない。
【０００３】
特許文献２には、入力されたキーワードに基づいてデータベースを検索するさいに、キーワードの関連情報を読み出して、関連情報に基づいて入力検索問い合わせ文に検索項目を補完し、データベース検索文を生成する技術が記載されている。しかしながら、本技術はデータベースの内容に応じて、補完内容を柔軟に変更するものではない。
【０００４】
【特許文献１】特開２００５−３８１２５号公報
【特許文献２】特開２００２−２４５０８０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
キーワードに対応して検索に用いる検索データをあらかじめ登録してあるデータベース検索システムに於いては、柔軟な検索が困難との課題が有った。特許文献１の技術はアクセスログファイルの内容に応じて、フィルタリング設定項目ファイルを柔軟に変更するものではないからである。また、特許文献２の技術は、データベースの内容に応じて、補完内容を柔軟に変更するものではないからである。本発明の目的は、上記の課題を解決するための、データ検索装置、データ検索システム、データ検索方法および、データ検索プログラムを提供することにある。
【課題を解決するための手段】
【０００６】
本発明の一例のデータ検索装置は、データベースと、主項目キーワードと項目クエリデータを対応づける抽象キーワード表と、前記主項目キーワードと第１の副項目キーワードとを含む条件情報を入力して、前記第１の副項目キーワードに基づいて前記データベースを検索して第１の検索結果を得て、前記第１の検索結果と前記項目クエリデータに基づいて前記データベースを検索して第２の検索結果を得る条件情報解釈部とを備える。
【０００７】
本発明の一例のデータ検索方法は、データベースと、主項目キーワードと項目クエリデータを対応づける抽象キーワード表を格納した記憶装置とを備えたコンピュータが、前記主項目キーワードと第１の副項目キーワードとを含む条件情報を入力して、前記第１の副項目キーワードに基づいて前記データベースを検索して第１の検索結果を得て、前記第１の検索結果と前記項目クエリデータに基づいて前記データベースを検索して第２の検索結果を得る条件情報解釈行程を有する。
【０００８】
本発明の一例のデータ検索プログラムは、データベースと、主項目キーワードと項目クエリデータを対応づける抽象キーワード表２０１を格納した記憶装置とを備えたコンピュータに、前記主項目キーワードと第１の副項目キーワードとを含む条件情報を入力して、前記第１の副項目キーワードに基づいて前記データベースを検索して第１の検索結果を得て、前記第１の検索結果と前記項目クエリデータに基づいて前記データベースを検索して第２の検索結果を得る条件情報解釈処理を実行させる。
【発明の効果】
【０００９】
本発明は、キーワードに対応して検索に用いる検索データをあらかじめ登録してあるデータベース検索システムに於いて、柔軟な検索を容易にする。
【発明を実施するための最良の形態】
【００１０】
［実施例１］
本発明の実施例の構成について図面を参照して説明する。
図１は、本発明のデータ検索装置００１の概略を示す。データ検索装置００１は、アプリケーションログ２０２を時系列に順次入力して、監査証跡情報データベース２０３の中に時系列ログデータ２０４として蓄積する。同装置は、さらに条件情報５０１を入力し、同情報に基づいて、時系列ログデータ２０４を対象に監査を行い、監査結果を出力する。なお、条件情報５０１は、アプリケーションログ２０２で記録された監査証跡を対象に、適切な運用がされているか、規則違反がないか、不正なアクセスがないかといった確認するべき監査項目を定めたものである。詳細は後述する。
【００１１】
図１によれば、データ検索装置００１は、監査条件解釈部１０１と、監査証跡データ収集部１０２と、監査証跡データ監視部１０３と、付帯情報制御部１０４とを備えている。同装置はさらに、抽象キーワード表２０１と、時系列ログデータ２０４と、付帯情報表２０５と、監視キーワード表２０６とを備えている。時系列ログデータ２０４と、付帯情報表２０５は、監査証跡情報データベース２０３に格納されている。
【００１２】
抽象キーワード表２０１は、主項目キーワード２１０ｎとそれに一対一に対応する主項目クエリデータ２１３ｎの対を包含する。同表は、副項目キーワード２１１ｎとそれに一対一に対応する副項目クエリデータ２１３ｎの対および、クエリ内キーワード２１２ｎとそれに一対一に対応するパラメータクエリデータ２１４ｎの対も包含する。なお、符号（２１１ｎや２１２ｎ等）のサフィックスｎは、これらの要素がひとつまたは複数存在することを示す。
【００１３】
ただし、特に断りがない限り、異なる符号について同じｎが使用されていても、それらの異なる符号を持つ要素が、必ずしも同数であることは示さない。
【００１４】
監視キーワード表２０６は、監視キーワード２６０ｎとそれに一対一に対応する監視クエリデータ２６２ｎの対および、監視クエリ内キーワード２１２ｎとそれに一対一に対応するパラメータクエリデータ２１４ｎの対を包含する。
【００１５】
上記要素間の主要なデータの流れを、図１に記載する要素間の矢印で示す。詳細は後述する。
【００１６】
図２は各クエリデータの詳細を示している。クエリデータは、項目クエリデータ２１３ｎ、パラメータクエリデータ２１４ｎ、監視クエリデータ２６２ｎのいずれかまたはすべてを指す。同様に、キーワードとは、主項目キーワード２１０ｎ、副項目キーワード２１１ｎ、クエリ内キーワード２１２ｎ、監視キーワード２６０ｎのいずれかまたはすべてを指す。
【００１７】
項目クエリデータ２１３ｎは、属性３０１、検索式３０２および解析処理部エントリ３０４からなる。属性３０１は、その項目クエリデータ２１３ｎが主項目キーワード２１０ｎ対応であるか副項目キーワード２１１ｎ対応であるかの区別および、検索の対象が時系列ログデータ２０４なのか付帯情報表２０５なのかの区別を示す。検索式３０２は、キーワードに対応して実行するデータベース検索の条件式の雛形を格納する。検索式３０２はＳＱＬ（Structured Query Language）等により記述される。解析処理部エントリ３０４は、対応するキーワードの解釈処理部プログラム（図示せず）のエントリアドレスを示す。
【００１８】
パラメータクエリデータ２１４ｎは、属性３０１、置換規則３０３および解析処理部エントリ３０４からなる。属性３０１は、そのクエリデータがクエリ内キーワード２１２ｎに対応することを示す。置換規則３０３は、検索式３０２が包含するパラメータを置換する為の規則を示す。解析処理部エントリ３０４は、対応するキーワードの解釈処理部プログラム（図示せず）のエントリアドレスを示す。
【００１９】
図３は、監視キーワード表２０６の具体例を示す。図４は、抽象キーワード表２０１の具体例を示す。
【００２０】
図５によれば、条件情報５０１は主項目指定５１１ｎおよび副項目指定５１２ｎを包含する。データ検索装置００１は、副項目指定５１２ｎを使用して、抽象キーワード表２０１を検索して項目クエリデータ２１３ｎから検索式３０２を得る。同装置は、得られた検索式３０２を使用して時系列ログデータ２０４または付帯情報表２０５を検索して検索結果を得る。
【００２１】
その後、同装置は、主項目指定５１１ｎを使用して、抽象キーワード表２０１を検索して項目クエリデータ２１３ｎから検索式３０２を得る。同装置は、この検索式３０２を前述の検索結果で変更（パラメータの置換）する。同装置は、変更後の検索式３０２を実行して時系列ログデータ２０４を検索して検索結果を得る。同装置は、この新たな検索結果が主項目指定５１１ｎにより規定される監査条件に適合するか否かを判断し、その結果を監査結果として出力する。
【００２２】
図６と図７はＸＭＬ形式を用いて記述された条件情報５０１の具体例である。これらは、監査証跡情報データベース２０３を検索して、許可されたユーザ以外の人間によるアクセス（不正アクセス）がないかを監査する場合の例である。
【００２３】
図６の条件情報５０１は、監査条件の依頼識別子の番号（RequestID_number）、依頼したサーバのホスト名（hostname）、対象とするアプリケーションの名前（ABC Manager）、条件の記述規則の版数（policyVersion）、基本項目部分（BasicItemsと/BasicItemsで囲まれた部分）から構成される。
基本項目部分は、監査に必要な条件を記述している箇所で、許可されたユーザ（Permitted_user）、監査対象期間（Term）、監査対象ログ（Object）、監査項目（Policy）から構成される。ここで、監査項目を示す”No_suspicious_user_access”は主項目指定５１１ｎである。監査対象期間を表す”last_authorized”と”submitted”は副項目指定５１２ｎである。基本項目部分に指定されたキーワードが、主項目キーワード２１０ｎまたは副項目キーワード２１１ｎとして抽象キーワード表２０１を用いて解釈される。
【００２４】
図７の例は、許可されたユーザに代わり許可されたユーザグループ（Permitted_group）が指定されている。このユーザグループに属するユーザは、後述するように付帯情報表２０５から抽出される。ここで、”DEVELOPERS”は副項目指定５１２ｎである。他は、図６の例と同じである。
【００２５】
付帯情報表２０５は、時系列のデータではなく、ユーザグループに属するユーザの構成情報、ユーザに与えられた権利情報といったアプリケーションの仕様に由来する管理情報が蓄積されている。付帯情報表２０５は、後述するように時系列ログデータ２０４から抽出される。図８は付帯情報表２０５の例を示す。
【００２６】
本発明のデータ検索装置００１は、以下のように動作する。同装置による監査は、図１の監査条件解釈部１０１によって行われる。その処理フローは図９に示す通りである。例として、図６または図７の条件情報５０１が、図４の抽象キーワード表２０１を有するデータ検索装置００１に入力された場合を想定する。
【００２７】
監査条件解釈部１０１は、条件情報５０１を構文解析する（Ａ１０）。同装置は条件情報５０１を単語に分解するとともに、各々の単語が得られた構文上の位置づけを抽出する。例えば”last_authorized”という単語が抽出されて、この単語が”term_since＝”という文脈上に現れたことが抽出される。
【００２８】
同部は、得られた単語と抽象キーワード表２０１の対比を行ってキーワードを抽出する（Ａ２０）。例えば、同部は、”last_authorized”という単語を抽象キーワード表２０１から発見して、属性３０１を参照してこの単語を副項目キーワード２１１ｎとして抽出する。さらに同部は、”No_suspicious_user_access”という単語を抽象キーワード表２０１から発見して、属性３０１を参照してこの単語を主項目キーワード２１０ｎとして抽出する。
【００２９】
同部は、副項目キーワード２１１ｎを抽出できたかどうかを判断する（Ａ３０）。抽出できた場合（Ａ３０のＹ）、同部は、得られた副項目キーワード２１１ｎは時系列ログデータ２０４を検索対象とするキーワードかを判断する（Ａ４０）。この判断は抽象キーワード表２０１に登録されている属性３０１に基づいて行われる。
【００３０】
同部は、上記判断が肯定的（Ａ４０のＹ）なとき、副項目キーワード２１１ｎ対応の検索式３０２を抽象キーワード表２０１から得てパラメータ置換を行う（Ａ５０）。パラメータ置換については後述する。
【００３１】
同部は、パラメータ置換後の検索式３０２に基づいて時系列ログデータ２０４を検索する（Ａ６０）。
【００３２】
付帯情報表２０５を検索対象とする副項目キーワード２１１ｎを抽出したとき（Ａ４０のＮ）、同部は、副項目キーワード２１１ｎ対応の検索式３０２を抽象キーワード表２０１から得て、パラメータ置換を行う（Ａ７０）。
【００３３】
同部は、パラメータ置換後の検索式３０２に基づいて付帯情報表２０５を検索する（Ａ８０）。
【００３４】
同部は、検索結果から当該キーワードに対応したデータを取り出し、当該データを、当該キーワードが抽出された構文上の位置づけに対応した所定の記憶域（システム変数）に格納する（Ａ９０）。例えば、キーワード”last_authorized”に対しては、時系列ログデータ２０４の検索結果から最新の承認時刻を抽出する。そして、同部は、term_sinceという文脈上に現れたことに対応して、term_sinceシステム変数に格納する。この処理は、キーワード”last_authorized”に対応する解釈処理部が行う。解釈処理部は解析処理部エントリ３０４を参照して起動される。
【００３５】
同部は、キーワード”DEVELOPERS”に関して、付帯情報表２０５の検索結果からDEVELOPERSグループに属するuserデータを抽出する。そして、同部は、permitted_groupという文脈上に現れたことに対応して、$permitted_userシステム変数に格納する。この処理は、キーワード”DEVELOPERS”に対応する解釈処理部が行う。
【００３６】
同部は、主項目キーワード２１０ｎ対応の検索式３０２を抽象キーワード表２０１から得て、パラメータ置換を行う（Ａ１００）。
【００３７】
同部は、パラメータ置換後の検索式３０２に基づいて時系列ログデータ２０４を検索する（Ａ１１０）。
【００３８】
同部は、検索結果から当該主項目キーワード２１０ｎに対応したデータを取り出し、監査基準に基づいて当該データの監査を行い、監査結果を出力する（Ａ１２０）。例えば、キーワード”No_suspicious_user_access”に対しては、時系列ログデータ２０４から許可されたユーザ以外のアクセス記録検索結果の有無を判定する。これが存在しなければ監査基準に適合するが存在する場合は適合しないとする判断結果を出力する。この処理は、キーワード”No_suspicious_user_access”に対応する解釈処理部が行う。
【００３９】
図１０は、パラメータ置換処理のフローを示す。
【００４０】
まず、監査条件解釈部１０１は、検索式３０２のパラメータに外部引数があればこれを条件情報５０１で与えられた値またはシステム変数の値で置換する（Ｂ１０）。すなわち、同部は検索式３０２の中に”＄”で始まるパラメータがあるとこれを外部引数と認識して、対応する入力条件情報５０１で与えられた値またはシステム変数の値で置換する。例えば、＄term_sinceという外部引数は、term_sinceシステム変数域の値で置換する。＄permitted_userという外部引数は、条件情報５０１でpermitted_userとして入力された値があればその値で置換され、なければpermitted_userシステム変数値で置換される。
【００４１】
同部は、図６の条件情報５０１であれば入力情報である”Ann,Bob,Connie”で置換し、図７の場合であれば、permitted_userシステム変数に格納されているDEVELOPERSグループに属するuserデータで置換する。
【００４２】
同部は、検索式３０２のパラメータにクエリ内キーワード２１２ｎがあれば抽象キーワード表２０１の置換規則３０３に基づいて置換を行う（Ｂ２０）。同部は、検索式３０２に”％”で始まるパラメータがあるとこれをクエリ内キーワード２１２ｎとして認識し、抽象キーワード表２０１を検索して当該パラメータに対応する置換規則３０３を得る。同部は、当該置換規則３０３に基づいて、例えば、%ProductLogTableというパラメータを”ABCLogTable”に置換する。
【００４３】
図６の条件情報５０１を入力した場合を想定した上述の処理を説明する。図１６は、その概略の流れを示す。監査条件解釈部１０１は抽象キーワード表２０１から副項目指定５１２ｎ”last_authorized”に対応する検索式３０２を取り出して（Ｅ１）、パラメータ置換を行って図１１のａの検索式３０２を生成して実行する。この検索式３０２は、時系列ログデータ２０４内のABC Managerアプリケーションのログを検索する（Ｅ２）。そして、検索式３０２は、ABCLogTable内のExe_Config分類に属するDaily_Aデータから承認された承認依頼のログ（auth_req_authorized）を見つけ出して日付順に出力する。”last_authorized”に対応した解釈処理部は、当該出力結果から最近の日付を抽出して図１１の１行目のログの時刻情報を得て、term_sinceシステム変数に格納する（Ｅ３）。
【００４４】
同様に、監査条件解釈部１０１は、副項目指定５１２ｎ”submitted”に対応して、図１１のｂの検索式３０２を生成して実行する。この検索式３０２は、時系列ログデータ２０４内のABC Managerアプリケーションのログを検索する。同検索式３０２は、ABCLogTable内のExe_Config分類に属するDaily_Aデータから承認依頼識別子が１２３４５である承認依頼発行時刻ログ（auth_req_submitted:id 12345）を見つけ出して日付順に出力する。
”submitted”に対応した解釈処理部は、当該出力結果から最近の日付を抽出して図１１の２行目のログの時刻情報を得て、term_untilシステム変数に格納する。
【００４５】
さらに、監査条件解釈部１０１は抽象キーワード表２０１から主項目指定５１１ｎ”No_suspicious_user_access”に対応する検索式３０２を取り出して（Ｅ４）、図１１のcの検索式３０２を生成して実行する。この過程で、監査条件解釈部１０１は、この検索式３０２のパラメータを置換する。例えば、$term_sinceというパラメータをterm_sinceシステム変数の値で置換する（Ｅ５）。この検索式３０２は、term_sinceおよびterm_untilの両システム変数で規定された期間を範囲として、許可ユーザとして図６の条件情報５０１で指定されたAnn,Bob,Connie以外のユーザのログ情報を検索する（Ｅ６）。この検索結果に基づき、”No_suspicious_user_access”に対応した解釈処理部が監査を行う（Ｅ７）。
【００４６】
図７の条件情報５０１を入力した監査条件解釈部１０１は、副項目指定５１２ｎ”DEVELOPERS”に対応して、図１５のｂの検索式３０２を生成して実行する。この検索式３０２は付帯情報表２０５を検索する。そして、同検索式３０２は、”DEVELOPERS”groupに属するuser名を出力する。”DEVELOPERS”に対応した解釈処理部は、当該出力結果をpermitted_userシステム変数に出力する。
【００４７】
この結果、監査条件解釈部１０１は主項目指定５１１ｎ”No_suspicious_user_access”に対応して、図６の条件情報５０１を入力したときと同様に図１５のcの検索式３０２を生成して実行する。この検索結果に基づき、”No_suspicious_user_access”に対応した解釈処理部が監査を行う。
【００４８】
次に、アプリケーションログ２０２を入力して、時系列ログデータ２０４および付帯情報表２０５を作成する処理について、図１３を参照して説明する。
【００４９】
まず、監査証跡データ収集部１０２がアプリケーションログ２０２を入力する（Ｃ１０）。同部が入力したデータを図示しないメモリ上に展開する（Ｃ２０）。次に、同部は入力したデータを時系列ログデータ２０４に追加する（Ｃ３０）。
【００５０】
監査証跡データ監視部１０３は、メモリ上のデータに監視キーワード２６０ｎが含まれていないかを監視する（Ｃ４０）。同部は、監視キーワード２６０ｎがある（Ｃ５０のＹ）場合、監視キーワード２６０ｎの発見を付帯情報制御部１０４に通知する（Ｃ６０）。
【００５１】
通知を受けた付帯情報制御部１０４は、監視キーワード２６０ｎ対応の検索式３０２を監視キーワード表２０６から得る（Ｃ７０）。
【００５２】
同部は、検索式３０２のパラメータにクエリ内キーワード２１２ｎや外部変数があれば監視キーワード表２０６の置換規則３０３に基づいて置換を行う（Ｃ８０）。この過程で、付帯情報制御部１０４は、後述するように時系列ログデータ２０４を検索する場合がある。最後に、同部は、パラメータ置換後の検索式３０２に基づいて付帯情報表２０５にデータを追加する（Ｃ９０）。
【００５３】
例として、図３の監視キーワード表２０６を有するデータ検索装置００１が、図１４のようなアプリケーションログ２０２を入力したことを想定する。これらのログは、DEVELOPERSというグループにAnnなどのuserが登録されたときに生成されるものである。これらのログは通常、他のアプリケーション事象（開始、終了など）のログと混在して発生する。ここでは簡単のため、それらが集中して発生したものとしている。
【００５４】
これらのログは監視キーワード２６０ｎ”added”を含んでいる。従って付帯情報制御部１０４は、図３の監視キーワード表２０６からINSERT命令である検索式３０２を取り出し、検索式３０２内のパラメータ置換を行う。すなわち、同部は、検索式３０２の”％”で始まるパラメータをクエリ内キーワード２１２ｎとして認識し、抽象キーワード表２０１を検索して当該パラメータに対応する置換規則３０３を得る。同部は、当該置換規則３０３に基づいて、例えば、%ProductLogTableというパラメータを”ABCLogTable”に置換する。
【００５５】
置換規則３０３が時系列ログデータ２０４に対する検索式３０２を含む場合は、まず当該検索式３０２が実行される。付帯情報制御部１０４は、この検索結果によりクエリ内キーワード２１２ｎの置換を行う。例えば、”％Group_added”というパラメータについては、時系列ログデータ２０４からユーザ追加登録されたグループ名を検索する検索式３０２が実行される。そして、付帯情報制御部１０４は、その出力値で”％Group_added”パラメータを置換する。この過程で検索式３０２のパラメータに外部変数が検出されることがある。すなわち、付帯情報制御部１０４は、検索式３０２の中に”＄”で始まるパラメータを外部引数と認識して、システム変数の値で置換する。例えば、＄log_timestampという外部引数は、＄log_timestampシステム変数域の値で置換される。＄log_timestampシステム変数は、発見された監視キーワード２６０ｎを含むアプリケーションログ２０２のタイムスタンプを記憶している。
【００５６】
上記のパラメータ置換の結果、付帯情報制御部１０４は、図１４のログデータに対して図１５のａに示すINSERT命令である検索式３０２を生成する。同部は、これらを実行して図８に示すuserの一覧表を付帯情報表２０５として作成する。
【００５７】
なお、本実施例に於いては、監査証跡データ収集部１０２および監査証跡データ監視部１０３と付帯情報制御部１０４は別プロセスとして平行動作可能なように実装することが望ましい。付帯情報表２０５の更新処理が、時系列ログデータ２０４の収集処理を遅延させる等の悪影響を生じることを防止するためである。
【００５８】
また、本実施例において、付帯情報表２０５に登録するデータを、監査証跡データ収集部１０２のメモリ上のデータではなく、時系列ログデータ２０４を用いている。これは、処理を並列化することで、監視対象データの増加があっても時系列データの追加処理能力を確保するためである。
【００５９】
上述した実施例の効果は以下の通りである。第１の効果は、データ検索装置００１の運用者が、条件情報５０１の作成時間を削減できることにある。その理由は、条件情報５０１の記述に抽象的な主項目キーワード２１０ｎや副項目キーワード２１１ｎが使えることで、複数のステップの作業の記述が簡単になるからである。
【００６０】
第２の効果は、上記運用者が、アプリケーション側の内部情報を取得するためのインタフェースを作成する必要がないことにある。その理由は、データ検索装置００１が、ログの情報を利用してアプリケーションと同じ管理情報を付帯情報表２０５として保持するためである。また、アプリケーション側に問合せが発生しないため、アプリケーション側の負荷をあげることもない。
【００６１】
第３の効果は、上記運用者が、技術があまりなくても条件情報５０１を作成できることである。その理由は、上記運用者が、複雑な検索のステップを考えることなく、主項目キーワード２１０ｎや副項目キーワード２１１ｎを用いて「あるグループに属している」や「前回承認時」といった概念的な記述ができるためである。
【００６２】
第４の効果は、付帯情報表２０５の更新を行っても、その負荷が、時系列ログデータ２０４の追加処理にあまり影響を与えないことにある。その理由は、時系列データの収集と付帯情報の抽出は、別のプロセスにて処理できるためである。
【００６３】
なお、監査条件解釈部１０１、監査証跡データ収集部１０２、監査証跡データ監視部１０３、付帯情報制御部１０４は、ハードウェアで実装してもよいし、コンピュータに各部の処理を実行させるデータ検索プログラム２０７として実装してもよい。
［実施例２］
本発明のデータ検索装置００１は、付帯情報表２０５を設けないことも可能である。この場合は、簡易に本発明のデータ検索装置００１の実装が可能となる。その理由は、付帯情報表２０５、監査証跡データ監視部１０３および付帯情報制御部１０４が不要になるからである。一方、データ検索装置００１の運用者は、図７の条件情報５０１における”DIVELOPERS”のような付帯情報表２０５を検索対象とする副項目指定５１２ｎは使用できない。
［実施例３］
本実施例は、実施例１または２のデータ検索装置００１を承認用のシステムに適用したものである。図１７によると、本発明の承認システム６００は、共用バスやネットワークに接続された監査管理装置６０３、アプリケーションサーバ６０４および、すでに説明済みのデータ検索装置００１とから構成される。
【００６４】
アプリケーションサーバ６０４内部ではアプリケーションプログラム６０６が実行され、その実行に伴ってアプリケーションログ２０２が時系列に生成され、データ検索装置００１に出力されている。
【００６５】
監査管理装置６０３は監査管理部６０１と監査条件データベース６０２とから構成される。監査条件データベース６０２はアプリケーションプログラム６０６の識別子と対応する条件情報５０１の対を包含する。この対はひとつまたは複数存在する。また、監査管理装置６０３には承認用端末６０５が接続されている。
【００６６】
データ検索装置００１は、アプリケーションサーバ６０４から入力したアプリケーションログ２０２に基づいて、実施例１ですでに説明した方法によって、監査証跡情報データベース２０３を作成している。
【００６７】
承認システム６００は、あるユーザなどがアプリケーションプログラム６０６の設定ファイルや定義ファイルの変更作業を行ったさいに、アプリケーションプログラム６０６がその変更の承認を、承認用端末６０５を操作する承認者から得る為のシステムである。この承認はアプリケーションログ２０２の内容の監査結果に基づいて行われる。
【００６８】
承認システム６００の動作について、図１７を参照して説明する。まず、アプリケーションプログラム６０６が監査管理装置６０３に承認依頼を送信する（Ｄ１）。それを受信した監査管理装置６０３の監査管理部６０１は、承認依頼を受け付けた旨をアプリケーションプログラム６０６に返信する（Ｄ２）。また、監査管理部６０１は承認依頼を送信したアプリケーションプログラム６０６に対応する条件情報５０１を監査条件データベース６０２から取得し（Ｄ３）、データ検索装置００１に送信する（Ｄ４）。データ検索装置００１は実施例１または実施例２で述べたごとく、入力された条件情報５０１にもとづいて監査証跡情報データベース２０３を監査して、その監査結果を監査管理部６０１に返信する（Ｄ５）。監査管理部６０１は、受信した監査結果を承認用端末６０５に出力する（Ｄ６）。承認者は、承認用端末６０５に出力された監査結果に基づいて承認の可否を入力する（Ｄ７）。監査管理部６０１は、当該承認の可否をアプリケーションプログラム６０６に転送する（Ｄ６）。
【００６９】
なお、アプリケーションプログラム６０６に対応する条件情報５０１が複数存在するような実装も可能である。その場合、監査管理部６０１は、各々の条件情報５０１を順次にデータ検索装置００１に送信して各々の監査結果を順次に受信し、それらの監査結果のすべてをまとめて総合監査結果として承認用端末６０５に出力する（Ｄ６）。
【００７０】
本発明の承認システム６００によれば、承認者が承認を行う際、ログに基づく客観的な事実を参照して承認の判断ができる。また、承認者が、ログを直接調べる必要はない。データ検索装置００１が自動的に調べてくれるため作業量が削減され、人間が行うよりも正確な確認作業が実施できる。そして、事前に設定された条件情報５０１に基づいて監査するため、承認者によって承認基準が異なることはなく、一貫性のある承認が可能となる。その理由は、アプリケーションサーバ６０４から依頼を受けた監査管理装置６０３が、適切な条件情報５０１をデータ検索装置００１に入力して、自動的に監査証跡情報データベース２０３のログ情報を監査するからである。
【００７１】
なお、監査管理部６０１は、ハードウェアで実装してもよいし、コンピュータに同部の処理を実行させる監査管理プログラム６０７として実装してもよい。
【図面の簡単な説明】
【００７２】
【図１】データ検索装置の全体構成を示す図である。
【図２】クエリデータの構成を示す図である。
【図３】監視キーワード表の例を示す図である。
【図４】抽象キーワード表の例を示す図である。
【図５】条件情報の構成を示す図である。
【図６】条件情報の例を示す図である。
【図７】条件情報の例を示す図である。
【図８】付帯情報表の例を示す図である。
【図９】監査処理解釈部の処理フローチャートである。
【図１０】監査処理解釈部のパラメータ置換処理のフローチャートである。
【図１１】動的に生成された検索式の例を示す図である。
【図１２】関連する時系列ログデータの例を示す図である。
【図１３】付帯情報表作成処理のフローチャートである。
【図１４】関連する時系列ログデータの例を示す図である。
【図１５】動的に生成された検索式の例を示す図である。
【図１６】監査情報処理部の概略の処理を示す図である。
【図１７】承認システムの全体構成を示す図である。
【符号の説明】
【００７３】
００１    データ検索装置
１０１    監査条件解釈部
１０２    監査証跡データ収集部
１０３    監査証跡データ監視部
１０４    付帯情報制御部
２０１    抽象キーワード表
２０２    アプリケーションログ
２０３    監査証跡情報データベース
２０４    時系列ログデータ
２０５    付帯情報表
２０６    監視キーワード表
２０７    データ検索プログラム
２１０ｎ    主項目キーワード
２１１ｎ    副項目キーワード
２１２ｎ    クエリ内キーワード
２１３ｎ    項目クエリデータ
２１４ｎ    パラメータクエリデータ
２６０ｎ    監視キーワード
２６２ｎ    監視クエリデータ
３０１    属性
３０２    検索式
３０３    置換規則
３０４    解析処理部エントリ
５０１    条件情報
５１１ｎ    主項目指定
５１２ｎ    副項目指定
６００    承認システム
６０１    監査管理部
６０２    監査条件データベース
６０３    監査管理装置
６０４    アプリケーションサーバ
６０５    承認用端末
６０６    アプリケーションプログラム
６０７    監査管理プログラム
【図１】
2008299705.tif 000003
【図２】
2008299705.tif 000004
【図３】
2008299705.tif 000005
【図４】
2008299705.tif 000006
【図５】
2008299705.tif 000007
【図６】
2008299705.tif 000008
【図７】
2008299705.tif 000009
【図８】
2008299705.tif 000010
【図９】
2008299705.tif 000011
【図１０】
2008299705.tif 000012
【図１１】
2008299705.tif 000013
【図１２】
2008299705.tif 000014
【図１３】
2008299705.tif 000015
【図１４】
2008299705.tif 000016
【図１５】
2008299705.tif 000017
【図１６】
2008299705.tif 000018
【図１７】
2008299705.tif 000019