(57)【要約】【課題】  従来のようなタイムラグを発生させずに記録装置内のデータを多重化することを可能とし、不正アクセスの発見及び防止をより確実に行えるようにする。【解決手段】  受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）に対する要求を受け付けると、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）の双方に対して当該要求を同時に発行する。【選択図】  図１
2007317028.tif 000002
【特許請求の範囲】
【請求項１】
記録装置内のデータに対して外部装置からの要求に応じた処理を行う複数のデータベースサーバと通信回線を介して接続される情報処理装置であって、
前記複数のデータベースサーバに対する要求を受け付ける要求受付手段と、
前記要求受付手段により要求を受け付けた場合、前記複数のデータベースサーバの夫々に対して当該要求を同時に発行する要求発行手段とを有することを特徴とする情報処理装置。
【請求項２】
前記複数のデータベースサーバからの処理結果を示す返信を受け付ける返信受付手段と、
前記複数のデータベースサーバ全ての返信に基づく応答を処理の要求元に対して行う応答手段とを更に有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記応答手段は、前記返信受付手段が受け付けたデータベースサーバ全ての返信に、異なる内容の返信が含まれていた場合、その返信内容の違いに基づく応答を行うことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記応答手段は、前記返信受付手段が所定の時間内に前記複数のデータベースサーバのうちの何れかの返信を受け付けなかった場合、その旨を通知する応答を行うことを特徴とする請求項２に記載の情報処理装置。
【請求項５】
前記複数のデータベースサーバからの処理結果を示す返信を受け付ける返信受付手段と、
前記返信受付手段が最も早く受け付けた返信に基づく応答を処理の要求元に対して行う応答手段とを更に有することを特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記応答手段は、前記返信受付手段が最も早く受け付けた返信内容とは異なる内容の返信を後に受け付けた場合、その返信内容の違いに基づく応答を更に行うことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記応答手段は、前記返信受付手段が所定の時間内に前記複数のデータベースサーバのうちの何れかの返信を受け付けなかった場合、その旨を通知する応答を更に行うことを特徴とする請求項５又は６に記載の情報処理装置。
【請求項８】
記録装置内のデータに対して外部装置からの要求に応じた処理を行う複数のデータベースサーバと情報処理装置とが通信回線を介して接続されるデータベース管理システムであって、
前記情報処理装置は、
前記複数のデータベースサーバに対する要求を受け付ける要求受付手段と、
前記要求受付手段により要求を受け付けた場合、前記複数のデータベースサーバの夫々に対して当該要求を同時に発行する要求発行手段とを有することを特徴とするデータベース管理システム。
【請求項９】
前記情報処理装置は、
前記複数のデータベースサーバからの処理結果を示す返信を受け付ける返信受付手段と、
前記複数のデータベースサーバ全ての返信に基づく応答を処理の要求元に対して行う応答手段とを更に有することを特徴とする請求項８に記載のデータベース管理システム。
【請求項１０】
前記応答手段は、前記返信受付手段が受け付けたデータベースサーバ全ての返信に異なる内容の返信が含まれていた場合、その返信内容の違いに基づく応答を行うことを特徴とする請求項９に記載のデータベース管理システム。
【請求項１１】
前記応答手段は、前記返信受付手段が所定の時間内に前記複数のデータベースサーバのうちの何れかの返信を受け付けなかった場合、その旨を通知する応答を行うことを特徴とする請求項１０に記載のデータベース管理システム。
【請求項１２】
前記情報処理装置は、
前記複数のデータベースサーバからの処理結果を示す返信を受け付ける返信受付手段と、
前記返信受付手段が最も早く受け付けた返信に基づく応答を処理の要求元に対して行う応答手段とを更に有することを特徴とする請求項８に記載のデータベース管理システム。
【請求項１３】
前記応答手段は、前記返信受付手段が最も早く受け付けた返信内容とは異なる内容の返信を後に受け付けた場合、その返信内容の違いに基づく応答を更に行うことを特徴とする請求項１２に記載のデータベース管理システム。
【請求項１４】
前記応答手段は、前記返信受付手段が所定の時間内に前記複数のデータベースサーバのうちの何れかの返信を受け付けなかった場合、その旨を通知する応答を更に行うことを特徴とする請求項１２又は１３に記載のデータベース管理システム。
【請求項１５】
当該データベース管理システムは、
前記複数のデータベースサーバと通信回線を介して接続される監視サーバを更に備え、
前記監視サーバは、
前記複数のデータベースサーバに対応する各記録装置内のデータを夫々取得するデータ取得手段と、
前記複数のデータベースサーバから夫々取得されたデータを比較し、各データが一致しているか否かを判定するデータ比較手段とを有することを特徴とする請求項８乃至１４の何れか１項に記載のデータベース管理システム。
【請求項１６】
前記データ取得手段は、前記複数のデータベースサーバ毎に、対応する記録装置内の全データを取得し、前記データ比較手段は、前記複数のデータベースサーバ毎に取得された全データを互いに比較することを特徴とする請求項１５に記載のデータベース管理システム。
【請求項１７】
前記データ取得手段は、前記複数のデータベースサーバ毎に、対応する記録装置から対象となるデータを部分的に取得し、前記データ比較手段は、前記複数のデータベースサーバ毎に取得されたデータを互いに比較することを特徴とする請求項１５又は１６に記載のデータベース管理システム。
【請求項１８】
前記監視サーバは、
前記複数のデータベースサーバ毎に、前記データベースサーバの処理履歴を示すログデータを取得するログ取得手段と、
前記複数のデータベースサーバ毎に取得されたログデータを互いに比較し、各ログデータが一致しているか否かを判定するログ比較手段とを更に有することを特徴とする請求項１５乃至１７の何れか１項に記載のデータベース管理システム。
【請求項１９】
前記監視サーバは、
前記データ比較手段によるデータの比較の結果、各データが一致していない場合、警告を行う警告手段を更に有することを特徴とする請求項１５乃至１７の何れか１項に記載のデータベース管理システム。
【請求項２０】
前記監視サーバは、
前記データ比較手段によるデータの比較の結果、各データが一致していない場合、前記複数のデータベースサーバを停止させるデータベースサーバ停止手段を更に有することを特徴とする請求項１５、１６、１７、１９の何れか１項に記載のデータベース管理システム。
【請求項２１】
前記監視サーバは、
前記データ比較手段によるデータの比較の結果、各データが一致していない場合、前記複数のデータベースサーバの外部との通信を遮断させる通信遮断手段を更に有することを特徴とする請求項１５、１６、１７、１９の何れか１項に記載のデータベース管理システム。
【請求項２２】
前記監視サーバは、
前記ログ比較手段によるログデータの比較の結果、各ログデータが一致していない場合、警告を行う警告手段を更に有することを特徴とする請求項１８に記載のデータベース管理システム。
【請求項２３】
前記監視サーバは、
前記ログ比較手段によるログデータの比較の結果、各ログデータが一致していない場合、前記複数のデータベースサーバを停止させるデータベースサーバ停止手段を更に有することを特徴とする請求項１８又は２２に記載のデータベース管理システム。
【請求項２４】
前記監視サーバは、
前記ログ比較手段によるログデータの比較の結果、各ログデータが一致していない場合、前記複数のデータベースサーバの外部との通信を遮断させる通信遮断手段を更に有することを特徴とする請求項１８又は２２に記載のデータベース管理システム。
【請求項２５】
記録装置内のデータに対して外部装置からの要求に応じた処理を行う複数のデータベースサーバと通信回線を介して接続される情報処理装置の制御方法であって、
前記複数のデータベースサーバに対する要求を受け付ける要求受付ステップと、
前記要求受付ステップにより要求を受け付けた場合、前記複数のデータベースサーバの夫々に対して当該要求を同時に発行する要求発行ステップとを含むことを特徴とする情報処理装置の制御方法。
【請求項２６】
請求項２５に記載の情報処理装置の制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録装置内のデータの保全性等を確保するための技術に関するものである。
【背景技術】
【０００２】
近年、インターネットの普及により、多くの社内システムが社外にも接続される等、不正アクセスに基づく、情報の漏洩、悪意によるデータの改竄といった被害を受ける可能性が増大し、社内システムにおけるセキュリティの需要性が増してきている。これに対して、特にデータベース等は、企業の守秘性の高い情報を扱うことが多く、セキュリティやデータの保全性に関する様々な機能が備えられている。
【０００３】
例えば特許文献１には、情報の漏洩を防止する方法が開示されている。また、例えば特許文献２及び特許文献３には、データの改竄を防止し、データの保全性を確保する方法が開示されている。
【０００４】
また、インターネットの普及に伴い、顧客のサーバを預かり、インターネットへの接続回線や保守・運用サービス等を提供する業者が増えている。サーバを預かり回線や保守を提供するハウジングサービスや自らが用意したサーバを顧客に貸し出すホスティングといったサービスを提供している。これらサービスを提供するための施設はデータセンタと呼ばれ、耐震性に優れたビルに高速な通信回線を引き込んでいるもの、自家発電設備や高度な空調設備を備えているもの、ＩＤカードによる入退室管理やカメラによる２４時間監視などでセキュリティを確保しているものがある。
【０００５】
また、災害時等におけるデータの損失を避けるため、地理的に離れたところにあるストレージ装置に複製を作るといったことが行われる。つまり、コンピュータやデータを二重化し、複数のシステムで同じ環境を作っておき、通常使用しているコンピュータに障害が発生した場合、もう１台のコンピュータが処理を引き継いで業務を継続するという方法がある。
【０００６】
このようにデータセンタでは、災害時や設備そのものに対する障害や、入退室管理等の物理的なセキュリティに関しては十分な備えがある。外部からのシステム攻撃者やいわゆるクラッカーによる情報漏洩、データ改竄に対しては、外部ネットワークとの境界にファイヤーウォールを設置して内外のデータの流通を監視、制限することが一般的に行われている。インターネットの普及により、不正アクセス等、システム攻撃に遭う機会が急増している状況下、特にセキュリティに関して、一層厳格な対策が求められるようになる。
【０００７】
データベース内の情報、データの保全性を担保するためには、データベースを多重化することにより行うのが確実である。すなわち、多重化したデータベース内のデータの整合性の検証によりデータの正確性、改竄の有無等を検出するのである。通常、データベースのレプリケーション（多重化）は、複数のデータベース間で情報を同一に保つために、マスタのデータベースで情報の更新が行われると、その情報を他のデータベースにもコピーして、レプリカのデータベースを構築していくという手法が採られる。
【０００８】
【特許文献１】特開２００１−３３７９１８号公報
【特許文献２】特開２００５−２５０７２０号公報
【特許文献３】特開２００３−１６７７７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
データベースへの不正アクセスの防止やデータ保全性の確保のために、前述した方法等、提案されてきたが、データベース内の情報、データの保全性やセキュリティの確保（データの正確性、改竄の有無の検知）するためには、データベースを多重化し、それぞれのデータベース内のデータの整合性、すなわちデータ内容が同一であること、操作履歴が同一であることを保証することにより行なうのが最も確実である。
【００１０】
しかしながら、通常は、コピー先となるレプリカのデータベースとマスタのデータベースとは非同期で情報の更新が行われるため、レプリカのデータベースがマスタのデータベースと同一の情報に更新されるまでにはタイムラグが生じる。従って、正常に動作していても、マスタのデータベースとレプリカのデータベースとの間に整合性がとれなくなる期間が発生するため、整合性を確実に検証することは容易ではない。
【００１１】
そこで、本発明の目的は、従来のようなタイムラグを最小化して記録装置内のデータを多重化することを可能とし、不正アクセスの発見及び防止をより確実に行えるようにすることにある。
【課題を解決するための手段】
【００１２】
本発明の情報処理装置は、記録装置内のデータに対して外部装置からの要求に応じた処理を行う複数のデータベースサーバと通信回線を介して接続される情報処理装置であって、前記複数のデータベースサーバに対する要求を受け付ける要求受付手段と、前記要求受付手段により要求を受け付けた場合、前記複数のデータベースサーバの夫々に対して当該要求を同時に発行する要求発行手段とを有することを特徴とする。
本発明のデータベース管理システムは、記録装置内のデータに対して外部装置からの要求に応じた処理を行う複数のデータベースサーバと情報処理装置とが通信回線を介して接続されるデータベース管理システムであって、前記情報処理装置は、前記複数のデータベースサーバに対する要求を受け付ける要求受付手段と、前記要求受付手段により要求を受け付けた場合、前記複数のデータベースサーバの夫々に対して当該要求を同時に発行する要求発行手段とを有することを特徴とする。
本発明の情報処理装置の制御方法は、記録装置内のデータに対して外部装置からの要求に応じた処理を行う複数のデータベースサーバと通信回線を介して接続される情報処理装置の制御方法であって、前記複数のデータベースサーバに対する要求を受け付ける要求受付ステップと、前記要求受付ステップにより要求を受け付けた場合、前記複数のデータベースサーバの夫々に対して当該要求を同時に発行する要求発行ステップとを含むことを特徴とする。
本発明のプログラムは、前記情報処理装置の制御方法をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１３】
本発明においては、複数のデータベースサーバに対する要求があると、情報処理装置は複数のデータベースサーバに対して当該要求を同時に発行するように構成している。
従って、複数のデータベースサーバは、対応する記録装置に対して当該要求に応じた処理を同時に行うことになるため、従来のようなタイムラグを発生させずに記録装置でデータを多重化することが可能となり、不正アクセスの発見及び防止をより確実に行うことができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
【００１５】
図１は、本発明の実施形態に係るデータベース管理システムの概略構成を示す図である。
図１に示すように、データベース管理システムにおいて、ユーザ側のコンピュータシステム１００には、クライアントＰＣである複数の社内ＰＣ１０１、ＡＰ（アプリケーション）サーバ１０２及び受付サーバ１０３が備えられている。複数の社内ＰＣ１０１はＡＰサーバ１０２とＬＡＮ等の通信回線を介して接続され、ＡＰサーバ１０２に対してアクセスすることができる。ＡＰサーバ１０２は、受付サーバ１０３とＬＡＮ等の通信回線を介して接続される。受付サーバ１０３は、ＶＰＮを用いたインターネット等の信頼性のあるネットワークを介して後述するデータセンタ１（２００ａ）、データセンタ２（２００ｂ）内のＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）と接続されている。ＡＰサーバ１０３は、受付サーバ１０３を介して、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）との間のデータ通信を行う。
【００１６】
ＡＰサーバ１０２は、社内ＰＣ１０１からのデータ更新やデータ参照等の要求に応じてクエリー（ＳＱＬ文）を発行する。
【００１７】
受付サーバ１０３は、ＡＰサーバ１０２からのクエリーを受信すると、ＤＢサーバ２０１ａ、２０１ｂの双方に対して当該クエリーを同時に送信する。なお、本実施形態では、ＡＰサーバ１０２と受付サーバ１０３とを分けた構成としているが、これらの機能を一つのサーバ内に搭載した構成としてもよい。
【００１８】
また、図１においては、ＡＰサーバ１０２と社外のコンピュータ（以下、社外ＰＣと称す）４００ともインターネットを介して接続されている構成を示している。ＡＰサーバ１０２に対してアクセスが許されていれば、社外ＰＣ４００からのアクセスも可能である。
【００１９】
データセンタ１（２００ａ）には、ＤＢ（データベース）サーバ１（２０１ａ）及びストレージ装置１（２０２ａ）が備えられている。同じく、データセンタ２（２００ｂ）にも、ＤＢサーバ２（２０１ｂ）及びストレージ装置２（２０２ｂ）が備えられている。なお、本実施形態では、２つのデータセンタが存在することを前提としているが、更に多くのデータセンタが存在しても構わない。
【００２０】
監視センタ３００には、監視サーバ３０１が備えられる。監視サーバ３０１は、その機能構成として、Ｌｏｇ比較部３０１３、ストレージ比較部３０１２、ＤＢ比較部３０１１、警告部３０１５及び通信遮断部３０１４を備え、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）と、ＶＰＮを用いたインターネット等の信頼性のあるネットワークを介して接続されている。
【００２１】
ＤＢサーバ１（２０２ａ）、ＤＢサーバ２（２０２ｂ）は、ストレージ装置内のデータに対して参照、更新等、何らかの処理を行うと、当該処理に対応するログデータを出力する。Ｌｏｇ比較部３０１３は、ＤＢサーバ１（２０２ａ）、ＤＢサーバ２（２０２ｂ）から夫々出力されるログデータを取得し、比較することにより、ログデータ間の違いを検出する。
【００２２】
上述したように、受付サーバ１０３はＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）とに対して同じクエリーを同時に送信しているため、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）は当該クエリーに応じた同じ挙動を同時に行うはずである。しかしながら、Ｌｏｇ比較部３０１３による比較の結果、ＤＢサーバ１（２０２ａ）からのログデータとＤＢサーバ２（２０２ｂ）からのログデータとの間に違いが検出された場合、ストレージ装置１（２０２ａ）内のデータ及びストレージ装置２（２０２ｂ）内のデータの少なくとも何れか一方に対し、不正なアクセスによりデータの盗み見やデータの改竄が行われた可能性がある。即ち、Ｌｏｇ比較部３０１３は、ログデータの比較により、データの盗み見やデータの改竄を検出することができる。
【００２３】
ストレージ比較部３０１２は、ストレージ装置１（２０２ａ）内に格納される全データとストレージ装置２（２０２ｂ）内に格納される全データとを比較し、ストレージ装置１（２０２ａ）内のデータとストレージ装置２（２０２ｂ）内のデータとの違いを検出する。但し、ストレージ装置１（２０２ａ）及びストレージ装置２（２０２ｂ）内のデータ管理がファイルシステムによってなされている場合と、ストレージ装置１（２０２ａ）、２（２０２ｂ）がローデバイスとしてデータを管理している場合とで異なる方法によってデータの比較が行われる。
【００２４】
受付サーバ１０３はＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）とに対して同じクエリーを同時に送信しているため、ストレージ装置２０２ａ内のデータとストレージ装置２０２ｂ内のデータとは一致しているはずである。しかしながら、ストレージ比較部３０１２による比較の結果、ストレージ装置２０２ａ内のデータとストレージ装置２０２ｂ内のデータとが一致していない場合、ストレージ装置１（２０２ａ）内のデータ及びストレージ装置２（２０２ｂ）内のデータの少なくとも何れか一方に対し、不正なアクセスによりデータが盗み見やデータの改竄が行われた可能性がある。即ち、ストレージ比較部３０１２は、ストレージ装置内のデータの比較により、社外ＰＣ４００によるデータの盗み見やデータの改竄を検出することができる。
【００２５】
ＤＢ比較部３０１１は、ＤＢサーバ１（２００ａ）とＤＢサーバ２（２００ｂ）との双方に対して同一のクエリーを同時に発行する。そして、ＤＢ比較部３０１１は、そのクエリーに応じてＤＢサーバ１（２００ａ）、ＤＢサーバ２（２００ｂ）によって抽出されたテーブルを比較し、テーブル間の違いを検出する。
【００２６】
受付サーバ１０３からはＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）とに対して同じクエリーを同時に送信されているため、ストレージ装置１（２０２ａ）とストレージ装置２（２０２ｂ）内のデータは同一になっているはずである。この同一内容のストレージ装置１（２０２ａ）とストレージ装置２（２０２ｂ）内のデータに対して、ＤＢ比較部３０１１がテーブル抽出のための同一のクエリーを発行しているため、ＤＢサーバ１（２０１ａ）から抽出されるテーブルとＤＢサーバ２（２０１ｂ）から抽出されるテーブルとは一致しているはずである。しかしながら、ＤＢ比較部３０１１による比較の結果、ＤＢサーバ１（２０１ａ）から抽出されるテーブルとＤＢサーバ２（２０１ｂ）から抽出されるテーブルとが一致していない場合、ストレージ装置１（２０２ａ）内のデータ及びストレージ装置２（２０２ｂ）内のデータの少なくとも何れか一方に対し、不正なアクセスによりデータの盗み見やデータの改竄が行われた可能性がある。即ち、ＤＢ比較部３０１１は、テーブルの比較により、社外ＰＣ４００によるデータの盗み見やデータの改竄を検出することができる。
【００２７】
ログデータの比較やストレージ装置内のデータの比較、テーブルの比較は、それぞれログ発生の都度、データに変更があった都度、クエリーが発行された都度行っても良いし、一定期間を置いて定期的に行なっても良い。
【００２８】
通信遮断部３０１４は、Ｌｏｇ比較部３０１３によってログデータの違いが検出された場合、ストレージ装置３０１２によってデータの違いが検出された場合、又は、ＤＢ比較部３０１１によってテーブルの違いが検出された場合、ＤＢサーバ１（２０１ａ）及びＤＢサーバ２（２０１ｂ）の外部との通信を遮断するための制御情報をＤＢサーバ１（２０１ａ）及びＤＢサーバ２（２０１ｂ）に対して送信する。
【００２９】
警告部３０１５は、Ｌｏｇ比較部３０１３によってログデータの違いが検出された場合、ストレージ装置３０１２によってストレージ装置内のデータの違いが検出された場合、又は、ＤＢ比較部３０１１によってテーブルの違いが検出された場合、ＡＰサーバ１０２警告情報を送信する。
【００３０】
図２−１は、ＡＰサーバ１０２、受付サーバ１０３又は監視サーバ３０１のハードウェア構成を示すブロック図である。ＣＰＵ２０１１は、システムバスに接続される各デバイスやコントローラを統括的に制御する。ＲＯＭ２０３１又はＨＤ２０７１には、ＣＰＵ２０１１の制御プログラムであるＢＩＯＳ（Basic Input/Output System）やオペレーティングシステムプログラムや、ＡＰサーバ１０２、受付サーバ１０３又は監視サーバ３０１が実行する例えば図３−１乃至図６−５に示す処理のプログラム等が記憶されている。
【００３１】
なお、図２−１の例では、ハードディスク（ＨＤ）２０７１はＡＰサーバ１０２、受付サーバ１０３又は監視サーバ３０１の内部に配置された構成としているが、他の実施形態としてＨＤ２０７１に相当する構成がＡＰサーバ１０２、受付サーバ１０３又は監視サーバ３０１の外部に配置された構成としてもよい。また、本実施形態に係る例えば図３−１乃至図６−５に示す処理を行なうためのプログラムは、フレキシブルディスク（ＦＤ）２０６１やＣＤ−ＲＯＭ等、コンピュータ読み取り可能な記録媒体に記録され、それらの記録媒体から供給される構成としてもよいし、インターネット等の通信媒体を介して供給される構成としてもよい。
【００３２】
ＲＡＭ２０２１は、ＣＰＵ２０１１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１１は、処理の実行に際して必要なプログラム等をＲＡＭ２０２１にロードして、プログラムを実行することで各種動作を実現するものである。
【００３３】
ディスクコントローラ２０５１は、ハードディスク２０６１やフレキシブルディスク２０６１等の外部メモリへのアクセスを制御する。通信ＩＦコントローラ２０４１は、インターネットやＬＡＮと接続し、例えばＴＣＰ／ＩＰによって外部との通信を制御するものである。
【００３４】
ディスプレイコントローラ２０８１は、ＣＲＴ（Cathode Ray Tube）等のディスプレイ２０９１における画像表示を制御する。
【００３５】
なお、監視サーバ３０１のＬｏｇ比較部３０１３、ストレージ比較部３０１２及びＤＢ比較部３０１１は夫々、例えばハードディスク２０７１内に記憶され、必要に応じてＲＡＭ２０２１にロードされるプログラム及びそれを実行するＣＰＵ２０１１に相当する構成である。
【００３６】
また、通信遮断部３０１４及び警告部３０１５は夫々、例えばハードディスク２０７１内に記憶され、必要に応じてＲＡＭ２０２１にロードされるプログラム及びそれを実行するＣＰＵ２０１１と、通信Ｉ／Ｆコントローラ２０４１とに相当する構成である。
【００３７】
図２−２は、ＤＢサーバ２０１ａ又はＤＢサーバ２０１ｂのハードウェア構成を示すブロック図である。図２−２の２０１２、２０２２、２０３２、２０４２、２０５２、２０６２、２０７２、２０８２、２０９２、２１０２及び２１１２は夫々、図２−１の２０１１、２０２１、２０３１、２０４１、２０５１、２０６１、２０７１、２０８１、２０９１、２１０１及び２１１１に対応する構成である。
【００３８】
ＳＴインタフェース２１１３は、ＤＢサーバ２０１ａ又はＤＢサーバ２０１ｂのＣＰＵ２０１２が、ストレージ装置２０２ａ又は２０２ｂに対してデータの参照や更新等を行うためのインタフェースである。
【００３９】
なお、ＨＤ２０７２には、ＤＢサーバ２０１ａ又はＤＢサーバ２０１ｂのＣＰＵ２０１２が実行する例えば図３−１乃至図６−５に示す処理のプログラム等が記憶されている。ＣＰＵ２０１２が適宜プログラム等をＨＤ２０７２からＲＡＭ２０２２に読み出し、実行することで、ＤＢサーバ２０１ａ又はＤＢサーバ２０１ｂによる例えば図３−１乃至図６−５に示す処理が実行されることになる。
【００４０】
次に、ユーザ側のコンピュータシステム１００とデータセンタ２００ａ、２００ｂ内のデータベースシステムとの動作の一例を説明する。
【００４１】
先ず、図３−１乃至図３−４を参照して、ストレージ装置１（２００ａ）、ストレージ装置２（２００ｂ）内のデータの更新時における動作について説明する。先ず、受付サーバ１０３が全てのＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）からの返信を待って、ＡＰサーバ１０２に対して応答を行う「確定応答モード」でのデータ更新時の動作について説明する。ここでは分かりやすくするためＤＢサーバを２台としているが、２台以上であっても良い。
【００４２】
ＡＰサーバ１０２は、社内ＰＣ１０１からのデータ更新の要求に応じて、データ更新のためのクエリー（Request(Insert/Delete/Update等)）を発行する。受付サーバ１０３は、ＡＰサーバ１０２からのクエリーを受信すると、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）とに対して当該クエリーを同時に送信する。ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）は、クエリーを受信すると、当該クエリーに応じたデータ更新処理が成功したか（ＯＫ）、失敗したか（ＮＧ）を示す結果情報を返信する。このとき、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）の双方からの返信を待ち、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）からの返信内容に応じた応答をＡＰサーバ１０２に対して行う。
【００４３】
図３−１に示すように、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）から共にデータ更新処理が成功した旨（ＯＫ）の結果情報が返信された場合には、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）双方からの返信を受けた後、データ更新処理が成功した旨（ＯＫ）をＡＰサーバ１０２に対して応答する。このように、「確定応答モード」においては、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）の双方のデータ更新処理の成功を確認した後、ＡＰサーバ１０２に対してデータ更新処理の成功を通知するようにしている。
【００４４】
また、図３−２に示すように、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）から共にデータ更新処理が失敗した旨（ＮＧ）の結果情報が返信された場合には、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）双方からの返信を受けた後、データ更新処理が失敗した旨（ＮＧ）をＡＰサーバ１０２に対して応答する。このように、「確定応答モード」においては、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）の双方のデータ更新処理の失敗を確認した後、ＡＰサーバ１０２に対してデータ更新処理の失敗を通知するようにしている。
【００４５】
また、図３−３に示すように、ＤＢサーバ１（２０１ａ）からはデータ更新処理が成功した旨（ＯＫ）の結果情報が返信され、ＤＢサーバ２（２０１ｂ）からはデータ更新処理が失敗した旨（ＮＧ）の結果情報が返信された場合には、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）双方からの返信を受けた後、データ更新処理が失敗した旨（ＮＧ）をＡＰサーバ１０２に対して応答する。このように、「確定応答モード」においては、先にＤＢサーバ１（２０１ａ）からデータ更新処理の成功が通知されるても、その後、ＤＢサーバ２（２０１ｂ）からデータ更新処理の失敗が通知された場合には、受付サーバ１０３は、データ更新処理が失敗したことをＡＰサーバ１０２に対して通知する。このとき、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）双方を停止させるための制御情報をＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）に対して送信してもよい。
【００４６】
また、図３−４に示すように、ＡＰサーバ１０２からクエリーを受信した時点から一定時間が経過するまでの間、ＤＢサーバ１（２０１ａ）からはデータ更新処理が成功した旨（ＯＫ）の結果情報が返信されたが、ＤＢサーバ２（２０１ｂ）からはその一定時間内に何も返信がない場合には、受付サーバ１０３は、ＤＢサーバ２からの返信がない旨をＡＰサーバ１０２に対して応答する。このように、「確定応答モード」においては、一定時間内にＤＢサーバ１（２０１ａ）からデータ更新処理の成功が通知されても、一定時間内にＤＢサーバ２（２０１ｂ）からの返信がなかった場合には、受付サーバ１０３は、ＤＢサーバ２（２０１ｂ）からの返信がなかったことだけをＡＰサーバ１０２に対して通知する。このとき、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）双方を停止させるための制御情報をＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）に対して送信してもよい。つまり「確定応答モード」では、すべてのＤＢサーバの処理の結果を受けて、ＡＰサーバに対して成功、失敗の通知を行なうということである。
【００４７】
次に、図４−１乃至図４−５を参照して、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）の何れか先に返信があった時点で受付サーバ１０３がＡＰサーバ１０２に対して応答を行う「最速確認応答モード」でのデータ更新処理時の動作について説明する。
【００４８】
ＡＰサーバ１０２は、社内ＰＣ１０１からのデータ更新の要求に応じて、クエリー（Request(Insert/Delete/Update等)）を発行する。受付サーバ１０３は、ＡＰサーバ１０２からのクエリーを受信すると、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）とに対して当該クエリーを同時に送信する。ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）は、クエリーを受信すると、当該クエリーに応じたデータ更新処理が成功したか（ＯＫ）、失敗したか（ＮＧ）を示す結果情報を返信する。受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）の何れか一方から返信があった時点で、その返信内容に応じた応答をＡＰサーバ１０２に対して行う。
【００４９】
図４−１に示すように、ＤＢサーバ１（２０１ａ）からデータ更新処理が成功した旨（ＯＫ）の結果情報が先に返信され、その後、ＤＢサーバ２（２０１ｂ）からもデータ更新処理が成功した旨（ＯＫ）の結果情報が返信された場合、受付サーバ１０３は、ＤＢサーバ２（２０１ｂ）からの返信は待たずに、ＤＢサーバ１（２０１ａ）からの返信内容に応じて、データ更新処理が成功した旨（ＯＫ）をＡＰサーバ１０２に対して応答する。
【００５０】
また、図４−２に示すように、ＤＢサーバ１（２０１ａ）からデータ更新処理が失敗した旨（ＮＧ）の結果情報が先に返信され、その後、ＤＢサーバ２（２０１ｂ）からもデータ更新処理が失敗した旨（ＮＧ）の結果情報が返信された場合、受付サーバ１０３は、ＤＢサーバ２（２０１ｂ）からの返信は待たずに、ＤＢサーバ１（２０１ａ）からの返信を受けた時点で、データ更新処理が失敗した旨（ＮＧ）をＡＰサーバ１０２に対して応答する。
【００５１】
また、図４−３に示すように、ＡＰサーバ１０２からクエリーを受信した時点から一定時間が経過するまでの間、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）の何れからも返信がなかった場合、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）の何れからも返信がなかった旨をＡＰサーバ１０２に対して応答する。このとき、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）双方を停止させるための制御情報をＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）に対して送信してもよい。
【００５２】
また、図４−４に示すように、ＤＢサーバ１（２０１ａ）からデータ更新処理が成功した旨（ＯＫ）の結果情報が先に返信され、その後、ＤＢサーバ２（２０１ｂ）からデータ更新処理が失敗した旨（ＮＧ）の結果情報が返信された場合、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）からの返信があった時点でＡＰサーバ１０２に対してデータ更新処理が成功した旨（ＯＫ）を応答し、その後、ＤＢサーバ２（２０１ｂ）からの返信を受け付けた時点でＡＰサーバ１０２に対してデータ更新処理が失敗した旨（ＮＧ）を応答する。このとき、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）双方を停止させるための制御情報をＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）に対して送信してもよい。
【００５３】
また、図４−５に示すように、ＡＰサーバ１０２からクエリーを受信した時点から一定時間が経過するまでの間、ＤＢサーバ１（２０１ａ）からはデータ更新処理が成功した旨（ＯＫ）の結果情報が返信されたが、ＤＢサーバ２（２０１ｂ）からはその一定時間内に何も返信がない場合には、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）からの返信のあった時点でＡＰサーバ１０２に対してデータ更新処理が成功した旨（ＯＫ）を応答し、一定時間が経過した後にＤＢサーバ２から返信がない旨をＡＰサーバ１０２に対して応答する。このとき、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）双方を停止させるための制御情報をＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）に対して送信してもよい。
【００５４】
次に、図５−１乃至図５−４を参照して、ストレージ装置１（２００ａ）、ストレージ装置２（２００ｂ）内のデータ参照時における動作について説明する。先ず、受付サーバ１０３が全てのＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）からの返信を待って、ＡＰサーバ１０２に対して応答を行う「確定応答モード」でのデータ参照処理時の動作について説明する。
【００５５】
ＡＰサーバ１０２は、社内ＰＣ１０１からのデータ参照の要求に応じて、データ参照のためのクエリー（Request（Select等））を発行する。受付サーバ１０３は、ＡＰサーバ１０２からクエリーを受信すると、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）に対して当該クエリーを同時に送信する。ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）は、クエリーを受信すると、当該クエリーに応じたデータ参照処理を行い、データ参照結果を返信するか、又はデータ参照処理が失敗した旨（ＮＧ）を示す結果情報を返信する。受付サーバ１０３は、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）からの返信を待ち、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）からの返信内容に応じてＡＰサーバ１０２に対する応答を行う。
【００５６】
図５−１に示すように、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）から共にデータ参照結果が返信された場合には、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）双方からデータ参照結果の返信を受けると、ＤＢサーバ１（２０１ａ）のデータ参照結果１と、ＤＢサーバ２（２０１ｂ）のデータ参照結果２とが一致しているか否かを判定する。図５−１の例では、データ参照結果１とデータ参照結果２とが一致しているため、受付サーバ１０３は、データ参照結果１とデータ参照結果２とで示される同一の参照結果をＡＰサーバ１０２に対して応答する。このように、「確定応答モード」においては、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）から共にデータ参照結果を受信した場合には、データ参照結果１とデータ参照結果２とが一致していることを確認した後、ＡＰサーバ１０２に対してデータ参照結果を通知するようにしている。
【００５７】
また、図５−２に示すように、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）から共にデータ参照処理が失敗した旨（ＮＧ）が返信された場合には、受付サーバは、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）双方からの返信を受けた後、データ参照処理が失敗した旨（ＮＧ）をＡＰサーバ１０２に対して応答する。このように「確定応答モード」においては、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）双方のデータ更新処理の失敗を確認した後、ＡＰサーバ１０２に対してデータ更新処理の失敗を通知するようにしている。
【００５８】
また、図５−３に示すように、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）から共にデータ参照の結果が返信されたが、ＤＢサーバ１（２０１ａ）によるデータ参照結果１とＤＢサーバ２（２０１ｂ）によるデータ参照結果２とが異なっている場合、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）とのデータ参照結果を受信した後、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）とのデータ参照結果が異なっている旨をＡＰサーバ１０２に対して応答する。このとき、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）双方を停止させるための制御情報をＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）に対して送信してもよい。
【００５９】
また、図５−４に示すように、ＡＰサーバ１０２からクエリーを受信した時点から一定時間が経過するまでの間、ＤＢサーバ１（２０１ａ）からはデータ参照結果１が返信されたが、ＤＢサーバ２（２０１ｂ）からはその一定時間内に何も返信がない場合には、受付サーバ１０３は、ＤＢサーバ２からの返信がない旨をＡＰサーバ１０２に対して応答する。このとき、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）双方を停止させるための制御情報をＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）に対して送信してもよい。
【００６０】
次に、図６−１乃至図６−５を参照して、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）の何れか先に返信があった時点で受付サーバ１０３がＡＰサーバ１０２に対して応答を行う「最速確認応答モード」でのデータ参照処理時の動作について説明する。
【００６１】
ＡＰサーバ１０２は、社内ＰＣ１０１からのデータ参照の要求に応じて、データ参照のためのクエリー（Request（Select等））を発行する。受付サーバ１０３は、ＡＰサーバ１０２からのクエリーを受信すると、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）とに対して当該クエリーを同時に送信する。ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）は、クエリーを受信すると、当該クエリーに応じたデータ参照処理を行い、データ参照結果を返信するか、又はデータ参照処理が失敗した旨（ＮＧ）を示す結果情報を送信する。受付サーバ１０３は、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）の何れか一方から返信があった時点で、その返信内容に応じた応答をＡＰサーバ１０２に対して行う。
【００６２】
図６−１に示すように、ＤＢサーバ１（２０１ａ）からデータ参照結果１が先に返信され、その後、ＤＢサーバ２（２０１ｂ）からもデータ参照結果２が返信された場合、受付サーバ１０３は、ＤＢサーバ２（２０１ｂ）からの返信は待たずに、ＤＢサーバ１（２０１ａ）からの返信を受けた時点でＤＢサーバ１（２０１ａ）からのデータ参照結果１をＡＰサーバ１０２に対して応答する。その後、ＤＢサーバ２（２０１ｂ）からデータ参照結果２を受信すると、受付サーバ１０３は、データ参照結果１とデータ参照結果２とが一致しているか否かを判定する。図６−１の例では、データ参照結果１とデータ参照結果２とが一致しているため、受付サーバ１０３は、ＤＢサーバ２（２０１ｂ）からの返信に応じてＡＰサーバ１０２に対する応答は行わない。
【００６３】
また、図６−２に示すように、ＤＢサーバ１（２０１ａ）からデータ参照処理が失敗した旨（ＮＧ）の結果情報が先に返信され、その後、ＤＢサーバ２（２０１ｂ）からもデータ参照処理が失敗した旨（ＮＧ）の結果情報が返信された場合、受付サーバ１０３は、ＤＢサーバ２（２０１ｂ）からの返信は待たずに、ＤＢサーバ１（２０１ａ）からの返信を受けた時点で、データ参照処理が失敗した旨（ＮＧ）をＡＰサーバ１０２に対して応答する。
【００６４】
また、図６−３に示すように、ＡＰサーバ１０２からクエリーを受信した時点から一定時間が経過するまでの間、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）の何れからも返信がなかった場合、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）の何れからも返信がなかった旨をＡＰサーバ１０２に対して応答する。このとき、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）双方を停止させるための制御情報をＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）に対して送信してもよい。
【００６５】
また、図６−４に示すように、ＤＢサーバ１（２０１ａ）からデータ参照結果１が先に返信され、その後、ＤＢサーバ２（２０１ｂ）からデータ参照結果２が返信された場合、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）からの返信があった時点でＡＰサーバ１０２に対してデータ参照結果１を応答する。その後、ＤＢサーバ２（２０１ｂ）からデータ参照結果２を受信すると、受付サーバ１０３は、データ参照結果１とデータ参照結果２とが一致しているか否かを判定する。図６−４の例では、データ参照結果１とデータ参照結果２とが一致していないため、受付サーバ１０３は、ＤＢサーバ２（２０１ｂ）からの返信に応じて、ＤＢサーバ１（２０１ａ）によるデータ参照結果１とＤＢサーバ２（２０１ｂ）によるデータ参照結果２とが異なる旨をＡＰサーバ１０２に対して応答する。このとき、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）双方を停止させるための制御情報をＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）に対して送信してもよい。
【００６６】
また、図６−５に示すように、ＡＰサーバ１０２からクエリーを受信した時点から一定時間が経過するまでの間、ＤＢサーバ１（２０１ａ）からはデータ参照結果１が返信されたが、ＤＢサーバ２（２０１ｂ）からはその一定時間内に何も返信がない場合には、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）からの返信のあった時点でＡＰサーバ１０２に対してデータ参照結果１を応答し、一定時間が経過した後にＤＢサーバ２から返信がない旨をＡＰサーバ１０２に対して応答する。このとき、受付サーバ１０３は、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）双方を停止させるための制御情報をＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）に対して送信してもよい。
【００６７】
理想的には、全てのコミュニケーションを「確定応答モード」で行うことが好ましいが、処理時間を考慮した場合、複数のＤＢサーバから結果が全て返ってきたところでＡＰサーバに応答する方式の「確定応答モード」では実用上、支障を来すことも考えられる。このように支障を来す虞がある場合、複数のＤＢサーバの何れかより最速の返信があった時点でＡＰサーバに対して応答が行われる「最速確認応答モード」を選択してもよい。これらのモードの選択は設定したいセキュリティのレベルに応じて行う。
【００６８】
上述したように、ＡＰサーバ１０２から例えばクエリーが発行されると、受付サーバ１０３はＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）の双方に対して同時に当該クエリーを発行する。従って、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）はともに当該クエリーに基づく同一の処理をストレージ装置１（２０２ａ）、ストレージ装置２（２０２ｂ）を同時に実行することが可能となるため、従来のようなタイムラグを発生させずにストレージ装置１（２０２ａ）、ストレージ装置２（２０２ｂ）でデータを多重化することが可能となり、社外ＰＣ４００による不正アクセスの発見及び防止をより確実に行うことができる。
【００６９】
また、本実施形態では、受付サーバ１０３がＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）に対して同時にデータ更新やデータ参照のための同一のクエリーを発行している。しかし、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）側で同一のクエリーに対する処理が正常に行われなかった場合、ＡＰサーバ１０２側に異常を通知したり、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）の停止させたりしてセキュリティを確保している。
【００７０】
次に、監視サーバ３０１によるデータセンタ２００ａ、２００ｂの監視方法について説明する。上述したように、監視サーバ３０１には、データセンタ２００ａ、２００ｂを監視するための機能構成として、ＤＢ比較部３０１１、ストレージ比較部３０１２及びＬｏｇ比較部３０１３を備える。
【００７１】
先ず、図７及び図１０を参照しながら、ＤＢ比較部３０１１によるデータセンタ２００ａ、２００ｂの監視方法について説明する。図７は、ＤＢ比較部３０１１によるデータセンタ２００ａ、２００ｂの監視処理と、ＤＢ比較部３０１１による監視結果に応じて実行される警告処理及び通信遮断処理を示すフローチャートである。図１０は、ＤＢ比較部３０１１によるテーブルの比較処理を模式的に示す図である。
【００７２】
ＤＢ比較部３０１１は、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）に対して比較対象とする全テーブルを抽出するためのクエリーを発行する（ステップＳ７０１）。このとき、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）に対して夫々同一のクエリー（例えば、Select * from tbl0;等）が発行される。
【００７３】
ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）は、ＤＢ比較部３０１１からのクエリーに応じて、該当するテーブルをストレージ装置１（２０２ａ）、ストレージ装置２（２０２ｂ）から検索する。検索結果は、ＤＢサーバ１（２０２ａ）、ＤＢサーバ２（２０２ｂ）からテキストデータ又はバイナリデータ１００１ａ、１００１ｂで出力される。
【００７４】
ＤＢ比較部３０１１は、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）から夫々、テキストデータ又はバイナリデータで出力された検索結果１００１ａ、１００１ｂを比較する（ステップＳ７０２）。検索結果がテキストデータで出力された場合には、例えば、ＵＮＩＸ(登録商標)コマンドであれば、diff（テキスト比較）を監視サーバ３０１に与えることにより検索結果を比較することができ、検索結果がバイナリデータで出力された場合には、cmp（バイナリ比較）を監視サーバ３０１に与えることにより検索結果を比較することができる。尚、検索結果を比較する前に、比較し易いようにデータのソートを行っておく等、適宜、必要な前処理を行ってもよい。
【００７５】
続いて、ＤＢ比較部３０１３は、比較した結果をファイル１００２に記録し、そのファイル１００２を用いてテーブル間に相違部分が存在するか否かを分析する（ステップＳ７０３）。分析の結果、ＤＢサーバ１（２０１ａ）による検索結果とＤＢサーバ２（２０１ｂ）による検索結果との間で相違する部分が存在した場合には（ステップＳ７０３／ＹＥＳ）、警告部３０１５は、ＡＰサーバ１０２に対して警告情報を送信するとともに、通信遮断部３０１４は、通信を遮断するための制御情報をＤＢサーバ１（２０１ａ）及びＤＢサーバ２（２０１ｂ）に対して送信し、ＤＢサーバ１（２０１ａ）及びＤＢサーバ２（２０１ｂ）と外部との通信を遮断させる（ステップＳ７０４）。
【００７６】
次に、図８を参照しながら、ストレージ比較部３０１２によるデータセンタ２００ａ、２００ｂの監視方法について説明する。図８は、ストレージ比較部３０１２によるデータセンタ２００ａ、２００ｂの監視処理と、ストレージ比較部３０１２による監視結果に応じて実行される警告処理及び通信遮断処理を示すフローチャートである。
【００７７】
上述したように、ストレージ比較部３０１２は、ストレージ装置１（２０２ａ）、ストレージ装置２（２０２ｂ）がファイルシステムによってデータを管理しているか、ストレージ装置１（２０２ａ）、ストレージ装置２（２０２ｂ）がローデバイスとしてデータを管理しているかによってデータの比較方法が異なる。
【００７８】
ストレージ装置１（２０２ａ）、ストレージ装置２（２０２ｂ）がファイルシステムによってデータを管理している場合、ストレージ比較部３０１２は、ストレージ装置１（２０２ａ）、ストレージ装置２（２０２ｂ）から格納されているデータを取得し（ステップＳ８０１）、ファイル単位でデータの比較を行う（ステップＳ８０２）。例えば、ＵＮＩＸ(登録商標)コマンドであれば、テキストデータである場合のデータ比較を実行させるためのdiffコマンド、又は、バイナリデータである場合のデータ比較を実行させるためのcmpコマンドを用いればよい。
【００７９】
一方、ストレージ装置１（２０２ａ）、ストレージ装置２（２０２ｂ）がローデバイスとしてデータを管理している場合、例えばＵＮＩＸ(登録商標)コマンドであればddコマンドが監視サーバ３０１に与えられることによって、ストレージ比較部３０１２は、ストレージ装置１（２０２ａ）、ストレージ装置２（２０２ｂ）内のデータを取得し（ステップＳ８０１）、ストレージ装置１（２０２ａ）内のデータを記録したファイルと、ストレージ装置２（２０２ｂ）内のデータを記録したファイルとを夫々生成する（ステップＳ８０５）。
【００８０】
続いて、ストレージ比較部３０１２は、ストレージ装置１（２０２ａ）のデータを記録したファイルとストレージ装置２（２０２ｂ）のデータを記録したファイルとを比較する（ステップＳ８０２）。この比較処理は、例えば、ＵＮＩＸ(登録商標)コマンドであれば、cmpコマンドを用いることによって行われる。
【００８１】
比較の結果、ストレージ装置１（２０２ａ）のデータから生成されたファイルとストレージ装置２（２０２ｂ）のデータから生成されたファイルとの間に相違する部分が存在する場合（ステップＳ８０３／ＹＥＳ）、警告部３０１５は、ＡＰサーバ１０２に対して警告情報を送信するとともに、通信遮断部３０１４は、通信を遮断するための制御情報をＤＢサーバ１（２０１ａ）及びＤＢサーバ２（２０１ｂ）に対して送信し、ＤＢサーバ１（２０１ａ）及びＤＢサーバ２（２０１ｂ）と外部との通信を遮断させる（ステップＳ８０４）。
【００８２】
次に、図９及び図１１を参照しながら、Ｌｏｇ比較部３０１３によるデータセンタ２００ａ、２００ｂの監視方法について説明する。図９は、Ｌｏｇ比較部３０１３によるデータセンタ２００ａ、２００ｂの監視処理と、Ｌｏｇ比較部３０１３による監視結果に応じて実行される警告処理及び通信遮断処理を示すフローチャートである。
【００８３】
ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）は、イベント発生に応じて、当該イベントに対応するログデータを出力する。Ｌｏｇ比較部３０１３は、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）から出力されるログデータを取得し（ステップＳ９０１）、ＤＢサーバ１（２０１ａ）からのログデータとＤＢサーバ２（２０１ｂ）からのログデータとを比較する（ステップＳ９０２）。
【００８４】
ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）に対して受付サーバ１０３から同じクエリーが同時に送信されるので、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）とから出力されるログデータは同時点において同じはずである。しかし、ＤＢサーバ１（２０１ａ）とＤＢサーバ２（２０１ｂ）とが同時点において異なる動作を行い、それに伴いＤＢサーバ１からのログデータとＤＢサーバ２からのログデータとに差異が現れた場合には、ＤＢサーバ１（２０１ａ）及びＤＢサーバ２（２０１ｂ）の少なくとも何れか一方に対して不正なアクセスがあった可能性が考えられる。
【００８５】
例えば、ＤＢサーバ２（２０１ｂ）に対してのみ不正なアクセスがなされ、正規のユーザに成りすましてストレージ装置２内のデータが盗み見された場合、ストレージ装置２内のデータの盗み見されたことを示すログデータがＤＢサーバ２（２０１ｂ）から出力され、それがＤＢサーバ１（２０１ａ）から出力されるログデータとの差異となって現れる。
【００８６】
図１１は、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）から出力されるログデータの履歴を示す図である。図１１（ａ）はＤＢサーバ１（２０１ａ）からのログデータの履歴を示し、図１１（ｂ）はＤＢサーバ２（２０１ｂ）からのログデータの履歴を示している。
【００８７】
図１１（ｂ）内の１１０１aは、ストレージ装置２（２０２ｂ）内のデータの盗み見が行われたときに出力されたログデータを示している。このログデータは、2006/3/1 11:00:12時点にＤＢサーバ２（２０１ｂ）から出力されたものである。これに対して、図１１（ａ）に示すように、ＤＢサーバ１（２０１ａ）からは、2006/3/1 11:00:12時点において、図１１（ｂ）の１１０１aに示すようなログデータは出力されていない。
【００８８】
図１１（ｂ）内の１１０２ａは、ストレージ装置２（２０２ｂ）内のデータを正規のユーザに成りすまして改竄が行われたときに出力されたログデータを示している。このログデータは、2006/3/1 11:00:22時点にＤＢサーバ２（２０１ｂ）から出力されたものである。これに対して、図１１（ａ）に示すように、ＤＢサーバ１（２０１ａ）からは、2006/3/1 11:00:22時点において、図１１（ｂ）の１１０２ａに示すようなログデータは出力されていない。
【００８９】
例えば、Ｌｏｇ比較部３０１３は、図１１（ａ）に示すログデータと図１１（ｂ）に示すログデータとを比較し、図１１の１１０１ａや、図１１の１１０２ａで示すようなログデータの違いを検出する（ステップＳ９０３）。ログデータの比較は、diffコマンドまたはcmpコマンド等を使うことによって行なうことができる。このように、ＤＢサーバ１（２０１ａ）から出力されたログデータとＤＢサーバ２（２０１ｂ）から出力されたログデータとの間に相違が検出された場合（ステップＳ９０３／ＹＥＳ）、警告部３０１５は、ユーザ側の社内ＰＣ１０１に対して警告情報を送信し、ユーザに対して警告を促すとともに、通信遮断部３１０４は，通信を遮断するための制御情報をＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）に対して送信し、ＤＢサーバ１（２０１ａ）、ＤＢサーバ２（２０１ｂ）と外部との通信を遮断させる（ステップＳ９０４）。
【００９０】
このように、本実施形態では、ストレージ装置１（２０２ａ）内のデータとストレージ装置２（２０２ｂ）内のデータとを比較したり、ＤＢサーバ１（２０１ａ）から出力されるログデータとＤＢサーバ２（２０１ｂ）から出力されるログデータとを比較し、相違部分が検出された場合、ＤＢサーバ１（２０１ａ）及びＤＢサーバ２（２０１ｂ）の少なくとも何れか一方に対して不正なアクセスがあった可能性が考えられるので、警告を行ったりＤＢサーバの外部との通信を遮断してセキュリティを確保している。セキュリティの確保の方法としては、これ以外にもＤＢサーバそのものを停止させるという方法を取っても良い。
【００９１】
なお、ログデータ内に含まれる時刻情報については、受付サーバ１０３がＤＢサーバ２０１ａとＤＢサーバ２０１ｂに同時にアクセスしたとしても、通信時間の違いやＤＢサーバ２０１ａ内の時計が示す時刻とＤＢサーバ２０１ｂ内の時計が示す時刻との違いによって若干の時刻の差異が発生する。このため、時刻については適宜許容範囲を設定しておき、その範囲内であれば同一時刻として扱う等、時刻の差異を吸収する処理を付加することが好ましい。また、警告は、社内ＰＣ１０１以外にも、監視センタ３００内部でも行っても良い。
【図面の簡単な説明】
【００９２】
【図１】本発明の実施形態に係るデータベース管理システムの概略構成を示す図である。
【図２−１】ＡＰサーバ、受付サーバ又は監視サーバのハードウェア構成を示すブロック図である。
【図２−２】ＤＢサーバのハードウェア構成を示すブロック図である。
【図３−１】「確定応答モード」でのデータベース管理システムのデータ更新時の動作を示すシーケンスチャートである。
【図３−２】「確定応答モード」でのデータベース管理システムのデータ更新時の動作を示すシーケンスチャートである。
【図３−３】「確定応答モード」でのデータベース管理システムのデータ更新時の動作を示すシーケンスチャートである。
【図３−４】「確定応答モード」でのデータベース管理システムのデータ更新時の動作を示すシーケンスチャートである。
【図４−１】「最速確認応答モード」でのデータ更新処理時の動作を示すシーケンスチャートである。
【図４−２】「最速確認応答モード」でのデータ更新処理時の動作を示すシーケンスチャートである。
【図４−３】「最速確認応答モード」でのデータ更新処理時の動作を示すシーケンスチャートである。
【図４−４】「最速確認応答モード」でのデータ更新処理時の動作を示すシーケンスチャートである。
【図４−５】「最速確認応答モード」でのデータ更新処理時の動作を示すシーケンスチャートである。
【図５−１】「確定応答モード」でのデータ参照処理時の動作を示すシーケンスチャートである。
【図５−２】「確定応答モード」でのデータ参照処理時の動作を示すシーケンスチャートである。
【図５−３】「確定応答モード」でのデータ参照処理時の動作を示すシーケンスチャートである。
【図５−４】「確定応答モード」でのデータ参照処理時の動作を示すシーケンスチャートである。
【図６−１】「最速確認応答モード」でのデータ参照処理時の動作を示すシーケンスチャートである。
【図６−２】「最速確認応答モード」でのデータ参照処理時の動作を示すシーケンスチャートである。
【図６−３】「最速確認応答モード」でのデータ参照処理時の動作を示すシーケンスチャートである。
【図６−４】「最速確認応答モード」でのデータ参照処理時の動作を示すシーケンスチャートである。
【図６−５】「最速確認応答モード」でのデータ参照処理時の動作を示すシーケンスチャートである。
【図７】ＤＢ比較部によるデータセンタの監視処理と、ＤＢ比較部による監視結果に応じて実行される警告処理及び通信遮断処理を示すフローチャートである。
【図８】ストレージ比較部によるデータセンタの監視処理と、ストレージ比較部による監視結果に応じて実行される警告処理及び通信遮断処理を示すフローチャートである。
【図９】Ｌｏｇ比較部によるデータセンタの監視処理と、Ｌｏｇ比較部による監視結果に応じて実行される警告処理及び通信遮断処理を示すフローチャートである。
【図１０】ＤＢ比較部によるテーブルの比較処理を模式的に示す図である。
【図１１】ＤＢサーバから出力されるログデータの履歴を示す図である。
【符号の説明】
【００９３】
１００：ユーザ側コンピュータシステム
１０１：社内ＰＣ
１０２：ＡＰサーバ
１０３：受付サーバ
２００ａ、２００ｂ：データセンタ
２０１：ＤＢサーバ
２０２：ストレージ装置
３００：監視センタ
３０１：監視サーバ
３０１１：ＤＢ比較部
３０１２：ストレージ比較部
３０１３：Ｌｏｇ比較部
３０１４：通信遮断部
３０１５：警告部
４００：社外ＰＣ
【図１】
2007317028.tif 000003
【図２−１】
2007317028.tif 000004
【図２−２】
2007317028.tif 000005
【図３−１】
2007317028.tif 000006
【図３−２】
2007317028.tif 000007
【図３−３】
2007317028.tif 000008
【図３−４】
2007317028.tif 000009
【図４−１】
2007317028.tif 000010
【図４−２】
2007317028.tif 000011
【図４−３】
2007317028.tif 000012
【図４−４】
2007317028.tif 000013
【図４−５】
2007317028.tif 000014
【図５−１】
2007317028.tif 000015
【図５−２】
2007317028.tif 000016
【図５−３】
2007317028.tif 000017
【図５−４】
2007317028.tif 000018
【図６−１】
2007317028.tif 000019
【図６−２】
2007317028.tif 000020
【図６−３】
2007317028.tif 000021
【図６−４】
2007317028.tif 000022
【図６−５】
2007317028.tif 000023
【図７】
2007317028.tif 000024
【図８】
2007317028.tif 000025
【図９】
2007317028.tif 000026
【図１０】
2007317028.tif 000027
【図１１】
2007317028.tif 000028