(57)【要約】データベースアクセス制御装置は、ユーザ装置のユーザＩＤに基づき、アクセス鍵を生成して格納しておく。そして、データベースアクセス制御装置は、該アクセス鍵を、代理処理サーバ装置のアドレスとともにユーザ装置に送信する。ユーザ装置は、代理処理サーバ装置にデータベースアクセス要求を行う際にアクセス鍵を送信し、代理処理サーバ装置は、データベースアクセス制御装置にデータベース処理要求を行う際にアクセス鍵を送信する。データベースアクセス制御装置は、データベース処理要求を受信した際に、該代理処理サーバ装から受信したアクセス鍵と同じアクセス鍵を、データベースアクセス制御装置が格納しているか否かを判定し、該アクセス鍵を有している場合に限り、データベースにアクセスする。
2005006204.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ装置からの要求に応じて、データベースアクセス制御装置と代理処理サーバ装置とが連携してデータベースへのアクセス制御を行う方法であって、
前記データベースアクセス制御装置は、ユーザ装置からの要求に応じて、利用可能な代理処理サーバ装置のアドレスを該ユーザ装置に送信し、
前記ユーザ装置は、前記アドレスの代理処理サーバ装置に接続してデータベースアクセス要求を行い、
前記代理処理サーバ装置は、前記ユーザ装置からのデータベースアクセス要求に従い前記データベースアクセス制御装置にデータベース処理要求を行い、
前記データベースアクセス制御装置は、前記代理処理サーバ装置からのデータベース処理要求に応じてデータベースへの処理を行い、該処理結果を前記代理処理サーバ装置に送信し、
前記代理処理サーバ装置は、前記データベースアクセス制御装置から送信された処理結果に対して付加処理を実行し、該付加処理結果を前記ユーザ装置に送信する、ことを特徴とするデータベースアクセス制御方法。
【請求項２】
前記データベースアクセス制御装置は、前記ユーザ装置のユーザＩＤに基づきアクセス鍵を生成し、該アクセス鍵を前記データベースアクセス制御装置の記憶手段に格納するとともに、前記ユーザ装置に送信し、
前記ユーザ装置は、前記代理処理サーバ装置にデータベースアクセス要求を行う際に前記アクセス鍵を前記代理処理サーバ装置に送信し、
前記代理処理サーバ装置は、前記データベースアクセス制御装置にデータベース処理要求を行う際に前記アクセス鍵を前記データベースアクセス制御装置に送信し、
前記データベースアクセス制御装置は、前記代理処理サーバ装置から受信したアクセス鍵と同じアクセス鍵が前記記憶手段に存在するか否かを調べ、該アクセス鍵が存在する場合に限り、前記アクセス鍵に対応するユーザＩＤに対して許可された限度内で、データベース中のデータへのアクセスを実行する、ことを特徴とする請求項１に記載のデータベースアクセス制御方法。
【請求項３】
前記データベースアクセス制御装置は、前記アクセス鍵の判定に加えて、前記ユーザ装置が当該代理処理サーバ装置に接続中の状態にあるかを判定し、前記ユーザ装置が当該代理処理サーバ装置に接続中の状態にある場合に限り、前記データベース中のデータへのアクセスを実行する、ことを特徴とする請求項２に記載のデータベースアクセス制御方法。
【請求項４】
ユーザ装置からの要求に応じて、代理処理サーバ装置と連携してデータベースへのアクセス制御を行うデータベースアクセス制御装置であって、
前記ユーザ装置からの要求に応じて、利用可能な代理処理サーバ装置のアドレスを該ユーザ装置に送信することにより、前記ユーザ装置に前記代理処理サーバ装置への接続を指示する手段と、
前記代理処理サーバ装置からのデータベース処理要求に応じてデータベースへの処理を実行し、処理結果を前記代理処理サーバ装置に送信する手段と、を有することを特徴とするデータベースアクセス制御装置。
【請求項５】
前記ユーザ装置のユーザＩＤに基づきアクセス鍵を生成し、該アクセス鍵を前記データベースアクセス制御装置の記憶手段に格納するとともに、該アクセス鍵を、前記代理処理サーバ装置のアドレスを前記ユーザ装置に送信する際に併せて前記ユーザ装置に送信する手段と、
前記代理処理サーバ装置からアクセス鍵とデータベース処理要求を受信し、前記代理処理サーバ装置から受信したアクセス鍵と同じアクセス鍵が前記記憶手段に存在するか否かを調べる手段と、
前記アクセス鍵が存在する場合に限り、前記アクセス鍵に対応するユーザＩＤに対して許可された限度内で、データベース中のデータへのアクセスを実行する手段、を更に有することを特徴とする請求項４に記載のデータベースアクセス制御装置。
【請求項６】
前記データベースアクセス制御装置は、前記アクセス鍵の判定に加えて、前記ユーザ装置が当該代理処理サーバ装置に接続中の状態にあるかを判定し、前記ユーザ装置が当該代理処理サーバ装置に接続中の状態にある場合に限り、前記データベース中のデータへのアクセスを実行する、ことを特徴とする請求項５に記載のデータベースアクセス制御装置。
【請求項７】
ユーザ装置からの要求に応じ、データベースアクセス制御装置を介してデータベースへのアクセスを行う代理処理サーバ装置であって、
前記ユーザ装置から、アクセス鍵とデータベースアクセス要求を受信する手段と、
前記データベースアクセス制御装置に、データベース処理要求とともに前記アクセス鍵を送信する手段と、
前記データベース処理要求に応じたデータベースの処理結果を前記データベースアクセス制御装置から受信し、当該処理結果に対して付加処理を実行し、該付加処理結果を前記ユーザ装置に送信する手段と、を有することを特徴とする代理処理サーバ装置。
【請求項８】
ユーザ装置からの要求に応じて、代理処理サーバ装置と連携してデータベースへのアクセス制御を行うデータベースアクセス制御処理をコンピュータに実行させるプログラムであって、
前記ユーザ装置からの要求に応じて、利用可能な代理処理サーバ装置のアドレスを該ユーザ装置に送信することにより、前記ユーザ装置に前記代理処理サーバ装置への接続を指示する手順と、
前記代理処理サーバ装置からのデータベース処理要求に応じてデータベースへの処理を実行し、処理結果を前記代理処理サーバ装置に送信する手順と、をコンピュータに実行させるプログラム。
【請求項９】
前記ユーザ装置のユーザＩＤに基づきアクセス鍵を生成し、該アクセス鍵を前記データベースアクセス制御装置の記憶手段に格納するとともに、該アクセス鍵を、前記代理処理サーバ装置のアドレスを前記ユーザ装置に送信する際に併せて前記ユーザ装置に送信する手順と、
前記代理処理サーバ装置からアクセス鍵とデータベース処理要求を受信し、前記代理処理サーバ装置から受信したアクセス鍵と同じアクセス鍵が前記記憶手段に存在するか否かを調べる手順と、
前記アクセス鍵が存在する場合に限り、前記アクセス鍵に対応するユーザＩＤに対して許可された限度内で、データベース中のデータへのアクセスを実行する手順、とをコンピュータに実行させる請求項８に記載のプログラム。
【請求項１０】
前記アクセス鍵の判定に加えて、前記ユーザ装置が当該代理処理サーバ装置に接続中の状態にあるかを判定し、前記ユーザ装置が当該代理処理サーバ装置に接続中の状態にある場合に限り、前記データベース中のデータへのアクセスを実行する手順をコンピュータに実行させる請求項９に記載のプログラム。
【請求項１１】
請求項８ないし１０のうちいずれか１項に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１２】
ユーザ装置からの要求に応じ、データベースアクセス制御装置を介してデータベースへのアクセスを行う代理処理をコンピュータに実行させるプログラムであって、
前記ユーザ装置から、アクセス鍵とデータベースアクセス要求を受信する手順と、
前記データベースアクセス制御装置に、データベース処理要求とともに前記アクセス鍵を送信する手順と、
前記データベース処理要求に応じたデータベースの処理結果を前記データベースアクセス制御装置から受信し、当該処理結果に対して付加処理を実行し、該付加処理結果を前記ユーザ装置に送信する手順と、をコンピュータに実行させるプログラム。
【請求項１３】
請求項１２に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、データベースのアクセス制御技術に関し、詳しくは、データベースアクセス制御装置とユーザの代理としての代理処理サーバ装置との連携によりデータベースへのアクセスを行うデータベースアクセス制御技術に関する。
【背景技術】
【０００２】  一般にデータベースは、複数のユーザがデータを保存しているため、どのユーザがどのデータを登録、参照、更新、または削除できるかはデータベースのアクセス制御機構によって制御されている。以下、データベースへのデータの登録、参照、更新、削除をまとめてデータベースへのアクセスと呼ぶことにする。例えば、データベースのアクセス制御機構では、ユーザＡのデータにはユーザＢはアクセスできず、またユーザＢのデータにはユーザＡはアクセスできないようにアクセス制御が行われる。【０００３】  このデータベースのアクセス制御方法としては、従来から、ユーザがデータベースに対して渡すユーザＩＤとパスワードの組等の認証情報を、データベースのアクセス制御機構にあらかじめ登録してある認証情報と比較することによりアクセスしようとしているユーザを特定し、次に特定されたユーザに対してどのデータにアクセスして良いかが設定されているアクセス制御リスト（Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｌｉｓｔ）に基づいて各データのアクセスに対しての許可、不許可を決定するという方式がある。【０００４】  これは既存の多くのデータベースに用いられている方法であり、データベースをアクセスするための言語の規格であるＳＱＬ９２ではｇｒａｎｔ文、ｒｅｖｏｋｅ文によってアクセス制御リストにアクセス権限の情報を追加、削除することにより、ユーザに対するデータへのアクセス権限の付与、取り消しを行うよう規定されている。【０００５】  上記のアクセス制御方式はデータベースへのアクセスがデータベースにデータを格納しているユーザのみの場合のものである。一方、それとは異なる形態として、データベースへのアクセスをデータを格納しているユーザではなく、ユーザの代わりにデータベースへのアクセスを行う代理エージェント（代理処理サーバ）が行う方法がある。これはユーザが代理エージェントにデータベースへのアクセスを依頼するという方法で行われる。これは、例えばデータを加工処理する機能を代理エージェントが提供しており、ユーザはデータベースに保存してあるデータを代理エージェントに加工処理してもらい、ユーザはその処理結果を受け取るような場合である。【０００６】  ユーザの代理として代理エージェントがデータベースへアクセスを行う場合に考慮すべきことは、代理エージェントが依頼主のユーザのアクセス権限に基づいてデータベースへのアクセスを行うようにしなければならないという点である。例えば、あるユーザＡが代理エージェントに対してデータベースへのアクセスを依頼するときに、代理エージェントはユーザＡに対してアクセスが許可されているデータしかアクセスできないようにアクセス制御されなければならない。すなわちユーザＡの依頼にもかかわらず、代理エージェントがユーザＡに許可されていないユーザＢのデータにアクセスし、その情報をユーザＡに返すようなことはあってはならない。代理エージェントが依頼主のユーザのアクセス権限に基づいてデータベースにアクセスすることをユーザから代理エージェントへのアクセス権限の委譲と呼ぶ。【０００７】  上記のような条件を満たすアクセス制御方法のもっとも単純なものとしては、ユーザが代理エージェントに対しデータ��ースにアクセスするための自分のユーザＩＤやパスワード等の認証情報を渡し、代理エージェントがその認証情報を利用してデータベースにアクセスしてそのユーザのデータを取得するという方法がある。【０００８】  また、別の方法としては、デジタル署名技術や暗号通信技術を利用して、ユーザによる代理エージェントへのアクセス権限の委譲が正しいものかどうかをデジタル証明書やデジタル署名、暗号化や一方向関数を用いて確認するものがある（例えば、文献１：特開２００１−１０１０５４号公報、文献２：特開２００２−１６３２３５号公報参照）。【０００９】  しかし、ユーザが代理エージェントへ自分の認証情報を渡し、代理エージェントがその認証情報を利用してデータベースへアクセスする方法には次の問題がある。一般に代理エージェントはユーザとは異なる第三者の実体であり、ユーザは代理エージェントを必ずしも信頼することができない。そのため、例えば、ユーザＡが代理エージェントにユーザＩＤとパスワード等の認証情報を渡してしまうと、代理エージェントはその認証情報を内部に保持しておき、他ユーザであるユーザＢがアクセスしたときにその保持しておいた認証情報を使ってユーザＡになりすまし、ユーザＢには許可されていないはずのユーザＡのデータにアクセスを許してしまうというような悪意を持った処理を代理エージェントが行う可能性がある。【００１０】  また、デジタル署名技術や暗号通信技術を利用してアクセス権限の委譲等を確認する方法では、デジタル証明書やデジタル署名、暗号化、一方向関数など複雑な処理を行わなければならず、またユーザ、代理エージェント、データベース間で鍵情報や認証情報などのやりとりを何ステップも行わなければならない。またこれらの方法はアクセス権限を委譲するための方式に関してのみに用いられる方法であり、この方法を用いても、委譲されたアクセス権限に基づいてデータベースにアクセスした結果が委譲もとのユーザに確実に返されることは保証されていない。従って、この方法は、ユーザがデータベースのアクセスを依頼する代理エージェントへの適用には適切でない。
【発明の開示】
【発明が解決しようとする課題】
【００１１】  本発明は、上記のような課題を解決するためになされたものであり、代理エージェント（代理処理サーバ）がデータベースまたはデータベース相当の機能における許可されていないアクセスをすることを防止する仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１２】  本発明では、データベースアクセス制御装置は、ユーザ装置からの要求に応じて、利用可能な代理処理サーバ装置のアドレスを該ユーザ装置に送信する。ユーザ装置は、上記アドレスの代理処理サーバ装置に接続してデータベースアクセス要求を行い、代理処理サーバ装置は、ユーザ装置からのデータベースアクセス要求に従いデータベースアクセス制御装置にデータベース処理要求を行う。データベースアクセス制御装置は、代理処理サーバ装置からのデータベース処理要求に応じてデータベースへの処理を実行し、該処理結果を前記代理処理サーバ装置に送信する。代理処理サーバ装置は、前記データベースアクセス制御装置から送信された処理結果に対して依頼された処理を実行し、該処理結果を前記ユーザ装置に送信する。【００１３】  さらに、本発明では、データベースアクセス制御装置は、ユーザ装置のユーザＩＤに基づきアクセス鍵を生成し、該アクセス鍵を前記データベースアクセス制御装置の記憶手段に格納するとともに、前記ユーザ装置に送信する。ユーザ装置は、代理処理サーバ装置にデータベースアクセス要求を行う際にアクセス鍵を代理処理サーバ装置に送信し、代理処理サーバ装置は、データベースアクセス制御装置にデータベース処理要求を行う際にアクセス鍵を前記データベースアクセス制御装置に送信する。データベースアクセス制御装置では、代理処理サーバ装置から受信したアクセス鍵と同じアクセス鍵が前記記憶手段に存在するか否かを調べ判定し、該アクセス鍵が存在する場合に限り、アクセス鍵に対応するユーザＩＤに対して許可された限度内で、データベース中のデータへのアクセスを実行するようにする。【００１４】  また、本発明では、データベースアクセス制御装置は、アクセス鍵の判定に加えて、ユーザ装置が当該代理処理サーバ装置に接続中の状態にあるかを判定し、前記ユーザ装置が当該代理処理サーバ装置に接続中の状態にある場合に限り、データベース中のデータへのアクセスを実行するようにする。【００１５】  なお、上記の構成において、データベース処理要求とは、データベースに対するデータ登録、変更、削除、もしくは検索等の処理の要求のことである。
【発明の効果】
【００１６】  本発明によれば、代理処理許可を与えられていない代理処理サーバ装置はデータベースアクセス処理を実行できず、また代理処理許可を与えられた代理処理サーバ装置でも代理処理を依頼したユーザＩＤの権限を越えるデータベースに対するデータ登録、変更、削除、もしくは検索等の処理を実行することができない。【００１７】  また、ユーザ装置からの検索代行処理依頼を受けることなく、代理処理サーバ装置が独自にデータベース検索処理を実行することも禁止されている。このため、代理処理サーバ装置の利用者は不正な行為が行われることを心配することなく、データベース検索を実施する処理および、その検索結果を加工処理する代理処理サーバ装置を利用することが可能となる。それにより、ユーザは第三者が用意する様々な有用な処理を行う代理処理サーバ装置を利用することが可能になる。
【図面の簡単な説明】
【００１８】［図１］本発明が適用されるシステム全体の構成図である。
［図２］データベース保存データの一例を示す図である。
［図３］本発明の一実施例の処理シーケンス図である。
［図４］本発明の一実施例の各装置間の連携図である。
【符号の説明】
【００１９】  １００  データベースアクセス制御装置
１０１  仲介処理部
１０２  アクセス処理部
２００  データベース
２１０  ユーザデータ部
２２０  ユーザシステムデータ部
２３０  蓄積データ部
３００  代理処理サーバ装置
４００  ユーザ装置
５００  ネットワーク
【発明を実施するための最良の形態】
【００２０】  以下、本発明の実施の形態を図面により詳しく説明する。
【実施例１】
【００２１】  図１に本発明が適用されるシステム全体の構成図を示す。図１において、１００はデータベースアクセス制御装置、２００は複数のユーザで共用されるデータベース、３００は代理処理サーバ装置、４００は各ユーザのユーザ装置、５００はインターネット等のネットワークである。データベースアクセス制御装置１００は、ユーザ装置４００と代理処理サーバ装置３００との仲介機能を有する仲介処理部１０１、およびデータベース２００の蓄積データへのアクセス機能を有するアクセス処理部１０２から構成される。【００２２】  データベース２００は、あらかじめ登録されたユーザＩＤや認証情報等のユーザに関する情報、代理処理サーバ装置３００の情報、および本システムが提供するための蓄積データを保持する。さらに、図１では省略しているが、データベース２００はアクセス制御機構を内蔵している。このデータベースアクセス制御装置１００とデータベース２００との接続は直接あるいはネットワークを介してのいずれでもよい。【００２３】  以下、代理処理サーバ装置を経由して、データベース装置から、データの検索結果を取得する場合を例のとり説明する。なお、以下説明するようなデータ検索以外にも、データ登録、更新、削除、検索等の様々な処理に本発明を適用することが可能である。【００２４】  データベースアクセス制御装置１００、代理処理サーバ装置３００、およびユーザ装置４００は、ネットワーク５００を介して接続されている。データベースアクセス制御装置１００および代理処理サーバ装置３００の実体はコンピュータであり、ＣＰＵやメモリ等のハードウェア資源の環境下で、プログラムによって各処理を実行する。ここでは、ユーザの代理として、データベースアクセス制御装置１００と代理処理サーバ装置３００とが連携して動作することにより、データベース２００へのアクセスを実行し、読み出した蓄積データに所望の処理を施し、その結果を該当ユーザのユーザ装置４００に対して送信する。【００２５】  図２はデータベース２００における保存データの一例である。データベース２００はユーザデータ部２１０、ユーザシステムデータ部２２０、蓄積データ部２３０から構成される。ユーザデータ部２１０は登録されたユーザに関する情報を保存するもので、ユーザ毎に、ユーザＩＤ２１１、認証情報２１２、ユーザ権限情報２１３、セッション情報２１４、代理サーバリスト２１５、接続中の代理処理サーバＩＤ２１６を保存する。ユーザシステムデータ部２２０はユーザを代理するシステム情報を保持するもので、ここでは代理処理サーバ装置３００のＩＤ（代理処理サーバＩＤ）２２１、そのＵＲＬ（代理処理サーバＵＲＬ）２２２を保持する。蓄積データ部２３０はデータ２３１及びその閲覧可能権限情報２３２を保持する。【００２６】  図３に本実施例の全体処理シーケンス例を示す。また、図４に各装置間の連携図を示す。図３及び図４を参照して、以下では、ユーザ装置４００、データベースアクセス制御装置１００、および代理処理サーバ装置３００の３者間を接続するプロトコルとしてＨＴＴＰを利用した例を説明する。【００２７】  まず、ユーザはユーザ装置４００から、事前にデータベース２００のユーザデータ部２１���に保存されたユーザＩＤ２１１を用いてデータベースアクセス制御装置１００にログインする（ステップ１）。このとき、データベースアクセス制御装置１００の仲介処理部１０１は、同じくデータベース２００のユーザデータ部２１０に保存された各ユーザＩＤ２１１毎の認証情報２１２を用いて認証処理を行う。これにより、データベースアクセス制御装置１００の仲介処理部１０１は、ログインしようとするユーザが事前に登録された正規のユーザであることを確認し、認証結果をユーザ装置４００に送信する（ステップ２）。【００２８】  次に、ユーザ装置４００は、データベースアクセス制御装置１００に対して、当該ユーザが利用可能な代理処理サーバ装置３００のリストを要求するコマンドを送信し（ステップ３）、これを受信したデータベースアクセス制御装置１００の仲介処理部１０１は、データベース２００のユーザデータ部２１０から当該ユーザが利用可能な代理処理サーバ装置３００のリスト２１５を読み出し、ユーザ装置４００に送信する（ステップ４）。ユーザ装置４００は、受信した代理処理サーバリストを画面表示する。ユーザによって、この表示された利用可能な代理処理サーバの中から利用しようとする代理処理サーバ装置３００が選択されると、ユーザ装置４００は、その結果をデータベースアクセス制御装置１００に送信する（ステップ５）。ユーザ装置４００は、ステップ５において、ユーザからの入力に基づき、代理処理サーバ３００における処理（データベースアクセス等）に必要な情報も送信する。【００２９】  データベースアクセス制御装置１００の仲介処理部１０１は、ユーザ装置４００から選択された代理処理サーバ装置３００の情報を受信すると、データベース２００のユーザデータ２１０内の、当該ユーザの利用可能な代理処理サーバ装置３００のリスト２１５を検索し、選択された代理処理サーバ装置３００の利用が当該ユーザに許可されていることを確認する。その後、仲介処理部１０１は、当該ユーザＩＤに基づいて乱数（セッション情報）を生成し、この生成されたセッション情報からＣｏｏｋｉｅ（アクセス鍵）を生成し、これを当該ユーザのユーザ装置４００に送信するとともに（ステップ６）、データベース２００のユーザシステムデータ部２２０から、選択された代理処理サーバ装置３００のＵＲＬ２２２を取得し、ＵＲＬ２２２をユーザ装置４００に送信することにより、ＨＴＴＰリダイレクト応答によって前記ユーザ装置４００に対し当該代理処理サーバ装置３００にリダイレクト接続することを指示する（ステップ７）。また、仲介処理部１０１は、データベース２００のユーザデータ部２１０に、前記生成したセッション情報２１４と前記接続しようとする代理処理サーバ装置３００のＩＤ番号２１６を記録する。【００３０】  ユーザ装置４００は、代理処理サーバ装置３００にリダイレクト接続するにあたって、データベースアクセス制御装置１００から受信したＣｏｏｋｉｅの値を代理処理サーバ装置３００に送信する（ステップ８）。【００３１】  代理処理サーバ装置３００は、ユーザ装置４００からのＨＴＴＰリクエストである接続要求コマンドの中に含まれたＣｏｏｋｉｅの値を取り出す。そして、代理処理サーバ装置３０��は、そのＣｏｏｋｉｅの値と、ユーザから指定された処理に必要な蓄積データのテーブルを指定する値と、及び検索に用いる値とを、ＨＴＴＰリクエストの引数として、データベースアクセス制御装置１００にＨＴＴＰリクエスト（データベース検索要求）を送信する（ステップ９）。また、データベース検索要求とともに代理処理サーバ装置３００のＩＤがデータベースアクセス制御装置１００に送信される。【００３２】  代理処理サーバ装置３００からのＨＴＴＰリクエスト（データベース検索要求）を受信したデータベースアクセス制御装置１００の仲介処理部１０１は、まず、リクエストの中に設定された引数を取り出す。そして、引数の中のＣｏｏｋｉｅの値からセッション情報を取り出し、そのセッション情報と、データベース２００のユーザデータ部２１０のセッション情報２１４とを比較して、代理処理サーバ装置３００に対してＨＴＴＰリクエストを発したユーザ装置４００のユーザＩＤを特定する（ユーザ特定）。ユーザＩＤが存在している場合は、代理処理サーバ装置３００から受信した代理処理サーバ装置３００のＩＤ番号を取得し、データベース２００のユーザデータ部２１０の該当のユーザＩＤに対応する接続中の代理処理サーバ装置３００のＩＤ番号２１６と、上記のＩＤ番号とを比較し、一致するかどうかを確認する（代理処理サーバ確認）。一致する場合、代理処理サーバ装置３００のＩＤがユーザシステムデータ部２２０に存在するかどうかを確認する（代理処理サーバの詐称チェック）。更に、当該ユーザＩＤのユーザに代理処理サーバ装置３００の利用許可があるか否かを、代理処理サーバリスト２１５により確認する処理を行ってもよい。【００３３】  セッション情報に対応するユーザＩＤが存在しない場合、もしくは、受信した代理処理サーバ装置３００のＩＤ番号と、接続中の代理処理サーバＩＤとして記録されていたＩＤ番号とが一致しない場合、もしくは、代理処理サーバ装置３００のＩＤがユーザシステムデータ部２２０に存在しない場合、データベースアクセス制御装置１００の仲介処理部１０１は、代理処理サーバ装置３００に対しエラー応答し、以降の処理は実行しない。【００３４】  ユーザＩＤが存在し、かつ、代理処理サーバ装置３００のＩＤ番号が一致し、かつ、代理処理サーバ装置３００のＩＤがユーザシステムデータ部２２０に存在した場合は、仲介処理部１０１は、データベース２００の蓄積データ部２３０にアクセスするため、ＨＴＴＰリクエスト中に含まれる残りの引数情報をアクセス処理部１０２に渡す。【００３５】  データベースアクセス制御装置１００のアクセス処理部１０２は、仲介処理部１０１から渡された引数に従って、データベース２００の蓄積データ２３０の検索を実行する。このとき、蓄積データ２３０にユーザＩＤごとの閲覧権限情報２３２が設定されている場合は、データベース２００のユーザデータ部２１０において該当のユーザＩＤに設定されているユーザ権限情報２１３と蓄積データ２３０の閲覧可能権限情報２３２とが合致している場合のみ検索を実行できる（ユーザ権限チェック）。アクセス処理部１０２によって検索された結果は仲介処理部１０１に渡され、仲介処理部１０１は、その結果を代理処理サーバ装置３００からのＨＴＴＰリクエストに対するＨＴＴＰ応答の形で代理処理サーバ装置３００に送信する（ステップ１０）。【００３６】  なお、代理処理サーバ装置３００とデータベースアクセス制御装置１００との間のＨＴＴＰリクエストおよび応答は、代理処理サーバ装置３００の処理に必要とされる蓄積データ検索の分だけ複数回実行することも可能である。【００３７】  代理処理サーバ装置３００は、データベースアクセス制御装置１００の仲介処理部１０１から受信したＨＴＴＰ応答の中に含まれる蓄積データに対して、必要なデータ処理（データマイニングを行う処理や、代理処理サーバ装置３００自体が有するデータベースに保存された関連するデータと組み合わせた処理等）を実行し、その結果をユーザ装置４００にＨＴＴＰ応答の形で送信する（ステップ１１）。【００３８】  上記動作において、ユーザ装置４００がデータベースアクセス制御装置１００から受信した代理処理サーバ装置３００のリストの中から１つが選択され、選択結果がデータベースアクセス制御装置１００に送信される。そして、データベースアクセス制御装置１００の仲介処理部１０１は、データベース２００のユーザデータ部２１０に上記選択された代理処理サーバ装置３００のＩＤ番号を接続中の代理処理サーバ装置３００のＩＤ番号２１６として記録する。この後、ユーザ装置４００が別の代理処理サーバ装置３００に接続するために、再度、代理処理サーバ装置３００のリスト表示を実行したり、データベースアクセス制御装置１００で提供される別のサービスのための操作を行うと、先のデータベース２００のユーザデータ部２１０に保存された代理処理サーバ装置３００のＩＤ番号（２１６）は消去あるいは書き換えられる。また、セッション情報もユーザＩＤのログインの度に異なる値が生成される。【００３９】  このため、代理処理サーバ装置３００が一度接続されたユーザ装置４００からのＣｏｏｋｉｅの値を保存しておき、ユーザ装置４００からの要求を受けずに独自にデータベースアクセス制御装置１００への接続を行おうとしても、Ｃｏｏｋｉｅの値に含まれるセッション情報を元に、データベースアクセス制御装置１００の仲介処理部１０１はユーザを特定できないため、その代理処理サーバ装置３００から要求された検索処理を実行しない。更に、代理処理サーバ装置３００がユーザ装置４００からの要求を受けずに独自にデータベースアクセス制御装置１００への接続を行う場合には、データベース２００のユーザデータ部２１０に当該代理処理サーバ装置３００のＩＤ番号が接続中の代理処理サーバ装置３００のＩＤ番号２１６として記録されていないことからも、データベースアクセス制御装置１００の仲介処理部１０１は、その代理処理サーバ装置３００から要求された検索処理を実行しない。【００４０】  また、ユーザ装置４００がデータベースアクセス制御装置１００から受信したリストに表示される代理処理サーバ装置３００以外のＵＲＬを直接指定し、別の代理処理サーバ装置用に作成されたＣｏｏｋｉｅを用いて接続を行おうとしても、その代理処理サーバのＩＤは、データベースアクセス制御装置１００のユーザデータ部に、接続中の代理処理サーバ２１６として記録されてい��いので、データベースアクセス制御装置１００の仲介処理部１０１は、その代理処理サーバ装置３００から要求された検索処理を実行しない。これにより、ユーザ装置４００がリスト表示された代理処理サーバ装置３００以外の代理処理サーバ装置を利用することを禁止できる。【００４１】  なお、図１で示したデータベースアクセス制御装置１００における一部もしくは全部の処理機能をコンピュータのプログラムで構成し、そのプログラムをコンピュータを用いて実行して本発明を実現することができる。あるいは、図２で示した処理シーケンス手順をコンピュータのプログラムで構成し、そのプログラムをコンピュータに実行させることができる。また、コンピュータでその処理機能を実現するためのプログラム、あるいは、コンピュータにその処理手順を実行させるためのプログラムを、そのコンピュータが読み取り可能な記録媒体、例えば、ＦＤや、ＭＯ、ＲＯＭ、メモリカード、ＣＤ、ＤＶＤ、リムーバブルディスクなどに記録して、保存したり、提供したりすることができるとともに、インターネット等のネットワークを通してそのプログラムを配布したりすることが可能である。【００４２】  本発明は、上記の各実施の形態に限定されることなく、特許請求の範囲内で種々変更・応用が可能である。
【図１】
2005006204.tif 000003
【図２】
2005006204.tif 000004
【図３】
2005006204.tif 000005
【図４】
2005006204.tif 000006
【国際調査報告】
2005006204.tif 000007
2005006204.tif 000008
2005006204.tif 000009
2005006204.tif 000010