(57)【要約】【課題】業務に対する適否の観点からアクセスログを管理する。【解決手段】フロー管理部２０２がワークフローに登録される業務の種類および作業時刻を含む業務情報を取得し、ログ取得部２０１が業務サーバのアクセスログを取得する。業務の種類ごとに業務サーバへのアクセスで使用されるアクセスコマンドを定義した定義情報をデータ保持部２０６に保持しておき、ログ分析部２０３が、業務情報により特定される作業の定義情報をデータ保持部２０６から取得し、業務情報により特定される作業時刻におけるアクセスログに記録されたアクセスコマンドが定義情報に対応するアクセスコマンドか否かを分析する。【選択図】図３
2009075940.tif 000002
【特許請求の範囲】
【請求項１】
業務の種類および作業時刻を含む業務情報を取得する業務情報取得手段と、
業務サーバのアクセスログを取得するログ取得手段と、
前記業務情報により特定される前記作業時刻における当該業務情報により特定される作業のためのアクセスコマンド以外のアクセスコマンドを前記アクセスログから検出する検出手段と
を備えることを特徴とするログ分析装置。
【請求項２】
前記検出手段は、前記アクセスログにおいて、前記業務情報により特定される前記作業時刻に記載され、当該業務情報により特定される作業には不要なアクセスコマンドを検出することを特徴とする請求項１に記載のログ分析装置。
【請求項３】
前記検出手段は、前記アクセスログにおいて、前記業務情報により特定される前記作業時刻には該当しない時間帯に記載されているアクセスコマンドを検出することを特徴とする請求項１に記載のログ分析装置。
【請求項４】
業務の種類および作業時刻を含む業務情報を取得する業務情報取得手段と、
業務サーバのアクセスログを取得するログ取得手段と、
業務の種類ごとに前記業務サーバへのアクセスで使用されるアクセスコマンドを定義した定義情報を保持する定義情報保持手段と、
前記業務情報により特定される作業の前記定義情報を前記定義情報保持手段から取得し、当該業務情報により特定される前記作業時刻における前記アクセスログに記録されたアクセスコマンドが当該定義情報に対応するアクセスコマンドか否かを分析する分析手段と
を備えることを特徴とするログ分析装置。
【請求項５】
前記分析手段が、前記業務情報により特定される前記作業時刻に、当該業務情報により特定される作業に対応しないアクセスコマンドを検出した場合に、通知を行う通知手段をさらに備えることを特徴とする請求項４に記載のログ分析装置。
【請求項６】
前記通知手段は、予め設定された特定のアクセスコマンドに関しては、前記業務情報により特定される作業に対応しないアクセスコマンドとして検出された場合でも通知を行わないことを特徴とする請求項５に記載のログ分析装置。
【請求項７】
前記通知手段は、予め設定された特定のアクセスコマンドに関しては、前記業務情報により特定される作業に対応するアクセスコマンドとして検出された場合でも通知を行うことを特徴とする請求項５に記載のログ分析装置。
【請求項８】
コンピュータを
業務の種類および作業時刻を含む業務情報を取得する業務情報取得手段と、
業務サーバのアクセスログを取得するログ取得手段と、
業務の種類ごとに前記業務サーバへのアクセスで使用されるアクセスコマンドを定義した定義情報を保持する定義情報保持手段から前記業務情報により特定される作業の定義情報を取得し、当該業務情報により特定される前記作業時刻における前記アクセスログに記録されたアクセスコマンドが当該定義情報に対応するアクセスコマンドか否かを分析する分析手段として
機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバへのアクセスログを管理し分析する技術に関する。
【背景技術】
【０００２】
コンピュータを用いた情報処理システムにおいて、システムの運用管理やセキュリティ上の必要から、アクセスログを保存することが一般的に行われる。企業等では、内部統制の観点からも、業務用サーバのアクセスログを管理することが重要である。
【０００３】
この種の従来技術として、特許文献１には、汎用性を維持しつつ、システム運用に際し、不正なアクセス者を特定し、情報の漏洩の原因を的確に追求可能とし、ひいては、情報の漏洩を未然に防止するアクセスログ管理システムが開示されている。同文献に記載されたシステムは、監視プログラムにより、Ｗｅｂサーバを介して送受される要求データ及び応答データを取得し、要求データ及び応答データから所定の情報を抽出し、抽出された情報をアクセスログとしてアクセスログデータベースに蓄積する。そして、ログ分析部によってアクセスログの分析を行う。
【０００４】
一方、業務を効率良く行うために、コンピュータでワークフロー（業務フロー）を管理するシステムが存在する。
この種の他の従来技術として、特許文献２には、操作を行う際に承認手続きを必要とする操作対象装置に対する操作依頼、承認申請、操作実行、操作結果報告、ログ保持管理までのワークフローを自動化するシステムが開示されている。同文献に記載されたシステムは、操作情報管理ＰＣが、個人端末から申請された操作対象ＰＣの操作依頼情報に対する承認の可否を承認ＰＣに要求して確認し、承認可とされた個人端末に対応する操作の実行を操作対象ＰＣに指示して操作依頼情報を反映させるとともに、個人端末から送信された操作依頼情報、該操作依頼情報の承認結果、該操作依頼情報の反映結果を操作申請書ＤＢで記憶管理する構成を備える。
【０００５】
【特許文献１】特開２００６−１２０１３０号公報
【特許文献２】特開２００５−２０２９３１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
業務サーバに対するアクセスログの管理では、保存したアクセスログを解析し、不適当なアクセスを検出することが重要である。ここで、不適当なアクセスとは、正当なアクセス権限に基づかない（不正な）アクセスのみならず、アクセス権限はあっても業務上想定されていないアクセス等を含むものとする。しかし、ログ管理システムでは、サーバに対して行われたアクセスの履歴は保存されるものの、行われたアクセスと業務との関係が不明であった。
【０００７】
今日、業務を効率的に行う目的等から、コンピュータでワークフローを管理することが行われている。この種のワークフロー管理システムでは、業務に関して、進行状況や状態、実行時期や実行主体（いつ誰が行ったか）等の情報が管理される。しかし、この種のシステムでも、所定の作業を実行するためにサーバに対して行われるアクセスについては管理されていない。
【０００８】
本発明は、上記の課題に鑑みてなされたものであり、ログ管理システムに保存されたアクセスログをワークフローにより管理される作業に関する情報に対応づけ、業務に対する適否の観点からアクセスログを管理できるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
かかる目的を達成するために、本発明は、次のようなログ分析装置として実現される。この装置は、業務の種類および作業時刻を含む業務情報を取得する業務情報取得手段と、業務サーバのアクセスログを取得するログ取得手段と、業務情報により特定される作業時刻における業務情報により特定される作業のためのアクセスコマンド以外のアクセスコマンドをアクセスログから検出する検出手段とを備えることを特徴とする。
【００１０】
より詳しくは、検出手段は、アクセスログにおいて、業務情報により特定される作業時刻に記載され、業務情報により特定される作業には不要なアクセスコマンドを検出する。
または、検出手段は、アクセスログにおいて、業務情報により特定される作業時刻には該当しない時間帯に記載されているアクセスコマンドを検出する。
【００１１】
また、本発明による他のログ分析装置は、業務の種類および作業時刻を含む業務情報を取得する業務情報取得手段と、業務サーバのアクセスログを取得するログ取得手段と、業務の種類ごとに業務サーバへのアクセスで使用されるアクセスコマンドを定義した定義情報を保持する定義情報保持手段と、業務情報により特定される作業の定義情報を定義情報保持手段から取得し、業務情報により特定される作業時刻におけるアクセスログに記録されたアクセスコマンドが定義情報に対応するアクセスコマンドか否かを分析する分析手段とを備えることを特徴とする。
【００１２】
より好ましくは、このログ分析装置は、分析手段が、業務情報により特定される作業時刻に、業務情報により特定される作業に対応しないアクセスコマンドを検出した場合に、通知を行う通知手段をさらに備える。
【００１３】
より詳細には、この通知手段は、予め設定された特定のアクセスコマンドに関しては、業務情報により特定される作業に対応しないアクセスコマンドとして検出された場合でも通知を行わない。
さらに、この通知手段は、予め設定された特定のアクセスコマンドに関しては、業務情報により特定される作業に対応するアクセスコマンドとして検出された場合でも通知を行う。
【００１４】
また、本願発明は、上記のように構成されたログ分析装置をコンピュータで実現するためのプログラムとしても実現される。このプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供することができる。
【発明の効果】
【００１５】
以上のように構成された本発明によれば、ワークフローにより管理される業務情報に基づいてアクセスログを検査し、業務に対する適否の観点からアクセスログを管理することが可能となる。
【発明を実施するための最良の形態】
【００１６】
以下、添付図面を参照して、本発明を実施するための最良の形態（以下、実施形態）について詳細に説明する。
＜システム構成＞
図１は、本実施形態によるログ管理システムの全体構成を示す図である。
図１に示すように、本実施形態のログ管理システムは、各種の業務を行うための業務サーバ１００と、業務サーバ１００からアクセスログを取得して分析するログ分析サーバ２００とを備える。ログ分析サーバ２００は、アクセスログを管理するログ管理サーバとしての機能と、業務担当者によって行われる業務のワークフローを管理するワークフロー管理サーバとしての機能とを合わせ持つ。したがって、業務サーバ１００により作業を行う場合、まず、業務担当者がログ分析サーバ２００に作業申請の登録を行い、業務責任者がこの作業申請に対する承認（作業承認）を行った後、業務担当者が業務サーバ１００を使用して作業を行うこととなる。
【００１７】
図２は、本実施形態のログ分析サーバ２００を実現するコンピュータのハードウェア構成例を示す図である。
図２に示すコンピュータ１０は、演算手段であるＣＰＵ（Central Processing Unit）１０ａと、記憶手段であるメインメモリ１０ｃおよび磁気ディスク装置（ＨＤＤ：Hard Disk Drive）１０ｇを備える。また、ネットワークを介して外部装置に接続するためのネットワークインターフェイス１０ｆと、ディスプレイ装置へ表示出力を行うための表示機構１０ｄと、音声出力を行うための音声機構１０ｈとを備える。さらに、キーボードやマウス等の入力デバイス１０ｉを備える。
【００１８】
図２に示すように、メインメモリ１０ｃおよび表示機構１０ｄは、Ｍ／Ｂ（マザーボード）チップセット１０ｂを介してＣＰＵ１０ａに接続されている。また、ネットワークインターフェイス１０ｆ、磁気ディスク装置１０ｇ、音声機構１０ｈおよび入力デバイス１０ｉは、ブリッジ回路１０ｅを介してＭ／Ｂチップセット１０ｂと接続されている。各構成要素は、システムバスや入出力バス等の各種のバスによって接続される。例えば、ＣＰＵ１０ａとメインメモリ１０ｃの間は、システムバスやメモリバスにより接続される。また、ＣＰＵ１０ａと磁気ディスク装置１０ｇ、ネットワークインターフェイス１０ｆ、表示機構１０ｄ、音声機構１０ｈ、入力デバイス１０ｉ等との間は、ＰＣＩ（Peripheral Components Interconnect）、ＰＣＩ  Ｅｘｐｒｅｓｓ、シリアルＡＴＡ（AT Attachment）、ＵＳＢ（Universal Serial Bus）、ＡＧＰ（Accelerated Graphics Port）等の入出力バスにより接続される。
【００１９】
なお、図２は、ログ分析サーバ２００を実現するのに好適なコンピュータのハードウェア構成を例示するに過ぎず、図示の構成に限定されないことは言うまでもない。例えば、補助記憶装置として磁気ディスク装置１０ｇの他に、各種の光学ディスクやフレキシブルディスクをメディアとするドライブを設けても良い。また、音声機構１０ｈを独立した構成とせず、Ｍ／Ｂチップセット１０ｂの機能として備えるようにしても良い。
【００２０】
図３は、ログ分析サーバ２００の機能構成を示す図である。
図３に示すように、ログ分析サーバ２００は、ログ取得部２０１と、フロー管理部２０２と、ログ分析部２０３と、アラート管理部２０４と、マスタ管理部２０５と、データ保持部２０６とを備える。ここで、ログ取得部２０１は、例えば図２に示したコンピュータ１０において、メインメモリ１０ｃに読み込まれたプログラムをＣＰＵ１０ａが実行しネットワークインターフェイス１０ｆを制御することで実現される。フロー管理部２０２、ログ分析部２０３、アラート管理部２０４、マスタ管理部２０５は、メインメモリ１０ｃに読み込まれたプログラムをＣＰＵ１０ａが実行することにより実現される機能である。データ保持部２０６は、メインメモリ１０ｃや磁気ディスク装置１０ｇ等の記憶手段で実現される。このように、図３に示すログ分析サーバ２００の各機能ブロックは、ソフトウェアとハードウェア資源とが協働して実現される手段である。
【００２１】
ログ取得部２０１は、各々の業務サーバ１００において記録されたアクセスログを取得するログ取得手段である。業務サーバ１００は、例えば図２に示すようなコンピュータ１０により実現され、動作に応じてアクセスログを取り、磁気ディスク装置１０ｇ等の記憶手段に保持している。ログ取得部２０１によるアクセスログの取得は、ログ取得部２０１から各業務サーバ１００にアクセスしてアクセスログの送信を指示しても良いし、定期的にあるいは所定のタイミングで業務サーバ１００からログ分析サーバ２００へ送信しログ取得部２０１が受け付けるようにしても良い。取得された各業務サーバ１００のアクセスログは、データ保持部２０６に格納される。
【００２２】
フロー管理部２０２は、業務に関する情報（以下、業務情報）として作業申請およびその承認を受け付け、ワークフローに登録して管理する。すなわち、フロー管理部２０２は、業務情報取得手段として機能する。作業申請では、作業を行う予定時刻、業務担当者、作業に使用する業務サーバ１００、作業の内容（種類）などの業務情報が登録される。業務情報が登録されたワークフローのデータは、データ保持部２０６に格納される。
【００２３】
ログ分析部２０３は、ログ取得部２０１により取得された業務サーバ１００のアクセスログとフロー管理部２０２により管理されるワークフローとを照合して、アクセスログに記録されたアクセスが正当な業務に基づくものか否かを分析するログ分析手段である。具体的には、まず業務ごとに、業務サーバ１００へのアクセスで使用されるアクセスコマンド（以下、単にコマンドと記す）のパターン（組み合わせおよび順番）を定義情報としてマスタ化しておく。そして、この定義情報に基づき、ワークフローで特定される業務とアクセスログに記録されたアクセスコマンド群とを比較して、対応しているか否かを判断する。例えば、アクセスログ中に特定の業務に対応するパターンのコマンド群が存在するが、ワークフローにはその業務の作業申請および承認が存在しない場合、そのアクセスは不適当なアクセスと判断できる。また、ワークフローにより特定される業務に対応するアクセスログ中に、その業務では使用されないコマンドが存在する場合、そのアクセスは不適当なアクセスと判断できる。ログ分析部２０３の処理については、後で具体的な例を挙げてさらに詳細に説明する。
【００２４】
アラート管理部２０４は、ログ分析部２０３による分析結果に基づいて、不適当と判断された作業を管理者に通知する。通知方法としては、例えば図２に示した表示機構１０ｄや音声機構１０ｈによりメッセージや警告音を出力することができる。また、アラート管理部２０４は、通知の履歴をデータ保持部２０６に格納し、この通知に対する調査や対応措置が行われたか否か等の情報をステータスとして管理する。さらに、アラート管理部２０４は、通知後の経過時間とステータスに応じて、管理者に調査や対応を催促するメッセージやレポートの出力を行う。
【００２５】
マスタ管理部２０５は、ログ分析サーバ２００により管理されるノード（業務サーバ１００）、業務の種類、業務サーバ１００にログインするためのアカウント等、フロー管理部２０２やログ分析部２０３の処理に用いられる情報を管理する。上述した業務ごとの使用コマンドの定義情報もこのマスタ管理部２０５により管理される。
【００２６】
データ保持部２０６は、ログ取得部２０１により取得されたアクセスログ、フロー管理部２０２により受け付けられた業務情報を登録したワークフロー、マスタ管理部２０５により管理される上記の各種情報を保持する。
【００２７】
＜データ構造＞
図４（ａ）〜（ｃ）は、作業申請および作業承認の画面イメージとワークフローのデータ構造を示す図である。
図４（ａ）は、業務担当者が作業申請を行う際に用いられる申請用の画面イメージを示す。業務担当者は、自身の端末装置からログ分析サーバ２００にアクセスし、図４（ａ）に示すような申請用画面を表示させて必要な情報を入力する。図４（ａ）に示す例では、作業予定時刻（開始予定時刻および終了予定時刻）、担当者（コード）、作業を行うノード（業務サーバ１００のコード）、作業内容、備考等の情報を入力するように申請用画面が構成されている。また、図示されていないが、申請用画面には申請の登録を実行するためのサブミットボタン等が存在し、このサブミットボタンのクリック等の操作により、申請用画面で入力された情報がワークフローのデータとして登録される。
【００２８】
図４（ｂ）は、業務責任者が作業承認を行う際に用いられる承認用の画面イメージを示す。業務責任者は、自身の端末装置からログ分析サーバ２００にアクセスし、図４（ｂ）に示すような承認用画面を表示させて作業の承認を行う。図４（ｂ）に示す例では、図４（ａ）の申請用画面で入力された情報が表示され、承認時コメントを入力できるように承認用画面が構成されている。また、図示されていないが、承認用画面には承認の登録を実行するためのサブミットボタン等が存在し、このサブミットボタンのクリック等の操作により、作業が承認されたことを示す情報がワークフローのデータとして登録される。なお、業務責任者が承認用画面を使用する際には、ログイン操作によって業務責任者の認証が行われており、承認を行った業務責任者のコードも登録されるものとする。
【００２９】
図４（ｃ）は、登録されたワークフローのデータのデータ構造の例を示す。図４（ｃ）の１行目のデータを参照すると、左から順に、作業ＩＤ（J070508-012）、データの種類（申請）、作業担当者（USR001）、作業予定時刻（070508 1400, 070508 1800）、ノード（SVR025）、作業内容（バックアップ）、申請時刻（070506 100239）、備考（Yyyyyy）といった情報が記録されている。申請時刻とは、申請用画面においてサブミットボタンのクリック等の操作が行われた時刻である。また、図４（ｃ）の２行目のデータを参照すると、作業ＩＤ（J070508-012）、データの種類（承認）、承認者（USRA09）、承認時刻（070506 130225）、備考（Hoge）といった情報が記録されている。承認時刻とは、承認用画面においてサブミットボタンのクリック等の操作が行われた時刻である。
【００３０】
図５は、業務ごとの使用コマンドの定義情報の構成例を示す図である。
定義情報には、業務ごとに使用されるコマンドの種類と順番が記録される。したがって、アクセスログ中に、特定の業務の定義情報に記されたコマンドが、当該定義情報に記された順番で記録されていれば、その業務が実行されたことがわかる。図５に示す定義情報には、業務の種類、コマンドの順番、プラットフォームの種類、コマンドの種類の各項目が記録される。オプションには、バックアップ先のディレクトリ等、コマンドの種類に応じて作業上の設定情報が記録される。
【００３１】
図５に示す例では、バックアップ業務における使用コマンドと死活監視業務における使用コマンドの例が記載されている。バックアップ業務に関しては、プラットフォームの種類に応じて異なる使用コマンドの定義情報が設定されている。同じ業務であっても、使用する業務サーバ１００によっては、ＯＳ（Operating System）やアプリケーション等のプラットフォームの違いによって使用コマンドの組み合わせが異なる場合があり、この場合は図示のように、個別に対応する定義情報を設定することが必要となる。
【００３２】
図５に示すコマンドにおいて、「ｌｏｇｉｎ」は、ＯＳへログインする際に使用するコマンドである。「ｓｑｌｐｌｕｓ」は、オラクル・データベース（Oracle Database）に対し、ＳＱＬ文を使って操作する際に使用するコマンドである。「ｃｏｎｎｅｃｔ」は、ＤＢＭＳ（Data Base Management System）にログインする際に使用するコマンドである。「ｂａｃｋｕｐ」は、ＤＢＭＳに格納されている情報をバックアップする際に使用するコマンドである。「ｅｘｉｔ」は、ＤＢＭＳまたはＯＳからログアウトする際に使用するコマンドである。「ｅｘｐｏｒｔ」は、ＤＢＭＳに格納されている情報をバックアップする際に使用するコマンドである。「ｃｏｐｙ」は、ファイルをコピーする際に使用するコマンドである。「ｐｓ」は、起動中のプロセス一覧を閲覧する際に使用するコマンドである。
【００３３】
図５を参照すると、例えば、「データベースサーバにおけるバックアップ業務２」という業務では、「ｌｏｇｉｎ」、「ｅｘｐｏｒｔ」、「ｃｏｐｙ」、「ｅｘｉｔ」という４つのコマンドが、この順番で実行されることがわかる。したがって、特定のノードにおいて「データベースサーバにおけるバックアップ業務２」が実行されたならば、当該ノードのアクセスログには、この４つのコマンドがこの順番で記録されることとなる。すなわち、ワークフローに登録された業務情報により業務の種類と作業時刻（図４（ａ）の作業予定時刻に対応）を特定し、この時刻におけるアクセスログに、当該業務の定義情報で定義されたコマンド群が定義された順番で記録されていれば、その業務が適正に実施されたことがわかる。
【００３４】
＜ログ分析の例＞
次に、ログ分析部２０３によるログ分析の処理について、具体例を挙げて詳細に説明する。
図６は、所定の業務サーバ１００から取得されたアクセスログの例を示す図である。
図６のアクセスログからは、３つの作業に対応するコマンド群が抽出される。時刻０２：２１：４３〜０２：２６：００に行われた作業（作業１）、時刻０５：４３：２２〜０５：４４：２１に行われた作業（作業２）、時刻０８：１２：４３〜０８：１５：２１に行われた作業（作業３）である。図６に記載されたコマンドにおいて、「ｃｄ」は、カレントディレクトリを変更する際に使用するコマンドである。「ｃｐ」は、「ｃｏｐｙ」と同一のコマンドである。「ｐａｓｓｗｄ」は、パスワードを変更する際に使用するコマンドである。
【００３５】
図６に示したコマンド群により構成される作業のうち、作業１および作業３は対応する業務がワークフローに登録されており、作業２は対応する業務がワークフローに登録されていないものとする。また、作業３のコマンド群には、登録された業務情報に基づいて特定される定義情報には含まれていない（すなわち、当該業務では使用されない）コマンド（「ｃｐ」および「ｐａｓｓｗｄ」）が含まれているものとする。
【００３６】
この場合、ログ分析部２０３は、作業１については、対応する業務がワークフローに登録されており、アクセスログのコマンド群が当該業務に基づいて特定される定義情報に一致するので、適正な作業と判断する。作業２については、対応する業務がワークフローに登録されていないので、適正な作業ではない（不適当）と判断する。作業３については、対応する業務がワークフローに登録されているものの、当該業務では使用されないコマンドを含むため、適正な作業ではない（不適当）と判断する。
【００３７】
ところで、ワークフローに登録されていない作業におけるアクセスや、業務自体はワークフローに登録されていてもその業務では使用されないコマンドによるアクセスは、原則としては上述のように不適当なアクセスである。しかし、実行される処理の内容によっては、セキュリティやシステムの運用上、特に問題のないアクセスがある。例えば、ディレクトリ情報を閲覧するようなアクセスは、システムに対して何ら影響を与えず、業務中にその業務とは関係なく実行されても問題は生じないと考えられる。そこで、そのようなコマンドについては、ホワイトリストコマンドとして管理しておき、ワークフローに登録されていない作業やワークフローに登録された業務では使用されないコマンドとして検出された場合でも、アラート管理部２０４による通知を行わないこととしても良い。
【００３８】
反対に、通常の業務では使用されることがなく、使用された場合にシステムに対する影響の大きいコマンドは、適正な業務で使用されているか否かに関わらず、管理者に通知することが好ましいと考えられる。そこで、そのようなコマンドについては、ブラックリストコマンドとして管理しておき、アクセスログ中に当該コマンドが存在するならば直ちにアラート管理部２０４による通知を行うこととしても良い。
【００３９】
図７は、ホワイトリストコマンドおよびブラックリストコマンドの例を示す図である。
図７では、コマンドをノーマルコマンド、ホワイトリストコマンド、ブラックリストコマンドの３種類に分類している。ノーマルコマンドは、ワークフローに登録された適正な業務で使用される場合にはアラート管理部２０４による通知が行われず、その他の場合にはアラート管理部２０４による通知が行われる。ホワイトリストコマンドは、上述したように、その使用態様に関わらずアラート管理部２０４による通知が行われない。また、ブラックリストコマンドは、上述したように、その使用態様に関わらず使用されていればアラート管理部２０４による通知が行われる。
【００４０】
図７に示したようなコマンドリスト（あるいはホワイトリストコマンドおよびブラックリストコマンドのみを列挙したコマンドリスト）は、データ保持部２０６に保存される。ログ分析部２０３は、アクセスログの分析の際に、このコマンドリストを参照し、アクセスログ中にホワイトリストコマンドやブラックリストコマンドが記録されていないかを調べる。
【００４１】
図７に記載されたコマンドにおいて、「ｐｗｄ」は、カレントディレクトリを閲覧する際に使用するコマンドである。「ｌｓ」は、ディレクトリ情報を閲覧する際に使用するコマンドである。「ｃｈｏｗｎ」は、ファイル、ディレクトリの所有者を変更する際に使用するコマンドである。また、「ｌｏｇｉｎ」は、通常、業務サーバ１００で実施される各種の作業の開始時に実行されるコマンドである。しかし、特定のアカウントによるログインまたは特定のアカウント以外のアカウントによるログインといった条件を付加してブラックリストコマンド化することで、正当な権限を持たない者によるログインを効果的に検出することができる。
【００４２】
図６に示したアクセスログにおいて、作業２は、上述したように、対応する業務がワークフローに登録されていないため、アラート管理部２０４による通知の対象（以下、アラート対象と呼ぶ）となっている。しかし、１行目の「ｌｏｇｉｎ」がブラックリストコマンドの条件に合致するならば、これによってもアラート対象となる。また、作業３は、上述したように、登録された業務では使用されないコマンドを含むため、アラート対象となっている。しかし、４行目の「ｐａｓｓｗｄ」がブラックリストコマンドなので、これによってもアラート対象となる。
【００４３】
上記のログ分析では、業務情報により特定される作業および作業時刻に対応するコマンドをアクセスログから抽出する手法を説明したが、ログ分析の手法はこれに限定されるものではない。例えば、所定の作業に関して、コマンドそのものは業務情報により特定される作業に対応するものであっても、業務情報に登録されている業務担当者と、アクセスログ中のアカウント認証に関するログにより特定されるアクセス主体とが異なっている場合に、適正な作業ではない（不適当）と判断することができる。また、業務情報には、作業が実施されるノード（業務サーバ）も登録されるが、図６を参照して説明した上記のログ分析に先立って、業務情報に登録された業務サーバのアクセスログが分析対象として選択されることは言うまでもない。
【００４４】
＜ログ分析の手順＞
次に、ログ分析部２０３によるログ分析の動作手順を説明する。
図８は、ログ分析部２０３の動作例を示すフローチャートである。
事前の動作として、ログ取得部２０１により業務サーバ１００のアクセスログが既に収集されているものとする。また、ワークフローへの業務情報の登録（作業申請および承認を含む）も完了している。
【００４５】
ログ分析部２０３は、まずワークフローに登録されている業務の１つを処理対象として選択し（ステップ８０１）、選択した業務情報に基づき、業務に対応する定義情報をデータ保持部２０６から読み込む（ステップ８０２）。次に、ログ分析部２０３は、ワークフローの業務情報に基づき、作業が行われた業務サーバ１００と作業時刻とを特定する。そして、当該業務サーバ１００のアクセスログにおける当該時刻に、ステップ８０２で読み込んだ定義情報に対応するコマンド群がアクセスログ中にあるか否かを検索する（ステップ８０３）。
【００４６】
ここで、実際の業務においては、作業を実行した時刻が、作業申請の際に申請した予定時刻に完全に一致するとは限らない。したがって、ある程度の時間的な幅を持たせて対応するコマンド群を検索する。どの程度の幅を持たせるかについては、業務の運用基準等に基づいて任意に定めれば良い。また、実際の業務においては、操作ミス等により同じコマンドを数回繰り返したり、手順を遡ってやり直したりする場合が起こり得る。さらに、特に業務に関係ないが、情報の確認等のために挿入される操作もある。そこで、アクセスログ中のコマンド群が定義情報に対応するか否かの判断においても、個々のコマンドやいくつかのコマンドの組み合わせの繰り返しを数回までは容認したり、ホワイトリストコマンドの存在を許容したりする等、判断にある程度の曖昧さを持たせても良い。
【００４７】
定義情報に対応するコマンド群がアクセスログ中に存在しない場合（ステップ８０４でＮｏ）、ログ分析部２０３は、この検索結果をアラート管理部２０４に知らせる。そして、アラート管理部２０４は、業務不履行の可能性がある旨を管理者に通知する（ステップ８０５）。一方、定義情報に対応するコマンド群がアクセスログ中に存在する場合（ステップ８０４でＹｅｓ）、ログ分析部２０３は、検索されたコマンド群にブラックリストコマンドが存在するか調べる。ブラックリストコマンドが含まれている場合（ステップ８０６でＹｅｓ）、ログ分析部２０３は、ブラックリストコマンドを検出したことをアラート管理部２０４に知らせる。そして、アラート管理部２０４は、不適当なアクセスが行われた可能性があることを管理者に通知する（ステップ８１１）。
【００４８】
検索されたコマンド群にブラックリストコマンドが含まれていない場合（ステップ８０６でＮｏ）、ログ分析部２０３は、定義情報に対応するコマンド群の中に定義情報にないコマンドが存在するか調べる。定義情報にないコマンドが存在する場合（ステップ８０７でＹｅｓ）、ログ分析部２０３は、そのコマンドがホワイトリストコマンドか否かを調べる。ホワイトリストコマンドでない場合（ステップ８０８でＮｏ）、ログ分析部２０３は、不審なコマンドを検出したことをアラート管理部２０４に知らせる。そして、アラート管理部２０４は、不適当なアクセスが行われた可能性があることを管理者に通知する（ステップ８１１）。一方、ステップ８０７で発見されたコマンドがホワイトリストコマンドであった場合は（ステップ８０８でＹｅｓ）、アラート管理部２０４による通知は行わない。
【００４９】
定義情報に対応するコマンド群の中に定義情報にないコマンドが存在しない場合、すなわち検出されたコマンド群が定義情報のコマンド群と一致している場合（ステップ８０７でＮｏ）および定義情報にないコマンドが存在するがホワイトリストコマンドであった場合（ステップ８０８でＮｏ）、ログ分析部２０３は、ワークフローに登録された業務のうちで未検索のものが残っているか調べる。未検索の業務があるならば（ステップ８０９でＹｅｓ）、ログ分析部２０３は、ステップ８０１に戻り、未検索の業務の１つを処理対象として選択し、これ以降の動作を繰り返す。
【００５０】
ワークフローに登録された全ての業務に対して処理が終わり、未検索の業務が残っていなければ（ステップ８０９でＮｏ）、次にログ分析部２０３は、ワークフローに登録されていないコマンドが存在するか調べる。ここで、ワークフローに登録されていないコマンドには、特定の作業を構成する一連のコマンド群、単独で存在するコマンド、いくつかのコマンドの組などが含まれる。ワークフローに登録されていないコマンドが存在するならば（ステップ８１０でＹｅｓ）、ログ分析部２０３は、未登録のコマンドを検出したことをアラート管理部２０４に知らせる。そして、アラート管理部２０４は、不適当なアクセスが行われた可能性があることを管理者に通知する（ステップ８１１）。一方、ワークフローに登録されていないコマンドが存在しない場合は、処理を終了する（ステップ８１０でＮｏ）。このとき、不適当なアクセスが行われた可能性がないことを管理者に通知するようにしても良い。
【００５１】
なお、以上のログ分析部２０３の動作手順は一例に過ぎず、ワークフローの業務情報とアクセスログとを比較して、ワークフローに登録された業務に対応しない不審なコマンドを検出する手法であれば、他の手順であっても良いことは言うまでもない。例えば、ブラックリストコマンドは、その使用態様に関わらずアラート管理部２０４による通知の対象となるので、アクセスログを取得した後、最初にブラックリストコマンドの有無を調べても良い。また、ステップ８０３で作業対象の業務サーバ１００のアクセスログからアクセスアカウントを抽出し、業務情報に登録されている業務担当者と比較して、異なっている場合には、アラート管理部２０４が不適当なアクセスが行われた可能性があることを管理者に通知するようにしても良い。
【００５２】
＜他のシステム構成＞
図１および図３に示した上記実施形態のシステム構成では、ログ分析サーバ２００がログ管理サーバおよびワークフロー管理サーバの機能を合わせ持つこととした。そのため、ログ分析サーバ２００が業務サーバ１００から直接アクセスログを取得し、またワークフローに登録する業務情報の入力を受け付けることとした。これに対し、ログ管理サーバおよびワークフロー管理サーバの一方または双方を独立のサーバとして備えるシステムとして構成しても良い。ログ管理サーバを独立に備える構成では、各業務サーバ１００のアクセスログはログ管理サーバに集められ、管理されることとなる。そして、ログ分析サーバ２００は、ログ管理サーバからアクセスログを取得して分析を行う。また、ワークフロー管理サーバを独立に備える構成では、このワークフロー管理サーバに対して作業申請や作業承認による業務情報の登録が行われることとなる。そして、ログ分析サーバ２００は、ワークフロー管理サーバから業務情報またはワークフローのデータ自体を取得して、業務情報に基づくアクセスログの分析を行う。このような構成は、既にログ管理サーバやワークフロー管理サーバが存在するシステムに本実施形態を導入する場合に有効である。
【図面の簡単な説明】
【００５３】
【図１】本実施形態によるログ管理システムの全体構成を示す図である。
【図２】本実施形態のログ分析サーバを実現するコンピュータのハードウェア構成例を示す図である。
【図３】本実施形態のログ分析サーバの機能構成を示す図である。
【図４（ａ）】本実施形態における作業申請の画面イメージを示す図である。
【図４（ｂ）】本実施形態における作業承認の画面イメージを示す図である。
【図４（ｃ）】本実施形態におけるワークフローのデータ構造を示す図である。
【図５】本実施形態における業務ごとの使用コマンドの定義情報の構成例を示す図である。
【図６】アクセスログの例を示す図である。
【図７】本実施形態のホワイトリストコマンドおよびブラックリストコマンドの例を示す図である。
【図８】本実施形態のログ分析部の動作例を示すフローチャートである。
【符号の説明】
【００５４】
１０ａ…ＣＰＵ、１０ｃ…メインメモリ、１０ｄ…表示機構、１０ｆ…ネットワークインターフェイス、１０ｇ…磁気ディスク装置、１０ｈ…音声機構、１０ｉ…入力デバイス、１００…業務サーバ、２００…ログ分析サーバ、２０１…ログ取得部、２０２…フロー管理部、２０３…ログ分析部、２０４…アラート管理部、２０５…マスタ管理部、２０６…データ保持部
【図１】
2009075940.tif 000003
【図２】
2009075940.tif 000004
【図３】
2009075940.tif 000005
【図４（ａ）】
2009075940.tif 000006
【図４（ｂ）】
2009075940.tif 000007
【図４（ｃ）】
2009075940.tif 000008
【図５】
2009075940.tif 000009
【図６】
2009075940.tif 000010
【図７】
2009075940.tif 000011
【図８】
2009075940.tif 000012