説明

データベース処理装置、データベース処理方法、およびプログラム

【課題】不正なデータベース操作を防ぐとともに、その設定の手間を軽減する。
【解決手段】複数のアプリケーションプログラム111が格納されるアプリケーションサーバ120と、複数のデータベースを備えるデータベースサーバ150と、に通信可能に接続されるデータベース処理装置10であって、アプリケーションプログラム111から、データベースに対する操作部分を示すデータベース操作指示を抽出し、アプリケーションプログラム111を特定する識別情報と対応付けて記憶する。そしてアプリケーションプログラム111が実行された場合に、このアプリケーションプログラム111に対応するデータベース操作指示の内容を特定し、実行されるデータベース操作指示の内容が、特定したデータベース操作指示の内容と合致していると判定された場合に、このデータベース操作指示をデータベースサーバ150に出力する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データベース処理装置、データベース処理方法、およびプログラムに関する。
【背景技術】
【0002】
リレーショナルデータベースシステム(RDBS)において、データベース内のデータ操作を行う場合に、データの格納、削除、参照等の操作の内容や手順が記述されたアプリケーションプログラムが用いられる。
例えば、ウェブシステムでは、クライアントと、アプリケーションプログラムが格納されたサーバ(アプリケーションサーバ)がインターネット回線で相互に接続され、さらに、アプリケーションサーバとデータベースサーバが専用回線で相互に接続される。そして、データの登録や参照等を要求するデータベース操作要求が、クライアントからアプリケーションサーバに送信され、これによりデータベースサーバは、このデータベース操作要求の内容に従った処理を行う。
【0003】
しかし、このようなデータベースを利用したシステムにおいて、アプリケーションのセキュリティ上の不備が意図的に利用され、アプリケーションでは想定されないSQL文が実行されることにより、データベースが不正に操作されるSQLインジェクション等の脆弱性攻撃がなされるおそれがある。そのため、この脆弱性攻撃を防止するために様々な工夫が施されたシステムがある。
【0004】
例えば、特許文献1には、脆弱性攻撃を防止するため、外部からデータベースサーバ内のSQL文のロジックを呼び出すことにより、SQL文を生成してデータベース操作を行う通信システムが開示されている。
また、特許文献2には、脆弱性攻撃を防止するため、利用者の実行権限に基づいて実行可能なデータベースの検索文を予め雛形として登録しておき、この雛形を用いてデータベースの検索文を生成することによりデータベースの検索を行うデータベース検索装置が開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2002−41465号公報
【特許文献2】特開2009−157678号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1に記載のシステムでは、第三者により生成された不正なアプリケーションプログラムによりロジックそのものが呼び出され、これに従ってデータベース内のデータが読み出される可能性がある。一般的には、データベース内でデータベースユーザのユーザID、パスワードが管理され、これらを用いてアプリケーションの認証が行われるが、このユーザID、パスワードが漏洩した場合、不正なデータベース操作が行われてしまう。
また、特許文献2に記載のデータベース検索装置のように、実行可能なSQL文を所定の権限に基づいて作成し、実行可能なSQL文を制限する場合、アプリケーションプログラムの作成とは別に、実行可能なSQL文の作成が必要となり手間がかかる。
【0007】
本発明は、上述のような事情に鑑みてなされたものであり、不正なデータベース操作を防ぐとともに、その設定の手間を軽減する、データベース処理装置、データベース処理方法、およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【0008】
上記目的を達成するため、本発明の第1の観点に係るデータベース処理装置は、
複数のアプリケーションプログラムが格納されるアプリケーション記憶装置と、複数のデータベースを備えるデータベースサーバと、に通信可能に接続され、前記アプリケーションプログラムに従って実行される前記データベースに対する操作を、前記データベースサーバに指示するデータベース処理装置であって、
前記アプリケーション記憶装置から前記アプリケーションプログラムを取得するアプリケーション取得手段と、
前記アプリケーション取得手段で取得したアプリケーションプログラムから、前記データベースに対する操作部分を示すデータベース操作指示を抽出する操作指示抽出手段と、
前記アプリケーション取得手段で取得したアプリケーションプログラムに含まれる、前記アプリケーションプログラムを特定する識別情報と、前記操作指示抽出手段で抽出した前記データベース操作指示を、対応付けて記憶する操作指示記憶手段と、
前記複数のアプリケーションプログラムのうちのいずれかが実行された場合に、前記アプリケーションプログラムに従って実行されるデータベース操作指示を、該アプリケーションプログラムを特定する識別情報とともに受信する受信手段と、
前記操作指示記憶手段で記憶したデータベース操作指示から、前記受信手段で受信した識別情報に対応するデータベース操作指示の内容を特定する操作指示特定手段と、
前記受信手段で受信したデータベース操作指示の内容が、前記操作指示特定手段で特定したデータベース操作指示の内容と合致するか否かを判定する操作指示判定手段と、
前記操作指示判定手段により、データベース操作指示の内容が合致していると判定された場合に、前記アプリケーションプログラムに従って実行されるデータベース操作指示を前記データベースサーバに出力する出力手段と、
を備えることを特徴とする。
【0009】
また、前記データベース処理装置は、相互に通信可能に接続される第1の情報処理装置と第2の情報処理装置とを備え、
前記第1の情報処理装置は、前記アプリケーション取得手段と、前記操作指示抽出手段を備え、
前記操作指示抽出手段は、
前記アプリケーション取得手段で取得したアプリケーションプログラムに含まれる前記識別情報と、
抽出した前記データベース操作指示を前記第2の情報処理装置に送信する送信手段と、
をさらに備え、
前記第2の情報処理装置は、前記操作指示記憶手段と、前記操作指示特定手段と、前記操作指示判定手段と、前記出力手段と、を備え、
前記操作指示記憶手段は、
前記第1の情報処理装置から受信する前記識別情報と、前記データベース操作指示を対応付けて記憶する、こととしてもよい。
【0010】
また、前記出力手段は、前記操作指示判定手段により、データベース操作指示の内容が合致しないと判定された場合、前記アプリケーションプログラムに従って実行されるデータベース操作指示が不正な操作指示である旨を、ネットワークを介して通信可能に接続される、前記アプリケーションプログラムの実行を指示するクライアント端末に出力するようにしてもよい。
【0011】
また、前記出力手段は、前記操作指示判定手段により、データベース操作指示の内容が合致しないと判定された場合、前記アプリケーションプログラムに従って実行されるデータベース操作指示が不正な操作指示である旨を、ネットワークを介して通信可能に接続される、前記データベースの管理者が所持する移動体通信端末にさらに出力するようにしてもよい。
【0012】
上記目的を達成するため、本発明の第2の観点に係るデータベース処理方法は、
複数のアプリケーションプログラムが格納されるアプリケーション記憶装置と、複数のデータベースを備えるデータベースサーバと、に通信可能に接続され、前記アプリケーションプログラムに従って実行される前記データベースに対する操作を、前記データベースサーバに指示するデータベース処理装置によるデータベース処理方法であって、
前記アプリケーション記憶装置から前記アプリケーションプロラムを取得するアプリケーション取得ステップと、
前記アプリケーション取得ステップで取得したアプリケーションプログラムから、前記データベースに対する操作部分を示すデータベース操作指示を抽出する操作指示抽出ステップと、
前記アプリケーション取得ステップで取得したアプリケーションプログラムに含まれる、前記アプリケーションプログラムを特定する識別情報と、前記操作指示抽出ステップで抽出した前記データベース操作指示を、対応付けて記憶する操作指示記憶ステップと、
前記複数のアプリケーションプログラムのうちのいずれかが実行された場合に、前記アプリケーションプログラムに従って実行されるデータベース操作指示を、該アプリケーションプログラムを特定する識別情報とともに受信する受信ステップと、
前記操作指示記憶ステップで記憶したデータベース操作指示から、前記受信ステップで受信した識別情報に対応するデータベース操作指示の内容を特定する操作指示特定ステップと、
前記受信ステップで受信したデータベース操作指示の内容が、前記操作指示特定ステップで特定したデータベース操作指示の内容と合致するか否かを判定する操作指示判定ステップと、
前記操作指示判定ステップにより、データベース操作指示の内容が合致していると判定された場合に、前記アプリケーションプログラムに従って実行されるデータベース操作指示を前記データベースサーバに出力する出力ステップと、
を備えることを特徴とする。
【0013】
上記目的を達成するため、本発明の第3の観点に係るプログラムは、
複数のアプリケーションプログラムが格納されるアプリケーション記憶装置と、複数のデータベースを備えるデータベースサーバと、に通信可能に接続されるコンピュータを、
前記アプリケーション記憶装置から前記アプリケーションプロラムを取得するアプリケーション取得手段、
前記アプリケーション取得手段で取得したアプリケーションプログラムから、前記データベースに対する操作部分を示すデータベース操作指示を抽出する操作指示抽出手段、
前記アプリケーション取得手段で取得したアプリケーションプログラムに含まれる、前記アプリケーションプログラムを特定する識別情報と、前記操作指示抽出手段で抽出した前記データベース操作指示を、対応付けて記憶する操作指示記憶手段、
前記複数のアプリケーションプログラムのうちのいずれかが実行された場合に、前記アプリケーションプログラムに従って実行されるデータベース操作指示を、該アプリケーションプログラムを特定する識別情報とともに受信する受信手段、
前記操作指示記憶手段で記憶したデータベース操作指示から、前記受信手段で受信した識別情報に対応するデータベース操作指示の内容を特定する操作指示特定手段、
前記受信手段で受信したデータベース操作指示の内容が、前記操作指示特定手段で特定したデータベース操作指示の内容と合致するか否かを判定する操作指示判定手段、
前記操作指示判定手段により、データベース操作指示の内容が合致していると判定された場合に、前記アプリケーションプログラムに従って実行されるデータベース操作指示を前記データベースサーバに出力する出力手段、
として機能させることを特徴とする。
【発明の効果】
【0014】
本発明によれば、不正なデータベース操作を防ぐとともに、その設定の手間を軽減することができる。
【図面の簡単な説明】
【0015】
【図1】本発明の実施の形態に係るデータベース処理装置を備えたデータベース処理システムの構成を示すブロック図である。
【図2】図1のデータベース処理システムにおけるSQLパターン抽出サーバが備えるAP管理者管理DBを説明する図である。
【図3】図1のデータベース処理システムにおけるパターン設定クライアントにより生成されるアプリケーションプログラムのソースコードの一例を示す図である。
【図4】図1のデータベース処理システムにおけるSQLパターン検証サーバが備えるセッション管理DBを説明する図である。
【図5】図1のデータベース処理システムにおけるSQLパターン検証サーバが備えるSQLパターン管理DBを説明する図である。
【図6】図1のデータベース処理システムにおけるデータベース処理の構成を示すブロック図である。
【図7】図1のデータベース処理システムにおけるデータベースサーバが備えるパスワード管理DBを説明する図である。
【図8】図1のデータベース処理システムにおけるパターン設定処理の動作を説明する図である。
【図9】図1のデータベース処理システムにおけるパターン検証処理の動作を説明する図である。
【図10】図1のデータベース処理システムによるパターン検証処理において、不正なデータベース操作を検知する動作を説明する図である。
【図11】正当なデータベース操作と、不正なデータベース操作の一例を示す図である。
【図12】図1のデータベース処理システムの変形例を示す図である。
【発明を実施するための形態】
【0016】
本実施の形態では、本発明に係るデータベース処理装置10を、データベース処理システム100に適用した例について、図面を参照して説明する。データベース処理装置10は、アプリケーションプログラム11に記述されているデータベース操作を事前に登録するパターン設定機能と、パターン設定機能で登録されたデータベース操作以外の操作を不正なデータベース操作とみなし、この操作を防止するパターン検証機能を備えている。データベース処理システム100は、インターネットを経由して各種サービスを利用者に提供するクラウドコンピューティングである。
【0017】
データベース処理システム100は、図1に示すように、パターン設定クライアント110と、アプリケーションサーバ120と、データベース処理装置10と、データベースサーバ150と、APクライアント160と、ネットワーク170と、を備えている。
【0018】
パターン設定クライアント110は、パーソナルコンピュータや携帯電話、スマートフォン等の端末から構成され、ネットワーク170を介してアプリケーションサーバ120、データベース処理装置10のSQLパターン抽出サーバ130、および、データベースサーバ150と、相互に通信可能に接続されている。
【0019】
パターン設定クライアント110は、ユーザの操作によりアプリケーションプログラム111を生成する。
【0020】
アプリケーションプログラム111は、ソースコードと、バイナリコードと、設定ファイルから構成される。
【0021】
ソースコードは、アプリケーションプログラム111の動作を記述したもので、例えば、FORTRAN、C言語、JAVA(登録商標)、COBOL、PASCAL等のプログラム言語で記述される。
【0022】
バイナリコードは、ソースコードをアプリケーションサーバ120上で動作可能な形式に変更したものである。
【0023】
設定ファイルには、ユーザを特定するDBユーザIDとDBユーザパスワード等の、データベースサーバ150内のテーブルの操作に必要となる情報が記述される。
【0024】
パターン設定クライアント110は、データベースサーバ150のテーブルの生成や設定を要求するテーブル設定要求を、ネットワーク170を介してデータベースサーバ150に送信する。さらに、パターン設定クライアント110は、設定ファイル内のDBユーザIDとDBユーザパスワードを、ネットワーク170を介してデータベースサーバ150に送信する。
【0025】
また、パターン設定クライアント110は、生成されたアプリケーションプログラム111のソースコードと、設定ファイル内のDBユーザIDとDBユーザパスワードを、アプリケーション管理者を特定する識別情報とともに、ネットワーク170を介して、後述するデータベース処理装置10のSQLパターン抽出サーバ130に送信する。
【0026】
本実施形態では、アプリケーション管理者を特定する識別情報として、パターン設定クライアント110に入力されるPID(Personal ID)およびパスワードが送信される。
【0027】
さらに、パターン設定クライアント110は、後述するデータベース処理装置10のSQLパターン検証サーバ140にSQLパターンが登録されることに応じて、生成されたアプリケーションプログラム111のバイナリコードと設定ファイルを、ネットワーク170を介してアプリケーションサーバ120に送信し、生成したアプリケーションプログラム111をアプリケーションサーバ120に登録する。
【0028】
アプリケーションサーバ120は、ネットワーク170を介してAPクライアント160とパターン設定クライアント150に接続されている。また、アプリケーションサーバ120は、データベース処理装置10のSQL検証サーバ140と接続され、SQL検証サーバ140を介してデータベースサーバ150に接続されている。
【0029】
アプリケーションサーバ120は、パターン設定時において、パターン設定クライアント110により生成された複数のアプリケーションプログラム111を受信し、このアプリケーションプログラム111を内部の記憶部112に格納する。
【0030】
アプリケーションサーバ120は、パターン検証時において、アプリケーションプログラム111の実行を要求するAP実行要求を、APクライアント160から受信することに応じて、格納されているアプリケーションプログラム111を実行する。
【0031】
アプリケーションサーバ120は、アプリケーションプログラム111の処理に従って、データベースサーバ150への接続を要求するDB接続要求を、データベース処理装置10SQLパターン検証サーバ140を介してデータベースサーバ150へ送信する。このDB接続要求には、設定ファイル内のDBユーザID及びDBユーザパスワードが含まれる。
【0032】
アプリケーションサーバ120は、データベースサーバ150への接続が確立されると、データベースサーバ150で生成されたセッションIDを、SQL検証サーバ140を介して受信する。セッションIDとは、データベースサーバ150のアクセスに係るセッションを特定する特定情報を示している。
【0033】
アプリケーションサーバ120は、実行されるアプリケーションプログラム111の処理に従ってSQL文を、受信したセッションIDとともにネットワーク170を介してデータベース処理装置10のSQLパターン検証サーバ140へ送信する。
【0034】
アプリケーションサーバ120は、データベース処理装置10のSQLパターン検証サーバ140からデータベース操作の実行結果を受信すると、その実行結果をAPクライアント160へ送信する。
【0035】
データベース処理装置10は、SQLパターン抽出サーバ130とSQLパターン検証サーバ140を備えている。
【0036】
SQLパターン抽出サーバ130は、パターン設定機能を実現するサーバである。SQLパターン抽出サーバ130は、パターン設定クライアント110からアプリケーションプログラム111を受信する。そして受信したアプリケーションプログラム111のソースコードからSQL文を抽出してSQLパターンを生成し、生成したSQLパターンをSQLパターン検証サーバ140へ登録する。
【0037】
SQLパターン抽出サーバ130は、記憶部131と、制御部136を備えている。
【0038】
記憶部131は、AP管理者管理DB132と、SQL抽出プログラム134を備えている。
【0039】
AP管理者管理DB132は、予めSQLパターン抽出サーバ130に格納されている。AP管理者管理DB132は、図2に示すように、アプリケーション管理者を一意に特定するPIDとパスワードから構成されている。
【0040】
SQL抽出プログラム134は、受信したアプリケーションプログラム111のソースコードからSQL文を抽出してSQLパターンを生成し、このSQLパターンの登録をSQLパターン検証サーバ140へ指示する一連の処理が記述されたプログラムである。
【0041】
制御部136は、CPU(Central Processing Unit)等から構成される。制御部136は、SQL抽出プログラム134に従って動作し、パターン設定処理に必要な機能を提供する。制御部136は、SQL抽出プログラム134により提供される主要な機能部として、図6に示すように、ユーザ判定部181、操作指示抽出部182を備えている。
【0042】
SQLパターン抽出サーバ130は、パターン設定クライアント110からアプリケーションプログラム111のソースコードと、設定ファイル内のDBユーザIDとDBユーザパスワードを、アプリケーション管理者を特定する識別情報とともに受信することに応じてSQL抽出プログラム134を実行し、パターン設定機能を実現する。具体的には、以下に示す処理を行う。
【0043】
SQLパターン抽出サーバ130は、ユーザ判定部181の機能により、アプリケーション管理者の認証を行う。具体的には、ユーザ判定部181は、パターン設定クライアント110から受信したPIDとパスワードがAP管理者管理DB132に含まれているか否かにより、正当なアプリケーション管理者からのアクセスであるか否かを判定する。
【0044】
ユーザ判定部181の機能により、正当なアプリケーション管理者からのアクセスであると判定した場合、SQLパターン抽出サーバ130は、操作指示抽出部182の機能により、パターン設定クライアント110から受信したアプリケーションプログラム111のソースコードからSQL文を抽出する。抽出は、例えば、図3に示すように、ソースコード中にSQL文の先頭と最後をそれぞれ識別する識別コードが含まれており、このSQL文の先頭を示す識別コードと最後を示す識別コードの間を抽出することにより行う。
【0045】
SQLパターン抽出サーバ130は、操作指示抽出部182の機能により、抽出したSQL文を、パターン設定クライアント110から受信した設定ファイル内のDBユーザIDと対応づけてSQLパターンを生成する。SQLパターンは、このDBユーザIDに対応付けられたSQL文を示す。SQLパターン抽出サーバ130は、このSQLパターンをSQLパターン検証サーバ140のSQLパターン管理DB144に登録する。
【0046】
SQLパターン検証サーバ140は、アプリケーションサーバからSQL文を受信し、そのSQL文の内容がパターン設定時に登録されたSQLパターンの内容と合致するか否かを判定し、合致しないSQL文による操作を防止するパターン検証機能を実現するサーバである。
【0047】
SQLパターン検証サーバ140は、記憶部141と制御部148から構成される。
【0048】
記憶部141は、フラッシュメモリ、ハードディスク、DVD−RAM(Digital Versatile Disc Random−Access Memory)、DVD−RW(Digital Versatile Disc ReWritable)等の不揮発性メモリから構成され、セッション管理DB142とSQLパターン管理DB144とSQLパターン検証プログラム146を備えている。
【0049】
セッション管理DB142は、図4に示すように、データベースユーザを一意に特定するDBユーザIDと、データベースへのセッションを一意に特定する、DBユーザIDに対応するセッションIDとから構成される。
【0050】
セッションIDは、データベースサーバ150への接続が確立する度にデータベースサーバ150により生成される。
【0051】
SQLパターン管理DB144は、図5に示すように、DBユーザIDと、これに対応するSQLパターンから構成される。
【0052】
SQLパターン検証プログラム146は、アプリケーションサーバからSQL文を受信し、そのSQL文の内容がパターン設定時に登録されたSQLパターンの内容と合致するか否かを判定し、合致した場合に、受信したSQL文の内容のデータベース操作をデータベースサーバ150に指示する一連の処理が記述されたプログラムである。
【0053】
制御部148は、CPU(Central Processing Unit)等から構成される。制御部148は、SQLパターン検証プログラム146に従って動作し、パターン検証処理に必要な機能を提供する。制御部148は、SQL抽出プログラム148により提供される主要な機能部として、図6に示すように、操作指示記憶部191と、接続要求受信部192と、セッション記憶部193と、操作指示特定部194と、操作指示判定部195と、出力部196を備えている。
【0054】
操作指示記憶部191は、パターン設定時において、SQLパターン抽出サーバ130から受信したSQLパターンをSQLパターン管理DB144に登録する。
【0055】
接続要求受信部192は、パターン検証時において、アプリケーションプログラム111に従ってアプリケーションサーバ120から送信されるDB接続要求を、データベースサーバ150へ転送する。
【0056】
セッション記憶部193は、データベースサーバ150への接続が確立されることにより生成されるセッションIDを受信して、このセッションIDを、DBユーザIDに対応付けてセッション管理DB142に格納する。
【0057】
操作指示特定部194は、アプリケーションサーバ120から受信したセッションIDに基づいて、受信したセッションIDに対応するDBユーザIDを、セッション管理DB142から特定する。そして操作指示特定部194は、セッション管理DB142から特定したDBユーザIDに対応するSQLパターンを、SQLパターン管理DB144から特定する。
【0058】
操作指示判定部195は、アプリケーションプログラム111に従ってアプリケーションサーバ120から送信されたSQL文の内容が、操作指示特定部148により特定されたSQLパターンの内容と同じものであるか否かを判定する。
【0059】
出力部196は、アプリケーションサーバ120から送信されたSQL文の内容が、特定したSQLパターンの内容と同じものであると判定した場合、このSQL文をデータベースサーバ150へ送信し、データ格納、参照、削除等の要求に応じたデータベース操作を実行させる。
【0060】
一方、アプリケーションサーバ120から送信されたSQL文の内容が、特定したSQLパターンの内容とは異なるものであると判定した場合、出力部196は、不正なデータベース操作であると判定し、データベース操作が実行されなかったことを示す実行結果を、APクライアント160へ送信する。
【0061】
データベースサーバ150は、データベースとして蓄えた情報を管理するためのデータベース管理システム152と、パスワード管理DB154と、情報管理DB156から構成される。
【0062】
データベース管理システム152は、基本的な機能として、入力されたデータの内容やデータ同士の関係の定義、データの挿入や削除、指定された条件に合うデータの検索など、データベースの構築や運用に必要な機能を備えている。さらに、データベース管理システム152は、データを定期的にバックアップや、複数のアプリケーションで利用できるよう形式を変換する機能も備えている。
【0063】
パスワード管理DB154は、図7に示すように、DBユーザIDとパスワードから構成されている。
【0064】
情報管理DB156は、各アプリケーションプログラム111の実行により操作される複数のテーブルが格納されている。
【0065】
パターン設定時において、データベースサーバ150は、パターン設定クライアント110から受信したテーブル設定要求に基づいて、アプリケーションプログラム111で用いられる情報管理DB156内のテーブルの生成や設定を行う。
【0066】
また、データベースサーバ150は、パターン設定クライアント110から受信した設定ファイルのDBユーザIDとDBユーザパスワードを対応付けて、パスワード管理DB154に登録する。
【0067】
パターン検証時において、データベースサーバ150は、SQLパターン検証サーバ140から受信したDBユーザIDおよびDBユーザパスワードが、パスワード管理DB154に格納されているものと合致するか否かにより正当なアプリケーションプログラム111による接続要求であるか否かを認証するアプリケーション認証を行う。
【0068】
アプリケーション認証に成功した場合において、データベースサーバ150は、セッションIDを生成してSQLパターン検証サーバ140へ送信する。
【0069】
また、データベースサーバ150は、SQLパターン検証サーバ140から受信したSQL文に従い、情報管理DB156内の所定のテーブルに対して、データ格納、参照、削除等のデータベース操作を実行する。
【0070】
APクライアント160は、パーソナルコンピュータや携帯電話、スマートフォン等の端末から構成され、ネットワーク170を介してアプリケーションサーバ120と接続されている。
APクライアント160は、ユーザによる操作に応じてアプリケーションプログラム111の実行を要求するAP実行要求をアプリケーションサーバ120へ送信する。これによりパターン検証機能が実行される。
【0071】
ネットワーク170は、パターン設定クライアント110及びAPクライアント160と、アプリケーションサーバ120を通信可能に接続するネットワークである。
ネットワーク170は、例えば、インターネットやイントラネット、LAN(Local Area Network)やWAN(Wide Area Network)などのデータを送受信するネットワークである。
【0072】
以上が、データベース処理システム100の構成である。
【0073】
次に、データベース処理システム100の動作について、図面を用いて説明する。まず、データベース処理システム100におけるパターン設定処理について、図8を用いて説明する。
【0074】
パターン設定処理は、パターン設定クライアント110におけるユーザの操作により、アプリケーションプログラム111の設定ファイルに含まれるDBユーザIDとDBユーザパスワードを、SQLパターン抽出サーバ130が受信することにより開始される。
【0075】
前提として、アプリケーションプログラム111が生成されると、パターン設定クライアント110は、ユーザの操作に応じて、このアプリケーションプログラム111で利用されるテーブルを生成すべく、テーブルの生成や設定を行うことを要求するテーブル設定要求を、データベースサーバ150に送信する。さらに、パターン設定クライアント110は、生成されたアプリケーションプログラム111の設定ファイルに含まれるDBユーザIDとDBユーザパスワードを、データベースサーバ150に送信する(ステップS101)。
【0076】
データベースサーバ150は、パターン設定クライアント110から受信したテーブル設定要求に基づいて、情報管理DB156にテーブルを生成し、その設定を行う。また、データベースサーバ150は、受信したDBユーザIDとDBユーザパスワードを対応付けて、パスワード管理DB154に登録する(ステップS102)。そしてデータベースサーバ150は、これらの結果をテーブル設定結果としてパターン設定クライアント110へ送信する(ステップS103)。
【0077】
パターン設定クライアント110は、テーブル設定結果を受信し、その結果がテーブルの生成および設定に成功し、かつ、DBユーザID等の登録に成功したものを示す場合(ステップS104:Yes)、ユーザの操作により、生成されたアプリケーションプログラム111に含まれるソースコードと、設定ファイル内のDBユーザIDとDBユーザパスワードを、アプリケーション管理者を特定する識別情報(PIDとパスワード)とともに、ネットワーク170を介してSQLパターン抽出サーバ130に送信する(ステップS105)。これによりパターン設定処理が開始される。
【0078】
テーブル設定結果が、テーブルの生成および設定に失敗したことを示す場合、または、DBユーザID等の登録に失敗したことを示す場合(ステップS104;No)、パターン設定処理を行うことなく終了する。
【0079】
SQLパターン抽出サーバ130は、パターン設定クライアント110からソースコード、DBユーザID、およびPID、パスワードを受信すると、予め格納されているAP管理者管理DB132を読み込み、受信したPIDおよびパスワードを用いて、アプリケーション管理者の認証を行う(ステップS106)。
【0080】
次に、SQLパターン抽出サーバ130は、パターン設定クライアント110から受信したソースコード中から、SQL文を抽出する(ステップS107)。そしてSQLパターン抽出サーバ130は、パターン設定クライアント110から受信したDBユーザIDと、抽出したSQL文を対応付けて、SQLパターンを生成し(ステップS108)、生成したSQLパターンをDBユーザIDとともにSQLパターン検証サーバ150へ送信する(ステップS109)。
【0081】
SQLパターン検証サーバ150は、SQLパターン抽出サーバ130からSQLパターンを受信すると、操作指示記憶部191の機能により受信したSQLパターンをSQLパターン管理DB144へ登録し(ステップS110)、この登録結果を、SQLパターン抽出サーバ130を介してパターン設定クライアント110へ送信する(ステップS111)。
【0082】
パターン設定クライアント110は、受信した登録結果が、SQLパターン管理DB144へのSQLパターンの登録に成功したことを示すものである場合(ステップS112;Yes)、生成したアプリケーションプログラム111をアプリケーションサーバ120へ登録すべく、アプリケーションプログラム111をアプリケーションサーバ120へ送信する(ステップS113)。
【0083】
一方、受信した登録結果が、SQLパターン管理DB144へのSQLパターンの登録に失敗したことを示すものである場合(ステップS112;No)、パターン設定処理を終了する。
【0084】
アプリケーションサーバ120は、パターン設定クライアント110から受信したアプリケーションプログラム111を、内部の記憶部に登録し(ステップS114)、登録結果をパターン設定クライアント110に送信して(ステップS115)、パターン設定処理を終了する。
【0085】
以上が、データベース処理システム100におけるパターン設定処理の動作である。
【0086】
次に、データベース処理システム100におけるパターン検証処理の動作について、図9を用いて説明する。なお、前提として、パターン設定処理により、SQLパターンがSQLパターン検証サーバ150に、アプリケーションプログラム111がアプリケーションサーバ120に登録されているものとする。
【0087】
パターン設定処理は、アプリケーションプログラム111の処理に従って、データベースサーバ150への接続を要求するDB接続要求を、SQLパターン検証サーバ140がアプリケーションサーバ120から受信することに応じて開始される。
【0088】
前提として、アプリケーションサーバ120は、ユーザの操作によりAPクライアント160からアプリケーションプログラム111の実行を要求するAP実行要求を受信すると、受信したAP実行要求に対応するアプリケーションプログラム111を実行する(ステップS201)。
【0089】
続いてアプリケーションサーバ120は、アプリケーションプログラム111の処理に従って、データベースサーバ150への接続を要求するDB接続要求を、SQLパターン検証サーバ140に送信する(ステップS202)。これによりパターン設定処理が開始される。SQLパターン検証サーバ140は、接続要求受信部192の機能により、受信したDB接続要求をデータベースサーバ150へ送信する(ステップS203)。
【0090】
データベースサーバ150は、DB接続要求を受信すると、これに含まれるDBユーザIDおよびDBユーザパスワードと、パスワード管理DB154のDBユーザIDおよびDBユーザパスワードに基づいて、アプリケーション認証を行う(ステップS204)。
【0091】
アプリケーション認証に成功すると、データベースサーバ150は、SQLパターン検証サーバ140との接続を確立してセッションIDを生成し(ステップS205))、生成したセッションIDと受信したDBユーザIDとを、SQLパターン検証サーバ140に送信する(ステップS206)。
【0092】
セッションIDおよびDBユーザIDを受信すると、SQLパターン検証サーバ140は、セッション記憶部193の機能により、受信したセッションIDをDBユーザIDと対応付けてセッション管理DB142へ登録し(ステップS207)、セッションIDをアプリケーションサーバ120へ送信する(ステップS208)。
【0093】
セッションIDを受信すると、アプリケーションサーバ120は、実行されたアプリケーションプログラム111に従って、SQL文をSQLパターン検証サーバ140に送信する。またアプリケーションサーバ120は、SQL文とともに、受信したセッションIDをSQLパターン検証サーバ140に送信する(ステップS209)。
【0094】
SQLパターン検証サーバ140は、これらを受信すると、操作指示特定部194の機能により、受信したセッションIDに基づいて、セッション管理DB142からDBユーザIDを特定する(ステップS210)。
【0095】
続いてSQLパターン検証サーバ140は、操作指示特定部194の機能により、ステップS209で特定したDBユーザIDに対応するSQLパターンを、SQLパターン管理DB144から特定する(ステップS211)。そしてSQLパターン検証サーバ140は、受信したSQL文の内容が、特定したSQLパターンの内容と合致するか否かを、操作指示判定部195の機能により判定する(ステップS212)。
【0096】
受信したSQL文の内容が、特定したSQL文の内容と合致していると判定した場合(ステップS212:Yes)、SQLパターン検証サーバ140は、受信したSQL文の内容は正当なデータベース操作を示すものであるとして、出力部196の機能により、アプリケーションサーバ120から受信したSQL文とセッションIDを、データベースサーバ150に送信する(ステップS213)。
【0097】
一方、受信したSQL文の内容が、特定したSQL文の内容とは異なると判定した場合(ステップS212:No)、SQLパターン検証サーバ140は、受信したSQL文の内容は不正なデータベース操作を示すものであるとして、出力部196の機能により、APクライアント160へその旨を送信し(ステップS214)、パターン検証処理を終了する。
【0098】
SQLパターン検証サーバ140からSQL文およびセッションIDを受信すると、データベースサーバ150は、受信したSQL文の内容に従って、データ格納、参照、削除等のデータベース操作を行い(ステップS215)、その結果をSQLパターン検証サーバ140、アプリケーションサーバ120を介して、APクライアント160へ送信する(ステップS216)。これにより、パターン検証処理が終了する。
【0099】
以上が、データベース処理システム100におけるパターン検証処理の動作である。
【0100】
次に、データベース処理システム100により不正なデータベース操作を検知する動作について、図1、図10および図11を参照して説明する。ここでは、アプリケーションサーバ120に登録されている複数のアプリケーションプログラム111に対応する複数のDBユーザIDとDBユーザパスワードのうち、AP1に対応するDBユーザIDとDBユーザパスワードが、第三者により不正入手されている場合を例に説明する。
【0101】
図1に示すように、データベース処理システム100におけるアプリケーションサーバ120に、AP1およびAP2が登録されている。
【0102】
AP1は、正当なアプリケーション開発者により開発されたアプリケーションプログラム111である。AP1に含まれる設定ファイルには、DBユーザIDとしてDBID1が、DBユーザパスワードとしてDBPW1が記述されている。AP1が実行されると、AP1は、データベースサーバ150における情報管理DB156のテーブル1にアクセスし、正当なデータベース操作を行う。
【0103】
AP2は、第三者により開発された、不正なデータベース操作を行うためのアプリケーションプログラム111である。AP2に含まれる設定ファイルには、不正入手したDBユーザIDおよびDBユーザパスワードとして、DBUSER1およびPW1が記述されている。AP2は、実行されることによりデータベースサーバ150における情報管理DB156のテーブル1にアクセスし、不正なデータベース操作を行うように開発されている。具体的には、図11に示すように、AP2にはカードNOを参照しようとするSQL文が含まれている。
【0104】
図10に示すように、AP2が実行されると(ステップS301)、アプリケーションサーバ120は、DB接続要求(DBID1およびDBPW1)をSQLパターン検証サーバ140へ送信し、SQLパターン検証サーバ140は、接続要求受信部192の機能によりデータベースサーバ150へDB接続要求(DBID1およびDBPW1)を送信する(ステップS302)。
【0105】
データベースサーバ150は、DB接続要求を受信すると、受信したDBユーザIDとパスワード(DBID1およびDBPW1)と、パスワード管理DBとに基づいて、アプリケーション認証を行う(ステップS303)。
【0106】
AP2は、不正なアプリケーションプログラム111ではあるが、AP2に含まれるDBユーザIDおよびDBユーザパスワードは、AP1のものと等しいことから、データベースサーバ150との接続は確立され、データベースサーバ150によりセッションIDが生成される(ステップS304)。
【0107】
データベースサーバ150は、生成したセッションIDをSQLパターン検証サーバ140へ送信する(ステップS305)。
【0108】
SQLパターン検証サーバ140は、セッション記憶部193の機能により、データベースサーバ150からセッションIDを受信し、このセッションIDにDBユーザIDを対応付けてセッション管理DB142に登録する(ステップS306)。
【0109】
続いてSQLパターン検証サーバ140は、セッション記憶部193の機能により、セッションIDをアプリケーションサーバ120へ送信する(ステップS307)。
【0110】
アプリケーションサーバ120は、セッションIDを受信し、AP2に従ってSQL文を、セッションIDとともにSQL検証サーバ140に送信する。
【0111】
SQL検証サーバ140は、操作指示特定部194の機能により、受信したセッションIDに基づいて、セッション管理DB142からこのセッションIDに対応するDBユーザIDを特定する(ステップS309)。
【0112】
そしてSQL検証サーバ140は、操作指示特定部194の機能により、特定したDBユーザIDに基づいて、SQLパターン管理DB144からこのDBユーザIDに対応するSQLパターンを特定する。ここで、特定されたDBユーザIDはAP1から不正入手したものであるため、特定されるSQLパターンは、SQLパターン設定機能において登録されたAP1のSQLパターンである。
【0113】
次に、SQL検証サーバ140は、操作指示判定部195の機能により、受信したSQL文の内容が、特定したSQLパターンの内容と合致するか否かを判定する(ステップS311)。
【0114】
ここで、図11に示すように、AP2の実行に従って送信されたSQL文の内容と、特定したSQLパターンの内容が合致していないため(ステップS311;No)、AP2の実行に伴うデータベース操作が不正なものであるとして、SQL検証サーバ140の出力部196の機能により、APクライアント160にその旨の情報を送信する(ステップS312)。これによりパターン検証処理を終了する。
【0115】
このように、本実施形態におけるパターン設定処理が行われることにより、アプリケーションプログラム111のソースコードから、そのアプリケーションプログラム111に対応したSQL文が自動で抽出され、登録される。
【0116】
また、ユーザの操作によりアプリケーションプログラム111が実行されると、パターン検証処理が行われる。これにより、パターン設定処理で登録されたアプリケーションプログラム111に対応するデータベース操作以外の操作が防止される。
【0117】
従って、不正なデータベース操作を防ぐとともに、その設定の手間を軽減することができる。
【0118】
(変形例)
この発明は、上記の実施形態に限定されず、種々の変形及び応用が可能である。上記実施の形態では、データベース処理装置10のパターン設定機能およびパターン検証機能を、データベース処理装置10のSQLパターン抽出サーバ130とSQLパターン検証サーバ140との協同により実現する場合について説明したが、これは一例である。例えば、パターン設定機能およびパターン検証機能を併せ持つ一つの情報処理装置や、さらには、各サーバや各クライアントの機能を併せ持つ一つの情報処理装置により、データベース処理装置10を構成してもよい。この場合、1つのプログラムにより各機能を実現するようにしてもよい。この構成によれば、設備費用を抑えつつ不正なデータベース操作を、簡単な設定で防ぐことができる。
【0119】
上記実施の形態では、パターン設定時において、パターン設定クライアント110に入力されるPIDやパスワードを、アプリケーション管理者を特定する識別情報としてアプリケーション管理者の認証を行う例を示したが、必ずしもこれに限定されない。このアプリケーション管理者を特定する識別情報には、指紋等の生体認証情報や回線IDや端末が有する識別情報や携帯電話の固定番号等の識別情報が含まれており、アプリケーション管理者の認証を行うにあたっては、任意の識別情報を用いることが可能であり、また全ての識別方法を用いてもよい。なお、この場合、SQLパターン抽出サーバ130のAP管理者管理DBには、アプリケーション管理者が一意に特定されるように、それぞれの識別情報が予め登録されている。
【0120】
また、アプリケーション管理者の認証においては、AP証明書を用いてもよい。
AP証明書は、図12に示すアプリケーション検証サーバ199により作成される、アプリケーションプログラム111のソースコードの内容とバイナリコードの内容とが一致していることを示す識別情報である。アプリケーション検証サーバ199は、図示するように、パターン設定クライアント110およびSQLパターン抽出サーバ130に通信可能に接続されている。アプリケーション検証サーバ199は、パターン設定クライアント110からアプリケーションプログラム111のソースコードとバイナリコードを受信し、それらの内容が一致するか否かを検証する。一致している場合は、その旨を示すAP証明書をパターン設定クライアント110に送信する。この場合、アプリケーション検証サーバ199は、AP証明書をSQLパターン抽出サーバ130に送信し、AP管理者管理DBに登録する。不一致の場合アプリケーション検証サーバ199は、AP証明書を作成せず、その旨をパターン設定クライアント110に送信する。なお、アプリケーション管理者の認証については、パターン設定クライアント110から受信するAP証明書とSQLパターン検証サーバ130のAP管理者管理DBに登録されているAP証明書が合致するか否かにより行う。
【0121】
上記実施の形態では、パターン検証時において、セッションIDによりDBユーザIDを特定した上で、このDBユーザIDに対応するSQLパターンを特定する例を示したが、これは一例である。実行されているアプリケーションプログラム111に対応する登録済のSQLパターンを特定することができれば、セッションIDを用いなくてもよく、直接DBユーザIDを送受信するようにしても、また他の識別情報を用いてもよい。
【0122】
また、上記実施の形態では不正なデータベース操作を検知した場合、アプリケーションプログラム111の実行を要求したAPクライアント160に不正なデータベース操作である旨を通知する例を示したが、これは一例である。不正なデータベース操作である旨は、例えば、ネットワークを介して通信可能に接続された、アプリケーション管理者やデータベース管理者が所持する携帯電話等の移動体通信端末や、データシステム全体を管理する管理者センタの情報処理端末に、さらに通知してもよい。この構成によれば、不正なデータベース操作の実行を試みた者がいることを管理者側がリアルタイムで認識することができる。
一方、上記構成によれば、不正なデータベース操作である旨が通知されることで、ユーザは、第三者により不正なデータベース操作を含むアプリケーションプログラム111が格納されていることを認識することができる。しかし、不正なデータベース操作を防止するという観点からすれば、不正なデータベース操作である旨を通知しなくてもよく、任意である。
【0123】
なお、本発明の実施の形態にかかる各サーバを実現するための情報処理装置は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。例えば、汎用コンピュータに、上述の処理を実行するためのSQLパターン抽出プログラム134やSQLパターン検証プログラム146を格納した媒体(CD−ROMなど)から当該プログラムをインストールすることにより、上述の処理を実行する各種サーバを構成することができる。
【0124】
また、上述の機能を、OS(Operating System)とアプリケーションとの分担、またはOSとアプリケーションとの協同により実現する場合等には、OS以外の部分のみを媒体に格納してもよい。
【0125】
また、搬送波にSQLパターン抽出プログラム134やSQLパターン検証プログラム146を重畳し、通信ネットワークを介して配信することも可能である。例えば、通信ネットワーク上の掲示板(BBS、Bulletin Board System)に当該プログラムを掲示し、ネットワークを介して当該プログラムを配信してもよい。そして、これらのプログラムを起動し、オペレーティングシステムの制御下で、他のアプリケーションプログラムと同様に実行することにより、上述の処理を実行できるように構成してもよい。
【符号の説明】
【0126】
100 データベース処理システム
110 パターン設定クライアント
111 アプリケーションプログラム
120 アプリケーションサーバ
130 SQLパターン抽出サーバ
131 記憶部
132 AP管理者管理DB
134 SQLパターン抽出プログラム
136 制御部
140 SQLパターン検証サーバ
141 記憶部
142 セッション管理DB
144 SQLパターン管理DB
146 SQLパターン検証プログラム
148 制御部
150 データベースサーバ
152 データベース管理システム
154 パスワード管理DB
156 情報管理DB
160 APクライアント
181 ユーザ判定部
182 操作指示抽出部
191 操作指示記憶部
192 接続要求受信部
193 セッション記憶部
194 操作指示特定部
195 操作指示判定部
196 出力部
199 アプリケーション検証サーバ


【特許請求の範囲】
【請求項1】
複数のアプリケーションプログラムが格納されるアプリケーション記憶装置と、複数のデータベースを備えるデータベースサーバと、に通信可能に接続され、前記アプリケーションプログラムに従って実行される前記データベースに対する操作を、前記データベースサーバに指示するデータベース処理装置であって、
前記アプリケーション記憶装置から前記アプリケーションプログラムを取得するアプリケーション取得手段と、
前記アプリケーション取得手段で取得したアプリケーションプログラムから、前記データベースに対する操作部分を示すデータベース操作指示を抽出する操作指示抽出手段と、
前記アプリケーション取得手段で取得したアプリケーションプログラムに含まれる、前記アプリケーションプログラムを特定する識別情報と、前記操作指示抽出手段で抽出した前記データベース操作指示を、対応付けて記憶する操作指示記憶手段と、
前記複数のアプリケーションプログラムのうちのいずれかが実行された場合に、前記アプリケーションプログラムに従って実行されるデータベース操作指示を、該アプリケーションプログラムを特定する識別情報とともに受信する受信手段と、
前記操作指示記憶手段で記憶したデータベース操作指示から、前記受信手段で受信した識別情報に対応するデータベース操作指示の内容を特定する操作指示特定手段と、
前記受信手段で受信したデータベース操作指示の内容が、前記操作指示特定手段で特定したデータベース操作指示の内容と合致するか否かを判定する操作指示判定手段と、
前記操作指示判定手段により、データベース操作指示の内容が合致していると判定された場合に、前記アプリケーションプログラムに従って実行されるデータベース操作指示を前記データベースサーバに出力する出力手段と、
を備えることを特徴とするデータベース処理装置。
【請求項2】
前記データベース処理装置は、相互に通信可能に接続される第1の情報処理装置と第2の情報処理装置とを備え、
前記第1の情報処理装置は、前記アプリケーション取得手段と、前記操作指示抽出手段を備え、
前記操作指示抽出手段は、
前記アプリケーション取得手段で取得したアプリケーションプログラムに含まれる前記識別情報と、
抽出した前記データベース操作指示を前記第2の情報処理装置に送信する送信手段と、
をさらに備え、
前記第2の情報処理装置は、前記操作指示記憶手段と、前記操作指示特定手段と、前記操作指示判定手段と、前記出力手段と、を備え、
前記操作指示記憶手段は、
前記第1の情報処理装置から受信する前記識別情報と、前記データベース操作指示を対応付けて記憶する、
ことを特徴とする請求項1に記載のデータベース処理装置。
【請求項3】
前記出力手段は、前記操作指示判定手段により、データベース操作指示の内容が合致しないと判定された場合、前記アプリケーションプログラムに従って実行されるデータベース操作指示が不正な操作指示である旨を、ネットワークを介して通信可能に接続され、前記アプリケーションプログラムの実行を指示するクライアント端末に出力する、
ことを特徴とする請求項1又は2に記載のデータベース処理装置。
【請求項4】
前記出力手段は、前記操作指示判定手段により、データベース操作指示の内容が合致しないと判定された場合、前記アプリケーションプログラムに従って実行されるデータベース操作指示が不正な操作指示である旨を、ネットワークを介して通信可能に接続される、前記データベースの管理者が所持する移動体通信端末にさらに出力する、
ことを特徴とする、請求項1乃至3のいずれか1項に記載のデータベース処理装置。
【請求項5】
複数のアプリケーションプログラムが格納されるアプリケーション記憶装置と、複数のデータベースを備えるデータベースサーバと、に通信可能に接続され、前記アプリケーションプログラムに従って実行される前記データベースに対する操作を、前記データベースサーバに指示するデータベース処理装置によるデータベース処理方法であって、
前記アプリケーション記憶装置から前記アプリケーションプロラムを取得するアプリケーション取得ステップと、
前記アプリケーション取得ステップで取得したアプリケーションプログラムから、前記データベースに対する操作部分を示すデータベース操作指示を抽出する操作指示抽出ステップと、
前記アプリケーション取得ステップで取得したアプリケーションプログラムに含まれる、前記アプリケーションプログラムを特定する識別情報と、前記操作指示抽出ステップで抽出した前記データベース操作指示を、対応付けて記憶する操作指示記憶ステップと、
前記複数のアプリケーションプログラムのうちのいずれかが実行された場合に、前記アプリケーションプログラムに従って実行されるデータベース操作指示を、該アプリケーションプログラムを特定する識別情報とともに受信する受信ステップと、
前記操作指示記憶ステップで記憶したデータベース操作指示から、前記受信ステップで受信した識別情報に対応するデータベース操作指示の内容を特定する操作指示特定ステップと、
前記受信ステップで受信したデータベース操作指示の内容が、前記操作指示特定ステップで特定したデータベース操作指示の内容と合致するか否かを判定する操作指示判定ステップと、
前記操作指示判定ステップにより、データベース操作指示の内容が合致していると判定された場合に、前記アプリケーションプログラムに従って実行されるデータベース操作指示を前記データベースサーバに出力する出力ステップと、
を備えることを特徴とするデータベース処理方法。
【請求項6】
複数のアプリケーションプログラムが格納されるアプリケーション記憶装置と、複数のデータベースを備えるデータベースサーバと、に通信可能に接続されるコンピュータを、
前記アプリケーション記憶装置から前記アプリケーションプロラムを取得するアプリケーション取得手段、
前記アプリケーション取得手段で取得したアプリケーションプログラムから、前記データベースに対する操作部分を示すデータベース操作指示を抽出する操作指示抽出手段、
前記アプリケーション取得手段で取得したアプリケーションプログラムに含まれる、前記アプリケーションプログラムを特定する識別情報と、前記操作指示抽出手段で抽出した前記データベース操作指示を、対応付けて記憶する操作指示記憶手段、
前記複数のアプリケーションプログラムのうちのいずれかが実行された場合に、前記アプリケーションプログラムに従って実行されるデータベース操作指示を、該アプリケーションプログラムを特定する識別情報とともに受信する受信手段、
前記操作指示記憶手段で記憶したデータベース操作指示から、前記受信手段で受信した識別情報に対応するデータベース操作指示の内容を特定する操作指示特定手段、
前記受信手段で受信したデータベース操作指示の内容が、前記操作指示特定手段で特定したデータベース操作指示の内容と合致するか否かを判定する操作指示判定手段、
前記操作指示判定手段により、データベース操作指示の内容が合致していると判定された場合に、前記アプリケーションプログラムに従って実行されるデータベース操作指示を前記データベースサーバに出力する出力手段、
として機能させることを特徴とするプログラム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2012−93954(P2012−93954A)
【公開日】平成24年5月17日(2012.5.17)
【国際特許分類】
【出願番号】特願2010−240698(P2010−240698)
【出願日】平成22年10月27日(2010.10.27)
【出願人】(000102728)株式会社エヌ・ティ・ティ・データ (438)
【Fターム(参考)】