JP5493696B2 - 情報処理システム、情報処理装置、及びプログラム - Google Patents

情報処理システム、情報処理装置、及びプログラム Download PDF

Info

Publication number
JP5493696B2
JP5493696B2 JP2009243584A JP2009243584A JP5493696B2 JP 5493696 B2 JP5493696 B2 JP 5493696B2 JP 2009243584 A JP2009243584 A JP 2009243584A JP 2009243584 A JP2009243584 A JP 2009243584A JP 5493696 B2 JP5493696 B2 JP 5493696B2
Authority
JP
Japan
Prior art keywords
data
information
information processing
response
processing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009243584A
Other languages
English (en)
Other versions
JP2011090505A (ja
Inventor
貴啓 澤田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2009243584A priority Critical patent/JP5493696B2/ja
Publication of JP2011090505A publication Critical patent/JP2011090505A/ja
Application granted granted Critical
Publication of JP5493696B2 publication Critical patent/JP5493696B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、情報処理システム、情報処理装置、及びプログラムに関する。
ネットワーク経由でアプリケーションを提供するASP(Application Service Provider)あるいはSaaS(Software as a Service)などのサービスにおいて、サービスを提供する事業者が運用するサーバでデータを処理及び保存する場合、サービスの利用者は、自身のデータを他者の管理下に置くことになり、セキュリティ上の不安を感じることがある。このため、ネットワーク経由でアプリケーションを提供する技術における情報のセキュリティを向上させる技術が提案されている。
例えば、特許文献1に記載の技術では、ASP事業者が提供する業務ソフトを利用する企業側の端末において業務ソフト処理結果記録部を設け、ASP事業者側のコンピュータシステムにおいて、企業利用者からのアクセスに応じて業務ソフトを送信する際に、その業務ソフトによる処理結果を企業側の端末の記録部に書き込む実行ファイルも送信する。
特許文献2に記載の技術では、業務処理を実行するサーバにインターネットを介して接続された端末において、個人情報が蓄積されるローカルデータベースが設けられる。端末からの要求に応じてサーバで実行された処理の結果を端末で受け取ると、端末において、受け取った処理結果とローカルデータベース内の対応する個人情報とを合成して表示又は印刷する。
特許文献3に記載の技術では、ユーザがデータを入出力するクライアントと、データベースにデータを格納するサーバと、を有する情報処理システムにおいて、クライアント内のWebブラウザの背後においてデータの入出力の通信に介入し、データがサーバ側で暗号化状態となるようにデータの暗号化/復号化を行う機能を設ける。
特開2002−163232号公報 特開2002−99511号公報 特開2005−242740号公報
ネットワーク経由でアプリケーションを提供する技術において、セキュリティの確保の観点からは、アプリケーションの提供者の管理下にあるサーバにおいて処理対象のデータの値を取得できないようにすることが望まれる。しかしながら、アプリケーションの提供者の管理下にあるサーバで処理対象のデータの値を取得できないようにすると、そのアプリケーションによってデータの値を用いた処理を実行することができず、アプリケーションによって実行可能な処理に制約が生じる。
本発明の目的は、ネットワーク経由でアプリケーションを提供する技術において、処理対象のデータのセキュリティを確保すると共に、アプリケーションに従った処理における制約を低減する情報処理システム、情報処理装置、及びプログラムを提供することである。
請求項1に係る発明は、アプリケーションを提供する第一情報処理装置と、第一通信手段を介して前記第一情報処理装置に接続された第二情報処理装置であって前記第一通信手段と異なる第二通信手段を介して端末装置に接続された第二情報処理装置と、を備え、前記第一情報処理装置は、前記端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータを特定するためのデータ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報を含む応答を、前記第一通信手段により送信する応答送信手段、を備え、前記第二情報処理装置は、処理の対象となり得るデータと当該データを特定する前記データ識別情報とを関連付けて記憶した記憶手段と、前記第一通信手段を介して前記第一情報処理装置から受信した前記応答に含まれる前記手順情報中の前記データ識別情報が表すデータを前記記憶手段から読み出し、読み出したデータに対して、受信した前記応答に含まれる前記手順情報が表す手順の処理を実行する処理実行手段と、前記処理実行手段による処理の結果を前記第二通信手段により前記端末装置に対して送信する結果送信手段と、を備える、ことを特徴とする情報処理システムである。
請求項2に係る発明は、請求項1に係る発明において、前記第二情報処理装置は、データを含む入力要求を前記端末装置から前記第二通信手段を介して受信した場合に、前記入力要求に含まれるデータを、当該データを特定する前記データ識別情報と関連づけて前記記憶手段に登録する登録手段と、前記入力要求に含まれるデータを前記記憶手段に登録した旨を表す通知情報を、前記第一通信手段を用いて前記第一情報処理装置に対して送信する通知情報送信手段と、をさらに備える。
請求項3に係る発明は、請求項1又は2に係る発明において、前記応答送信手段が送信する前記応答は、前記第二情報処理装置の前記記憶手段にデータを登録するときに実行すべき処理の手順を記述した登録手順情報をさらに含み、前記登録手段は、前記登録手順情報に記述された手順に従って前記入力要求に含まれるデータを前記記憶手段に登録する。
請求項4に係る発明は、請求項1から3のいずれか1項に係る発明において、前記応答送信手段が送信する応答は、前記処理要求で要求された処理の結果を表示装置に表示させる際の表示の態様を制御する表示制御情報をさらに含み、前記第二情報処理装置の前記結果送信手段は、前記第一情報処理装置が送信した前記応答に含まれる前記表示制御情報を、前記処理実行手段による処理の結果と共に前記端末装置に対して送信する。
請求項5に係る発明は、請求項1から4のいずれか1項に係る発明において、前記第一情報処理装置において、処理の対象となり得るデータを記憶した記憶手段と、前記端末装置からの処理要求で要求された処理のうち前記第一情報処理装置の前記記憶手段に記憶されたデータを処理対象とする処理を実行し、この処理の実行の結果と、前記処理要求で要求された処理のうち前記第二情報処理装置の前記記憶手段に記憶されたデータを処理対象とする処理の手順を、当該処理の処理対象のデータの前記データ識別情報を含んだ形式で表す手順情報と、を含む応答を生成する応答生成手段と、をさらに備え、前記応答送信手段は、前記応答生成手段が生成した前記応答を前記第一通信手段により送信する。
請求項6に係る発明は、請求項5に係る発明において、前記第一情報処理装置及び前記第二情報処理装置において、どのデータを前記第一情報処理装置の前記記憶手段及び前記第二情報処理装置の前記記憶手段のいずれに登録すべきかを表す登録場所情報を参照可能であり、前記第二情報処理装置は、データを含む入力要求を前記端末装置から前記第二通信手段を介して受信した場合に、前記登録場所情報を参照し、前記入力要求に含まれるデータが前記第二情報処理装置の前記記憶手段に登録すべきものであれば、前記入力要求に含まれるデータを当該データの前記データ識別情報と関連づけて前記第二情報処理装置の前記記憶手段に登録する登録手段と、前記登録場所情報を参照し、前記入力要求に含まれるデータが前記第一情報処理装置の前記記憶手段に登録すべきものであれば、前記入力要求を前記第一情報処理装置に対して前記第一通信手段を用いて送信する入力要求送信手段と、をさらに備え、前記第一情報処理装置は、前記第二情報処理装置から前記入力要求を受信した場合に、前記入力要求に含まれるデータを前記第一情報処理装置の前記記憶手段に登録する登録手段、をさらに備える。
請求項7に係る発明は、請求項1から4のいずれか1項に係る発明において、前記第一情報処理装置において、処理の対象となり得るデータであって暗号化された暗号化データと、当該暗号化データの前記データ識別情報と、を関連づけて記憶した暗号化データ記憶手段と、前記端末装置からの処理要求で要求された処理の対象となるデータのうち前記暗号化データ記憶手段に記憶された暗号化データを前記暗号化データ記憶手段から読み出し、読み出した暗号化データと、前記処理要求で要求された処理の対象となるデータのデータ識別情報を含んだ形式で当該要求された処理の手順を表す手順情報と、を含む応答を生成する応答生成手段と、をさらに備え、前記応答送信手段は、前記応答生成手段が生成した前記応答を前記第一通信手段により送信し、前記第二情報処理装置において、前記応答に含まれる前記暗号化データを復号する復号手段をさらに備え、前記処理実行手段は、前記復号手段が復号したデータと、前記記憶手段から読み出したデータと、に対して、前記応答に含まれる前記手順情報が表す手順の処理を実行する。
請求項8に係る発明は、請求項7に係る発明において、前記第一情報処理装置及び前記第二情報処理装置において、どのデータを前記第一情報処理装置の前記暗号化データ記憶手段及び前記第二情報処理装置の前記記憶手段のいずれに登録すべきかを表す登録場所情報を参照可能であり、前記第二情報処理装置は、データを含む入力要求を前記端末装置から前記第二通信手段を介して受信した場合に、前記登録場所情報を参照し、前記入力要求に含まれるデータが前記第二情報処理装置の前記記憶手段に登録すべきものであれば、前記入力要求に含まれるデータを当該データの前記データ識別情報に関連づけて前記第二情報処理装置の前記記憶手段に登録する登録手段と、前記登録場所情報を参照し、前記入力要求に含まれるデータが前記第一情報処理装置の前記記憶手段に登録すべきものであれば、当該データを暗号化する暗号化手段と、前記暗号化手段により暗号化された暗号化データを含む前記入力要求を前記第一情報処理装置に対して前記第一通信手段を用いて送信する入力要求送信手段と、をさらに備え、前記第一情報処理装置は、前記第二情報処理装置から前記入力要求を受信した場合に、前記入力要求に含まれる前記暗号化データを当該暗号化データの前記データ識別情報に関連づけて前記暗号化データ記憶手段に登録する登録手段、をさらに備える。
請求項9に係る発明は、アプリケーションを提供する第一情報処理装置と、第一通信手段を介して前記第一情報処理装置に接続された第二情報処理装置であって前記第一通信手段と異なる第二通信手段を介して端末装置に接続された第二情報処理装置と、を備え、前記第一情報処理装置は、処理の対象となり得るデータを暗号化した暗号化データと当該暗号化データを特定するデータ識別情報とを関連づけて記憶した記憶手段と、前記端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータの前記暗号化データを前記記憶手段から読み出し、読み出した暗号化データと、読み出した暗号化データの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報と、を含む応答を、前記第一通信手段により送信する応答送信手段と、を備え、前記第二情報処理装置は、前記第一情報処理装置が送信した前記応答に含まれる前記暗号化データを復号する復号手段と、前記復号手段による復号後のデータに対して、前記第一情報処理装置が送信した前記応答に含まれる前記手順情報が表す手順の処理を実行する処理実行手段と、前記処理実行手段による処理の結果を前記第二通信手段により前記端末装置に対して送信する結果送信手段と、を備える、ことを特徴とする情報処理システムである。
請求項10に係る発明は、請求項9に係る発明において、前記第二情報処理装置は、データを含む入力要求を前記端末装置から前記第二通信手段を介して受信した場合に、前記入力要求に含まれるデータを暗号化する暗号化手段と、前記暗号化手段により暗号化された暗号化データを、前記第一通信手段を用いて前記第一情報処理装置に対して送信する暗号化データ送信手段と、をさらに備え、前記第一情報処理装置は、前記第二情報処理装置が送信した前記暗号化データを当該暗号化データの前記データ識別情報に関連づけて前記記憶手段に登録する登録手段、をさらに備える。
請求項11に係る発明は、アプリケーションを提供する第一情報処理装置と、第一通信手段を介して前記第一情報処理装置に接続された端末装置と、前記第一通信手段と異なる第二通信手段を介して前記端末装置に接続された第二情報処理装置と、を備え、前記第一情報処理装置は、前記端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータを特定するためのデータ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報を含む応答を、前記第一通信手段により前記端末装置に対して送信する応答送信手段、を備え、前記端末装置は、前記第一通信手段を介して前記第一情報処理装置から受信した前記応答に含まれる前記手順情報を、前記第二通信手段により前記第二情報処理装置に対して送信する送信手段、を備え、前記第二情報処理装置は、処理の対象となり得るデータと当該データを特定する前記データ識別情報とを関連づけて記憶した記憶手段と、前記第二通信手段を介して前記端末装置から前記手順情報を受信し、受信した前記手順情報に含まれる前記データ識別情報が表すデータを前記記憶手段から読み出し、読み出したデータに対して、受信した前記手順情報が表す手順の処理を実行する処理実行手段と、前記処理実行手段による処理の結果を前記第二通信手段により前記端末装置に対して送信する結果送信手段と、を備える、ことを特徴とする情報処理システムである。
請求項12に係る発明は、請求項11に係る発明において、前記第一情報処理装置の前記応答送信手段が送信する前記応答は、前記第二情報処理装置の前記記憶手段にデータを登録するときに実行すべき処理の手順を記述した登録手順情報をさらに含み、前記端末装置の前記送信手段は、さらに、前記応答に含まれる前記登録手順情報を前記第二情報処理装置に対して送信し、前記第二情報処理装置の前記処理実行手段は、さらに、前記端末装置から受信した前記登録手順情報が表す手順の処理に従って、データと当該データの前記識別情報とを関連づけて前記記憶手段に登録する。
請求項13に係る発明は、請求項1から12のいずれか1項に係る発明において、前記処理の対象となるデータは数値を含み、前記手順情報が表す手順の処理は、数値に対する演算を含む。
請求項14に係る発明は、処理の対象となり得るデータと当該データを特定するデータ識別情報とを関連づけて記憶した記憶手段と、端末装置からのアプリケーションに従った処理要求に応じて他の情報処理装置が送信した応答であって、当該処理要求で要求された処理の対象となるデータの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報を含む応答を取得した場合に、当該応答に含まれる前記手順情報中の前記データ識別情報が表すデータを前記記憶手段から読み出し、読み出したデータに対して、前記応答に含まれる前記手順情報が表す手順の処理を実行する処理実行手段と、前記処理実行手段による処理の結果を前記端末装置に対して送信する結果送信手段と、を備えることを特徴とする情報処理装置である。
請求項15に係る発明は、コンピュータに、処理の対象となり得るデータと当該データを特定するデータ識別情報とを関連づけて記憶した記憶手段を参照させ、端末装置からのアプリケーションに従った処理要求に応じて他のコンピュータが送信した応答であって、当該処理要求で要求された処理の対象となるデータの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報を含む応答を取得した場合に、当該応答に含まれる前記手順情報中の前記データ識別情報が表すデータを前記記憶手段から読み出し、読み出したデータに対して、前記応答に含まれる前記手順情報が表す手順の処理を実行するステップと、前記処理の実行の結果を前記端末装置に対して送信するステップと、を実行させるプログラムである。
請求項16に係る発明は、処理対象のデータと当該データを特定するデータ識別情報とを関連づけて記憶した記憶手段を利用可能な端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報を含む応答を、他の情報処理装置に対して第一通信手段により送信する応答送信手段、を備え、前記他の情報処理装置は、前記第一通信手段と異なる第二通信手段により前記端末装置に接続され、前記第一通信手段を介して前記応答を受信し、前記応答に含まれる前記手順情報が表す手順の処理を実行する、ことを特徴とする情報処理装置である。
請求項17に係る発明は、コンピュータに、処理対象のデータと当該データを特定するデータ識別情報とを関連づけて記憶した記憶手段を利用可能な端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報を含む応答を、他の情報処理装置に対して第一通信手段により送信するステップ、を実行させ、前記他の情報処理装置は、前記第一通信手段と異なる第二通信手段により前記端末装置に接続され、前記第一通信手段を介して前記応答を受信し、前記応答に含まれる前記手順情報が表す手順の処理を実行する、ことを特徴とするプログラムである。
請求項18に係る発明は、処理の対象となり得るデータを暗号化した暗号化データと当該暗号化データを特定する識別情報とを関連づけて記憶した記憶手段を備える他の情報処理装置に第一通信手段を介して接続され、前記第一通信手段と異なる第二通信手段を介して端末装置に接続され、前記端末装置からのアプリケーションに従った処理要求に応じて前記他の情報処理装置が送信した応答であって、前記記憶手段から読み出された暗号化データであって前記処理要求で要求された処理の対象となるデータの暗号化データと、当該読み出された暗号化データの前記データ識別情報を含んだ形式で前記要求されたアプリケーションに従った処理の手順を表す手順情報と、を含む応答を、前記第一通信手段を介して受信した場合に、当該応答に含まれる前記暗号化データを復号する復号手段と、前記復号手段による復号後のデータに対して、前記応答に含まれる前記手順情報が表す手順の処理を実行する処理実行手段と、前記処理実行手段による処理の結果を前記第二通信手段により前記端末装置に対して送信する結果送信手段と、を備えることを特徴とする情報処理装置である。
請求項19に係る発明は、処理の対象となり得るデータを暗号化した暗号化データと当該暗号化データを特定する識別情報とを関連づけて記憶した記憶手段を備える他のコンピュータに第一通信手段を介して接続され、前記第一通信手段と異なる第二通信手段を介して端末装置に接続されたコンピュータに、前記端末装置からのアプリケーションに従った処理要求に応じて前記他のコンピュータが送信した応答であって、前記記憶手段から読み出された暗号化データであって前記処理要求で要求された処理の対象となるデータの暗号化データと、当該読み出された暗号化データの前記データ識別情報を含んだ形式で前記要求されたアプリケーションに従った処理の手順を表す手順情報と、を含む応答を、前記第一通信手段を介して受信した場合に、前記応答に含まれる前記暗号化データを復号する復号ステップと、前記復号ステップによる復号後のデータに対して、前記応答に含まれる前記手順情報が表す手順の処理を実行する処理実行ステップと、前記処理実行ステップによる処理の結果を前記第二通信手段により前記端末装置に対して送信する結果送信ステップと、を実行させるプログラムである。
請求項20に係る発明は、処理の対象となり得るデータを暗号化した暗号化データと当該暗号化データを特定する識別情報とを関連づけて記憶した記憶手段と、端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータの前記暗号化データを前記記憶手段から読み出し、読み出した暗号化データと、当該読み出した暗号化データの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報と、を含む応答を、他の情報処理装置に対して第一通信手段により送信する応答送信手段と、を備え、前記他の情報処理装置は、前記第一通信手段と異なる第二通信手段により前記端末装置に接続され、前記暗号化データを復号する復号手段を備える、ことを特徴とする情報処理装置である。
請求項21に係る発明は、コンピュータに、処理の対象となり得るデータを暗号化した暗号化データと当該暗号化データを特定する識別情報とを関連づけて記憶した記憶手段を参照させ、端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータの前記暗号化データを前記記憶手段から読み出し、読み出した暗号化データと、当該読み出した暗号化データの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報と、を含む応答を、他の情報処理装置に対して第一通信手段により送信するステップ、を実行させ、前記他の情報処理装置は、前記第一通信手段と異なる第二通信手段により前記端末装置に接続され、前記暗号化データを復号する復号手段を備える、ことを特徴とするプログラムである。
請求項1、11、14、15、16、又は17に係る発明によると、ネットワーク経由でアプリケーションを提供する技術において、処理対象のデータのセキュリティを確保すると共に、アプリケーションに従った処理における制約を、本構成を有さない場合と比べて、低減することができる。
請求項2に係る発明によると、処理対象のデータを記憶する記憶手段であってアプリケーションを提供する第一情報処理装置と異なる第二情報処理装置が備える記憶手段においてデータの登録を行った旨を、第一情報処理装置に通知できる。
請求項3又は12に係る発明によると、処理対象のデータを記憶する記憶手段であってアプリケーションを提供する第一情報処理装置と異なる第二情報処理装置が備える記憶手段に対するデータの登録を、そのアプリケーションに応じた処理に従って実行できる。
請求項4に係る発明によると、アプリケーションを提供する第一情報処理装置と異なる第二情報処理装置で実行された、当該アプリケーションに応じた処理の結果を、当該アプリケーションに応じた表示の態様で端末装置において表示できる。
請求項5に係る発明によると、第一情報処理装置及び第二情報処理装置のいずれの記憶手段に処理対象のデータが保存されるかに応じて、アプリケーションに従った処理を第一情報処理装置又は第二情報処理装置で実行できる。
請求項6に係る発明によると、端末装置からの入力要求に応じて、第一情報処理装置が保持すべきデータは第一情報処理装置の記憶手段に、第二情報処理装置が保持すべきデータは第二情報処理装置の記憶手段に登録できる。
請求項7に係る発明によると、アプリケーションを提供する第一情報処理装置の記憶手段には暗号化データを、第二情報処理装置の記憶手段には非暗号化データを保存させ、当該アプリケーションに応じた処理を第二情報処理装置で実行できる。
請求項8に係る発明によると、端末装置からの入力要求に応じて、第二情報処理装置が保持すべきデータを第二情報処理装置の記憶手段に登録し、第一情報処理装置が保持すべきデータについては、暗号化した上で第一情報処理装置の記憶手段に登録できる。
請求項9、18、19、20、又は21に係る発明によると、アプリケーションを提供する第一情報処理装置の記憶手段には暗号化データのみを保存させつつ、データに対してアプリケーションに従った処理を行い、その結果を端末装置で利用できる。
請求項10に係る発明によると、端末装置からの入力要求に応じて、アプリケーションを提供する第一情報処理装置の記憶手段に暗号化データを登録できる。
請求項13に係る発明によると、アプリケーションを提供する第一情報処理装置と異なる第二情報処理装置において、アプリケーションに応じた数値の演算を実行できる。
第一実施形態の情報処理システムの概略構成の例を示すブロック図である。 入力要求の内容の例を示す図である。 入力通知の内容の例を示す図である。 アプリケーションサーバが端末に対して返す応答の内容の例を模式的に示す図である。 HTMLにおいて表示単位識別子をデータの計算結果で置換した結果の例を示す図である。 第一実施形態の情報処理システムの動作の例を示すシーケンス図である。 第一実施形態の情報処理システムの他の動作の例を示すシーケンス図である。 第二実施形態の情報処理システムの概略構成の例を示すブロック図である。 アプリケーションサーバが端末に対して返す応答の内容の他の例を模式的に示す図である。 第二実施形態の情報処理システムの動作の例を示すシーケンス図である。 第二実施形態の情報処理システムの他の動作の例を示すシーケンス図である。 第三実施形態の情報処理システムの概略構成の例を示すブロック図である。 アプリケーションサーバが端末に対して返す応答の内容の他の例を模式的に示す図である。 プロキシサーバからアプリケーションサーバに対して送信される入力要求の例を模式的に示す図である。 第三実施形態の情報処理システムの動作の例を示すシーケンス図である。 第三実施形態の情報処理システムの他の動作の例を示すシーケンス図である。 第四実施形態の情報処理システムの概略構成の例を示すブロック図である。 アプリケーションサーバが端末に対して返す応答の内容のさらに他の例を模式的に示す図である。 第四実施形態の情報処理システムの動作の例を示すシーケンス図である。 第四実施形態の情報処理システムの他の動作の例を示すシーケンス図である。 コンピュータのハードウエア構成の例を示すブロック図である。
以下、図面を参照して本発明の実施形態の例を説明する。
<第一実施形態>
図1に、第一実施形態における情報処理システムの概略構成の例を示す。図1の例のシステムは、アプリケーションサーバ10とプロキシサーバ20とがインターネット30を介して接続され、プロキシサーバ20と端末40とがネットワーク50を介して接続された構成を有する。ネットワーク50は、インターネット30と異なる通信手段であり、例えば、LAN(Local Area Network)やイントラネットなどであってよい。インターネット30には不特定の装置が接続され得るのに対し、ネットワーク50には、ネットワーク50の管理者により管理される特定の装置のみが接続される。
端末40は、アプリケーションサーバ10が提供するアプリケーションを利用する装置である。端末40がアプリケーションサーバ10と通信する際には、プロキシサーバ20が端末40の代理としてインターネットに接続し、アプリケーションサーバ10と端末40との間の通信を可能とする。言い換えると、端末40は、ネットワーク50、プロキシサーバ20、及びインターネット30を介してアプリケーションサーバ10と通信する。
アプリケーションサーバ10は、インターネット30を介してアプリケーションを提供するサーバ装置である。アプリケーションサーバ10は、配信部100を備える。配信部100は、プロキシサーバ20及びインターネット30を介して端末40からのHTML要求を受信すると、スクリプト62とHTML64とを含む応答60を返す。スクリプト62は、アプリケーションサーバ10が提供するアプリケーションの処理の手順を記述したものである。この記述は、処理の対象となるデータを特定するためのデータ識別子と、処理対象のデータに対して実行すべき計算の手順と、を含む。データ識別子は、後述のプロキシサーバ20が備えるデータベースであるDB202に記憶されたデータを特定する識別子である。DB202中のデータのデータ識別子は、例えば、端末40がアプリケーションサーバ10のアプリケーションの利用を開始する前(初期設定を行うときなど)に、予めアプリケーションサーバ10に通知しておけばよい。また、後に詳述するが、アプリケーションによる処理の間にDB202に端末40よりデータが入力されると、入力されたデータのデータ識別子がインターネット30を介してプロキシサーバ20からアプリケーションサーバ10に対して通知される。HTML64は、端末40の表示装置に表示させる表示画面の態様を制御するための情報であり、HTML(HyperText Markup Language)で記述される。
プロキシサーバ20は、ネットワーク50に接続された装置と、インターネット30上の他の装置と、の間の通信を中継するサーバ装置である。プロキシサーバ20は、プロキシ部200、DB202、データ計算部204、HTML置換部206、及び入力データ処理部208を備える。
プロキシ部200は、ネットワーク50に接続された装置の代理でインターネット30上の装置との間の通信を行う。例えば、プロキシ部200は、端末40からアプリケーションサーバ10宛に送信されたHTML要求を、ネットワーク50を介して取得し、取得した要求をアプリケーションサーバ10に対してインターネット30経由で送信する。そして、このHTML要求に対する応答60をアプリケーションサーバ10から受信し、受信した応答60をデータ計算部204に渡す。さらに、プロキシ部200は、データ計算部204及びHTML置換部206で応答60を処理した結果の応答66を、端末40に対し、ネットワーク50を介して送信する。また例えば、プロキシ部200は、端末40からアプリケーションサーバ10宛のデータの入力要求70を受け取ることもある。この場合、プロキシ部200は、入力要求70を入力データ処理部208に渡して処理させ、この処理の結果の入力通知72をアプリケーションサーバ10に対し、インターネット30を介して送信する。プロキシ部200は、また、ネットワーク50において送受信される通信データを一元的に管理し、ネットワーク50から送信される情報の内容を制限したり、ネットワーク50に対する不正アクセスを防止したりする機能を有していてもよい。
DB202は、端末40が利用するアプリケーションの処理の対象となるデータを記憶したデータベースである。DB202に記憶される各データには、システム内で一意なデータ識別子が付される。各データの値は、数値又は文字列であり得る。本実施形態の例では、DB202に記憶されたデータの少なくとも一部は、その値として文字列ではなく数値を有するものとする。
入力データ処理部208は、端末40からの入力要求70を処理する。入力要求70は、アプリケーションサーバ10が提供するアプリケーションの処理対象となるデータの新規登録又は更新の要求、つまり、DB202へのデータの入力の要求を表す。入力要求70は、例えば、端末40においてデータの新規登録又は更新を指示するユーザの入力を受け付けた場合に、端末40で生成されてアプリケーションサーバ10宛に送信される。この入力要求70を受け取ったプロキシサーバ20のプロキシ部200は、受け取った入力要求70を入力データ処理部208に処理させる。
図2Aは、入力要求70の内容の一例を模式的に示す図である。図2Aの入力要求70中の「table: dataA = 100 & dataB = 200」は、データ識別子とデータとを関連づけるDB202中のテーブルのうちテーブル名が「table」であるテーブルにおいて、データ識別子が「dataA」であるデータの値を「100」に設定し、かつ、データ識別子が「dataB」であるデータの値を「200」に設定する要求を表す。入力データ処理部208は、入力要求70に含まれる実データ(データの値)をDB202に登録する。図2Aの例では、データ識別子「dataA」のデータとして値「100」をDB202に登録し、データ識別子「dataB」のデータとして値「200」を登録する。そして、入力データ処理部208は、DB202の登録済みのデータの値を入力要求70から削除することで、入力が行われた旨を表す入力通知72を生成し、プロキシ部200に渡す。プロキシ部200は、入力通知72をアプリケーションサーバ10に対して送信する。
図2Bは、図2Aの入力要求70に従ってデータをDB202に登録した後に生成される入力通知72の例を模式的に示す図である。図2Bの入力通知72には、図2Aの入力要求70中のテーブル名「table」及びデータ識別子「dataA」,「dataB」は含まれるが、これらのデータ識別子のデータの実際の値「100」,「200」は含まれない。入力通知72は、データ識別子「dataA」,「dataB」のデータがDB202に登録された旨を表すだけである。
データ計算部204は、アプリケーションサーバ10からの応答60に含まれるスクリプト62で記述される処理を実行する。例えば、スクリプト62中のデータ識別子が表すデータをDB202から読み出し、読み出したデータに対して、スクリプト62で記述された計算を実行する。以下、図3Aを参照し、データ計算部204の処理の具体例を説明する。
図3Aは、応答60に含まれるスクリプト62及びHTML64の内容の例を模式的に示す図である。図3Aに例示するスクリプト62は、表示単位識別子と計算式とを関連づけた構成を備える。表示単位識別子は、端末40の表示装置の表示画面において、1つの値を表示させる領域を特定する識別子である。計算式は、表示単位識別子が表す領域に表示させる値を求める計算の手順を表す。計算式において、計算の対象となるデータは、データ識別子によって表される。計算式が表す計算は、例えば、数値の四則演算や、複数のデータについての統計量(合計、平均、標準偏差、又は分散など)を求める計算などであってよい。また、計算式は、必ずしも実際に何らかの演算を行う式でなくてもよい。例えば、データ識別子のデータの値をそのまま表示単位識別子の領域に表示させることを表す計算式が表示単位識別子に関連づけられることもある。図3Aの例において、表示単位識別子「value1」には、SQL(Structured Query Language)で記述された計算式「SELECT dataA + dataA * 1000 FROM table」が関連づけられている。表示単位識別子「value2」には、SQLの計算式「SELECT dataB + dataB * 1000 FROM table」が関連づけられている。これらの計算式において、「dataA」,「dataB」は、上述のデータ識別子であり、「table」は、DB202中のテーブルのテーブル名を表す。これらの計算式は、テーブル「table」中のデータ識別子(「dataA」又は「dataB」)に関連づけられた値をxとすると、「x + (x×1000) = 1001x」の値を求める式を表す。図3Aの例のスクリプト62をデータ計算部204が処理する場合、データ計算部204は、まず、表示単位識別子「value1」に関連づけられた計算式に含まれるデータ識別子「dataA」に対応する値をDB202中のテーブル「table」から取得する。本例では、図2Aの例の入力要求70に従ってデータ識別子「dataA」の値としてDB202に登録された「100」が取得されるとする。そして、データ計算部204は、取得した値「100」を処理対象として上述の計算式を計算し、値「100100 (= 100 + 100×1000)」を求める。同様に、表示単位識別子「value2」に関しては、データ識別子「dataB」に対応する値「200」(図2Aの入力要求70の「dataB = 200」を参照)がDB202中のテーブル「table」から取得され、上述の計算式に従った計算が行われて、値「200200 (= 200 + 200×1000)」が求められる。
なお、図3Aに例示するHTML64は、表示の態様を定めるHTMLの記述において、スクリプト62中の表示単位識別子を含む。図3Aにおいて、スクリプト62中の表示単位識別子「value1」,「value2」は、HTML64中の「value1」,「value2」に対応する。また、図3Aでは、HTML64において、表示単位識別子を含む記述のみを図示する。しかしながら、HTML64は、アプリケーションに従った計算の結果の表示の態様だけでなく、ユーザによる指示を受け付ける操作ボタン又はデータの入力フォームなど、アプリケーションの処理においてユーザの操作を可能とする要素の表示の態様を定める記述も含んでいてよい。
再び図1を参照し、HTML置換部206は、HTML64においてスクリプト62中の表示識別子が記述された部分を、データ計算部204の計算結果に置換する。図2Aの例の応答60の場合、HTML置換部206は、HTML64中の各表示単位識別子を、当該表示単位識別子に対応づけられた計算式に従ってデータ計算部204が計算した結果の値で置換する。例えば、図3Aを参照する上述の例の場合、HTML64中の表示単位識別子「value1」,「value2」の計算の結果の値は、それぞれ、「100100」,「200200」であり、HTML置換部206は、HTML64中の「value1」,「value2」を、それぞれ、「100100」,「200200」に置き換える。このような置換を行った結果のHTML66の例を図3Bに示す。図3A及び図3Bを参照する本例では、計算式が計算結果として1つの数値を返すため、対応する表示単位識別子と置換される計算結果は1つの数値を含む。対応する計算式が複数の数値を結果として返すものであれば、表示単位識別子と置換される計算結果は複数の数値を含んでいてよい。HTML置換部206は、置換後のHTML66をプロキシ部200に渡す。プロキシ部200は、置換後のHTML66を、端末40のアプリケーションサーバ10への要求に対する応答として端末40に送信する。
以下、第一実施形態のシステムの動作の例を説明する。
図4は、端末40が入力要求を行う場合のシステムの動作の例を示すシーケンス図である。図4の例のシーケンスは、例えば、端末40において、入力装置(図示しない)を介してユーザからのデータ入力指示を受け付けた場合に開始される。図4の例のシーケンスの開始の前に、例えば、端末40がプロキシサーバ20を介してアプリケーションサーバ10にアクセスし、アプリケーションで用いるデータの入力を受け付ける表示画面を表示させるHTMLをアプリケーションサーバ10からプロキシサーバ20を介して取得し、取得したHTMLに従ったHTMLを端末40の表示装置(図示しない)で表示させておいてもよい。ユーザによるデータの入力指示は、このような表示画面に従って行われるものであってよい。
図4を参照し、まず、端末40は、ネットワーク50を用いて、アプリケーションサーバ10宛に入力要求70を送信する(ステップS30)。入力要求70は、入力の対象となるデータのデータ識別子及び入力される値を含む。端末40から送信された入力要求70は、プロキシサーバ20で受信される。
プロキシサーバ20のプロキシ部200は、端末40から受信した入力要求70を入力データ処理部208に渡す。入力データ処理部208は、入力要求70に含まれるデータ識別子及び入力値を互いに関連づけてDB202に登録する(ステップS32)。
DB202へのデータの登録の後、入力データ処理部208は、DB202へ登録済みのデータの実際の値を入力要求70から削除することで、入力通知72を生成する(ステップS34)。生成された入力通知72は、プロキシ部200に渡される。
プロキシ部200は、入力データ処理部208から受け取った入力通知72を、インターネット30を介してアプリケーションサーバ10に対して送信する(ステップS36)。
図4の例のシーケンスにより、アプリケーションサーバ10は、DB202へのデータの入力処理の完了を把握する。入力通知72を受けたアプリケーションサーバ10は、例えば、アプリケーションの処理に応じて、端末40に新たな表示画面を表示させるためのHTMLを生成して端末40宛に返送してもよい。
図5は、端末40がアプリケーションサーバ10に対してHTML要求を行ったときのシステムの動作の例を示すシーケンス図である。
まず、端末40から、アプリケーションサーバ10宛にHTML要求(GET命令)が送信される(ステップS10)。このHTML要求は、アプリケーションサーバ10が提供するアプリケーションによる処理の実行の要求を含む。このHTML要求は、ネットワーク50を介してプロキシサーバ20で受信され、プロキシサーバ20のプロキシ部200によってインターネット30を介してアプリケーションサーバ10に対して送信される(ステップS12)。
HTML要求を受信したアプリケーションサーバ10は、自身が提供するアプリケーションに応じて、スクリプト62及びHTML64を含む応答60を生成し、生成した応答60を端末40宛に返送する(ステップS14)。
応答60は、インターネット30を介してプロキシサーバ20で受信される。プロキシサーバ20のプロキシ部200は、応答60をデータ計算部204に渡し、データ計算部204によって応答60中のスクリプト62に記述された処理が実行される(ステップS16)。ステップS16で、データ計算部204は、スクリプト62中の表示単位識別子のそれぞれについて、当該表示単位識別子に対応づけられた計算式に従って、DB202中のデータを用いた計算を行う。
データ計算部204は、ステップS16の処理実行の結果と、応答60中のHTML64と、をHTML置換部206に渡し、HTML置換部206は、HTML64中の表示単位識別子を対応するステップS16の計算結果に置換する(ステップS18)。
プロキシ部200は、置換後のHTML66をHTML置換部206から受け取り、受け取ったHTML66を、アプリケーションサーバ10からの応答として端末40にネットワーク50を介して送信する(ステップS20)。
このHTML66を受け取った端末40において、例えば、webブラウザ機能(図示しない)などにより、HTML66に従った表示画面が表示装置に表示される(ステップS22)。
図5の例の動作により、端末40からのHTML要求に応じて、アプリケーションに従った処理の結果の値を含む表示画面が端末40の表示装置に表示される。端末40のユーザは、この表示画面を確認して、例えば、表示画面中の操作ボタンなどを入力装置(マウス、キーボードなど)によって操作することで、さらなる処理の実行を指示することもある。この場合、ユーザの指示に応じたHTML要求が端末40で生成されてアプリケーションサーバ10宛に送信され、図5の例のシーケンスの動作が再度行われる。
なお、図5の例のシーケンスの動作の後、端末40において、さらなるデータの入力指示を受け付けた場合、入力要求を処理する図4の例のシーケンスの動作が再度行われる。
以上で説明した第一実施形態の例では、アプリケーションサーバ10において処理対象のデータを処理することはないけれども、処理対象のデータに対してアプリケーションサーバ10が提供するアプリケーションに従った処理が実行され、その結果が端末40に送信される。
<第二実施形態>
図6に、第二実施形態における情報処理システムの概略構成の例を示す。図6に例示する第二実施形態のシステムは、図1に例示する第一実施形態のシステムと同様、アプリケーションサーバ10とプロキシサーバ20とがインターネット30を介して接続され、プロキシサーバ20と端末40とがネットワーク50を介して接続された構成を有する。図6において、図1と同様の構成要素には図1と同様の符号を付す。以下、図6の例のシステムについて、図1の例のシステムとの相違点を中心に説明する。
図6の例のシステムでは、アプリケーションサーバ10が提供するアプリケーションの処理対象となるデータは、プロキシサーバ20ではなく、アプリケーションサーバ10のDB102に記憶される。ただし、アプリケーションサーバ10のDB102において、データは暗号化された状態で格納される。DB102に記憶される暗号化データは、プロキシサーバ20において復号可能であるが、アプリケーションサーバ10においては復号不可能である形式で暗号化されている。
アプリケーションサーバ10の配信部100は、プロキシサーバ20及びインターネット30を介して端末40からのHTML要求を受信すると、スクリプト62、HTML64及び暗号化データ67を含む応答63を生成して端末40宛に送信する。
図7に、応答63の内容の例を模式的に示す。図7に例示する応答63に含まれるスクリプト62及びHTML64は、それぞれ、図3Aの例の応答60に含まれるスクリプト62及びHTML64と同様のものであってよい。応答63は、スクリプト62の計算式の処理の対象となるデータの暗号化データ67を含む。暗号化データ67は、データ識別子と、それに対応するデータの暗号化データと、を含む。アプリケーションサーバ10の配信部100は、スクリプト62の計算式に含まれるデータ識別子の暗号化データをDB102から読み出し、当該データ識別子と読み出した暗号化データとを関連づけて暗号化データ67とする。
図6の説明に戻り、プロキシサーバ20は、図1の例のプロキシサーバ20と同様のプロキシ部200、データ計算部204、及びHTML置換部206に加えて、復号部210及び暗号化部212を備える。復号部210は、アプリケーションサーバ10からインターネット30を介して受信した応答63に含まれる暗号化データ67を復号し、復号後のデータをデータ計算部204に渡す。データ計算部204は、復号後のデータに対して、スクリプト62に従った処理を実行する。暗号化部212は、端末40から受け取った入力要求70に含まれるデータの値を暗号化し、暗号化されたデータを含む入力要求73をプロキシ部200に渡す。なお、暗号化部212は、復号部210ではデータを復号可能であるが、アプリケーションサーバ10では復号不可能である形式でデータを暗号化する。暗号化データを含む入力要求73は、インターネット30を介してアプリケーションサーバ10に対して送信され、アプリケーションサーバ10において、暗号化データがそれぞれのデータ識別子と共にDB102に登録される。
以下、第二実施形態のシステムの動作の例を説明する。
図8は、端末40が入力要求を行う場合のシステムの動作の例を示すシーケンス図である。図8の例のシーケンスは、例えば、端末40において、プロキシサーバ20を介してアプリケーションサーバ10から取得された、データの入力を受け付ける表示画面のHTMLに従った表示を行い、その表示画面を確認したユーザがデータの入力を指示した場合に開始される。
図8を参照し、端末40がアプリケーションサーバ10に対する入力要求70を送信する(ステップS30)。入力要求70は、入力の対象となるデータのデータ識別子及び入力される値を含む。端末40から送信された入力要求70は、プロキシサーバ20で受信される。
プロキシサーバ20のプロキシ部200は、端末40から受信した入力要求70を暗号化部212に渡し、暗号化部212により、入力の対象となるデータの値が暗号化される(ステップS31)。
暗号化部212は、データ識別子及び対応する入力値の暗号化データを含む入力要求73をプロキシ部200に渡し、プロキシ部200により、入力要求73はアプリケーションサーバ10に対して送信される(ステップS33)。
入力要求73を受信したアプリケーションサーバ10は、入力要求73に含まれる暗号化データを対応するデータ識別子と共にDB102に登録する(ステップS35)。
図9は、端末40がアプリケーションサーバ10に対してHTML要求を行ったときのシステムの動作の例を示すシーケンス図である。
まず、端末40から、アプリケーションサーバ10宛にHTML要求(GET命令)が送信される(ステップS10)。このHTML要求は、ネットワーク50を介してプロキシサーバ20で受信され、プロキシサーバ20のプロキシ部200によってインターネット30を介してアプリケーションサーバ10に対して送信される(ステップS12)。
HTML要求を受信したアプリケーションサーバ10は、自身が提供するアプリケーションに応じて、スクリプト62、HTML64及び暗号化データ67を含む応答63を生成し、生成した応答63を端末40宛に返送する(ステップS14)。
応答63は、インターネット30を介してプロキシサーバ20で受信される。プロキシサーバ20のプロキシ部200は、応答60を復号部210に渡し、復号部210により、応答63に含まれる暗号化データ67が復号される(ステップS15)。
復号部210は、暗号化データ67を復号した結果のデータと共に応答63中のスクリプト62及びHTML64をデータ計算部204に渡し、データ計算部204によって、スクリプト62に記述された処理が実行される(ステップS16)。
HTMLの置換(ステップS18)、置換後のHTMLの端末40への送信(ステップS20)、及び、端末40における表示処理(ステップS22)は、それぞれ、図5の例のシーケンス図を参照して説明したステップS18,S20,S22の処理と同様であってよい。
以上で説明した第二実施形態の例では、アプリケーションサーバ10のDB102に記憶されるデータは暗号化データであることからアプリケーションサーバ10では処理対象のデータの実際の値は把握されないが、アプリケーションサーバ10が提供するアプリケーションに従った処理がデータに対して実行され、その結果が端末40に送信される。
<第三実施形態>
図10に、第三実施形態における情報処理システムの概略構成の例を示す。図10に例示する第三実施形態のシステムは、図1及び図6にそれぞれ例示する第一実施形態及び第二実施形態と同様、アプリケーションサーバ10とプロキシサーバ20とがインターネット30を介して接続され、プロキシサーバ20と端末40とがネットワーク50を介して接続された構成を有する。図10において、図1と同様の構成要素には図1と同様の符号を付す。以下、図10の例のシステムについて、図1の例のシステムとの相違点を中心に説明する。
図10の例のシステムでは、アプリケーションサーバ10が提供するアプリケーションの処理対象となるデータの一部がプロキシサーバ20のDB202に記憶され、処理対象となるデータの他の一部がアプリケーションサーバ10のDB102に記憶される。アプリケーションサーバ10及びプロキシサーバ20は、それぞれ、処理対象のデータのうちいずれが自身のDB102,202に記憶(保存)されるかを表すデータ保存場所情報を参照して、データに対する処理を行う。
図10の例のアプリケーションサーバ10は、配信部100に加えて、DB102、保存場所情報記憶部104、応答生成部106、及びデータ入力部108を備える。
配信部100は、ネットワーク50、プロキシサーバ20、及びインターネット30を介して端末40からのHTML要求を受信すると、応答生成部106に対して応答の生成を依頼し、この依頼に応じて応答生成部106が生成した応答を端末40宛に送信する。
DB102は、アプリケーションサーバ10が提供するアプリケーションの処理の対象となるデータの一部を記憶したデータベースである。DB102に登録される各データには、システム内で一意なデータ識別子が付される。
保存場所情報記憶部104は、処理対象のデータのそれぞれについて、アプリケーションサーバ10のDB102に記憶されるか、プロキシサーバ20のDB202に記憶されるかを表す保存場所情報を記憶する。保存場所情報は、例えば、DB102又はDB202に登録済みのデータのデータ識別子のそれぞれと、当該データの保存場所(DB102又はDB202)とを対応づける情報を含む。保存場所情報は、さらに、データの種類に応じた保存場所を含んでいてよい。例えば、DB102及びDB202のいずれにも未登録のデータに対して新たにデータ識別子を付与した場合に、当該未登録のデータの種類に応じて、保存場所情報が表す保存場所(DB102又はDB202)に、当該新たなデータ識別子と共に当該未登録のデータが登録される。保存場所情報記憶部104は、また、上述の例のような保存場所情報を、アプリケーションの利用者ごとに記憶する。
応答生成部106は、端末40からのHTML要求を受信した配信部100から応答の生成を依頼されると、端末40宛に送信する応答65を生成する。応答65は、例えば次の手順により生成される。まず、応答生成部106は、アプリケーションに応じたスクリプト及びHTMLを生成する。このスクリプト及びHTMLは、図3Aを参照して説明したスクリプト62及びHTML64と同様のものであってよい。次に、応答生成部106は、保存場所情報記憶部104を参照し、スクリプト中の表示単位識別子それぞれに対応する計算式のうち、アプリケーションサーバ10のDB102に記憶されたデータのデータ識別子を含み、プロキシサーバ20のDB202に記憶されたデータのデータ識別子を含まない計算式を特定する。そして、特定した計算式のそれぞれについて、DB102に記憶されたデータを用いて当該計算式に従った計算を行う。さらに、各計算式に従った計算結果によって、HTML中の対応する表示単位識別子を置換する。HTMLにおいて置換された表示単位識別子及びこれに対応する計算式(つまり、計算実行済みの計算式)は、スクリプトから削除される。応答生成部106は、また、保存場所情報記憶部104を参照し、プロキシサーバ20のDB202に記憶されるデータのデータ識別子を含む入力データテーブルを生成する。生成される入力データテーブルは、さらに、DB202に記憶させるべきデータの種類を表す情報を含んでいてよい。応答生成部106は、以上の例の手順の処理の結果のスクリプト62´、HTML64´、及び入力データテーブル69を含む応答65を配信部100に返す。応答65は、配信部100により端末40宛に送信され、プロキシサーバ20で受信される。なお、以上の例において、保存場所情報記憶部104を参照するとき、応答生成部106は、HTML要求の要求元の端末40の利用者に対応する保存場所情報を参照する。
図11に、応答生成部106が生成する応答65の内容の例を模式的に示す。図11に例示するスクリプト62´及びHTML64´は、図3Aの例のスクリプト62及びHTML64の生成の後、アプリケーションサーバ10のDB102に記憶されたデータを用いた計算を行った結果として生成されるスクリプト及びHTMLの一例である。本例では、データ識別子「dataA」のデータはプロキシサーバ20のDB202に記憶され、データ識別子「dataB」のデータはアプリケーションサーバ10のDB102に記憶されるものとする。図3Aを参照し、表示単位識別子「value2」に対応する計算式「SELECT dataB + dataB * 1000 FROM table」は、DB102に記憶されたデータのデータ識別子「dataB」を含み、DB202に記憶されたデータのデータ識別子「dataA」を含まない。この例において、応答生成部106により計算式「SELECT dataB + dataB * 1000 FROM table」に従った計算が実行され、その結果の値が「200200」であるとすると、図15に例示するように、スクリプト62´では、表示単位識別子「value2」及び対応する計算式「SELECT dataB + dataB * 1000 FROM table」が削除され、HTML64´では、表示単位識別子「value2」が計算結果の値「200200」で置換される。なお、図11の例の入力データテーブル69は、プロキシサーバ20のDB202にデータ識別子が「dataA」であるデータが記憶されることを表す。また、入力データテーブル69は、さらに、DB202に記憶させるべきデータの種類を表す情報(図示しない)を含んでいてよい。
また、HTML要求に応じて最初に生成した、アプリケーションに応じたスクリプトにおいて、DB102に記憶されたデータのデータ識別子とDB202に記憶されたデータのデータ識別子との両方を含む計算式が存在する場合、応答生成部106は、当該計算式中のDB102に記憶されたデータのデータ識別子について、当該データ識別子のデータをDB102から読み出し、読み出したデータの値をさらに含む応答65を生成すればよい。
再び図10を参照し、データ入力部108は、端末40からの入力要求において、アプリケーションサーバ10のDB102に記憶されるデータのデータ識別子を指定して値を入力することが要求されている場合に、当該データ識別子の値として入力要求中の値をDB102に登録する。
図10の例のプロキシサーバ20は、図1の例と同様のプロキシ部200、DB202、データ計算部204、HTML置換部206、及び入力データ処理部208に加えて、入力データテーブル記憶部220を備える。
プロキシ部200は、インターネット30を介してアプリケーションサーバ10から端末40宛の応答65を受信すると、応答65に含まれる入力データテーブル69を入力データテーブル記憶部220に登録し、スクリプト62´及びHTML64´をデータ計算部204に渡す。これにより、入力データテーブル記憶部220には、プロキシサーバ20のDB202に記憶されるデータのデータ識別子が登録されることになる。また、プロキシ部200は、応答65にアプリケーションサーバ10のDB102中のデータのデータ識別子に関連づけられたデータが含まれている場合、当該データをさらにデータ計算部204に渡す。
データ計算部204及びHTML置換部206は、図1を参照して説明したのと同様の処理により、HTML64´中の表示単位識別子をスクリプト62´中の計算式に従った計算結果で置換したHTML66を生成する。データ計算部204は、DB202中のデータのデータ識別子のみを含む計算式については、図1の例のデータ計算部204と同様、DB202から各データ識別子のデータを読み出して計算を実行する。DB202中のデータのデータ識別子と共にDB102中のデータのデータ識別子を含む計算式については、DB202から読み出したデータと、応答65に含まれるDB102中のデータ識別子に関連づけられたデータと、を用いて計算を実行する。なお、置換後のHTML66は、プロキシ部200によりネットワーク50を介して端末40に対して送信される。
入力データ処理部208は、ネットワーク50を介して端末40からのデータの入力要求70をプロキシ部200で受信した場合に、この入力要求70をプロキシ部200から受け取って、要求に応じた処理を行う。例えば、入力データ処理部208は、まず、入力データテーブル記憶部220を参照し、入力要求70に含まれるデータ識別子のうち、DB202に記憶されるデータのデータ識別子を特定する。そして、入力要求70において特定したデータ識別子のデータの値として入力するように要求されている値を、当該データ識別子のデータの値としてDB202に登録する。その後、入力データ処理部208は、DB202に登録したデータのデータ識別子及びその入力値を入力要求70から削除する。この削除後の入力要求75は、アプリケーションサーバ10のDB102に記憶されるデータのデータ識別子とその入力値とを含み得る。削除後の入力要求75は、プロキシ部200により、インターネット30を介してアプリケーションサーバ10に対して送信される。
図12に、削除後の入力要求75の内容の例を示す。図12は、入力データテーブル記憶部220に図11の例の入力データテーブル(データ識別子「dataA」を含む)が記憶されている場合に、図3Aの例の入力要求70(table: dataA = 100 & dataB = 200)をプロキシサーバ20が受信して入力データ処理部208で処理した場合の例である。入力データ処理部208は、入力データテーブル記憶部220を参照し、入力要求70に含まれるデータ識別子「dataA」,「dataB」のうち、DB202に記憶されるデータのデータ識別子として「dataA」を特定する。そして、「dataA」の値としてDB202のテーブル「table」に「100」を登録し、入力要求70から「dataA = 100」の部分を削除し、図12の例の入力要求75(table: dataB = 200)を生成する。入力要求75は、アプリケーションサーバ10のデータ入力部108において処理され、DB102のテーブル「table」において、データ識別子「dataB」の値として「200」が登録される。
なお、削除後の入力要求75の他の例として、DB202に登録済みのデータの値だけ削除し、登録済みのデータのデータ識別子「dataA」は入力要求75中に残しておいてもよい。
また、端末40から受信した入力要求70に含まれるデータ識別子のすべてがDB202に記憶されるデータのデータ識別子である場合、削除後の入力要求75の送信を省略するか、又は、DB202においてデータの入力を行った旨を表す入力通知をアプリケーションサーバ10に対して送信すればよい。
以下、第三実施形態のシステムの動作の例を説明する。
図13は、端末40が入力要求を行う場合のシステムの動作の例を示すシーケンス図である。図13の例のシーケンスは、例えば、端末40において、プロキシサーバ20を介してアプリケーションサーバ10から取得された、データの入力を受け付ける表示画面のHTMLに従った表示を行い、その表示画面を確認したユーザがデータの入力を指示した場合に開始される。
図13を参照し、まず、端末40は、ネットワーク50を用いて、アプリケーションサーバ10宛に入力要求70を送信する(ステップS30)。入力要求70は、入力の対象となるデータのデータ識別子及び入力される値を含む。端末40から送信された入力要求70は、プロキシサーバ20で受信される。
プロキシサーバ20のプロキシ部200は、端末40から受信した入力要求70を入力データ処理部208に渡す。入力データ処理部208は、入力要求70に含まれるデータ識別子のうち入力データテーブル記憶部220に記憶されたデータ識別子に対応する入力値を当該データ識別子のデータの値としてDB202に登録する(ステップS32)。
DB202へのデータの登録の後、入力データ処理部208は、DB202へ登録済みのデータのデータ識別子及びその値を入力要求70から削除した入力要求75を生成する(ステップS37)。生成された入力要求75は、プロキシ部200に渡される。
プロキシ部200は、入力データ処理部208から受け取った入力要求75を、インターネット30を介してアプリケーションサーバ10に対して送信する(ステップS39)。
入力要求75を受信したアプリケーションサーバ10において、データ入力部108は、入力要求75に含まれるデータ識別子及び入力値をDB102に登録する(ステップS41)。
図14は、端末40がアプリケーションサーバ10に対してHTML要求を行ったときのシステムの動作の例を示すシーケンス図である。
まず、端末40から、アプリケーションサーバ10宛にHTML要求(GET命令)が送信される(ステップS10)。このHTML要求は、ネットワーク50を介してプロキシサーバ20で受信され、プロキシサーバ20のプロキシ部200によってインターネット30を介してアプリケーションサーバ10に対して送信される(ステップS12)。
HTML要求を受信したアプリケーションサーバ10において、スクリプト62´、HTML64´、及び入力データテーブル69を含む応答65が生成される(ステップS13)。ステップS13では、アプリケーションサーバ10の応答生成部106により、まず、アプリケーションに応じた処理の手順を記述したスクリプト及び端末40における表示の態様を表すHTMLが生成される。そして、保存場所情報記憶部104を参照し、スクリプト62中の計算式のうち、(アプリケーションサーバ10の)DB102中のデータのデータ識別子を含むが(プロキシサーバ20の)DB202中のデータのデータ識別子を含まない計算式を特定し、DB102中のデータを用いて、特定した計算式の計算を実行する。次に、HTML中の対応する表示単位識別子を前述の計算の結果で置換したHMTL64´を生成し、計算済みの計算式及び対応する表示単位識別子をスクリプトから削除してスクリプト62´を生成する。なお、DB102及びDB202の両方のデータのデータ識別子が含まれる計算式がスクリプト中に存在する場合、応答生成部106は、その計算式中のDB102のデータのデータ識別子に関連づけられたデータをDB102から読み出す。また、応答生成部106は、保存場所情報記憶部104を参照し、プロキシサーバ20のDB202に記憶されるデータのデータ識別子を含む入力データテーブル69を生成する。
アプリケーションサーバ10の配信部100は、ステップS13で応答生成部106が生成したスクリプト62´、HTML64´、及び入力データテーブル69を含む応答65を端末40宛に返送する(ステップS14)。ステップS13で、DB102及びDB202中の両方のデータを用いる計算式に関してDB102中のデータを読み出していた場合、応答65には、当該DB102から読み出されたデータも含まれる。
応答65は、インターネット30を介してプロキシサーバ20で受信される。プロキシサーバ20のプロキシ部200は、応答65中の入力データテーブル69を入力データテーブル記憶部220に登録し、応答65中のスクリプト62´及びHTML64´をデータ計算部204に渡す。データ計算部204により、スクリプト62´に記述された処理が実行される(ステップS16)。
HTMLの置換(ステップS18)、置換後のHTMLの端末40への送信(ステップS20)、及び、端末40における表示処理(ステップS22)は、それぞれ、図5の例のシーケンス図を参照して説明したステップS18,S20,S22の処理と同様であってよい。
以上で説明した第三実施形態の例において、処理対象のデータのうちいずれをアプリケーションサーバ10に保存し、いずれをプロキシサーバ20に保存するかを表す保存場所情報は、アプリケーションの利用者ごとに設定される。よって、アプリケーションサーバ10でデータの内容を参照可能としても良いと利用者が判断したデータについては、アプリケーションサーバ10において保存及びデータに対する処理を行わせ、その他のデータについては、プロキシサーバ20において保存及びデータに対する処理を行わせるように、保存場所情報を設定しておくとよい。
<第四実施形態>
図15に、第四実施形態における情報処理システムの概略構成の例を示す。図15において、図1と同様の要素には図1と同様の符号を付す。図15の例のシステムは、端末40とDBサーバ80とがネットワーク50を介して互いに接続され、端末40とアプリケーションサーバ10とがインターネット30を介して互いに接続された構成を有する。図15のインターネット30には、図1を参照して上述したインターネット30と同様、不特定の装置が接続され得る。図15のネットワーク50には、図1の例と同様、特定の装置のみが接続される。なお、図15では図示を省略するが、端末40とインターネット30との間に、両者の通信を中継するサーバ装置を設けてもよい。このサーバ装置は、例えば、端末40の代わりにインターネット30上の装置と通信し、端末40とインターネット30上の装置との間の通信データの内容を制限したり、端末40に対する不正アクセスを防止したりする機能を有するサーバであってよい。
図15に示すアプリケーションサーバ10は、配信部100を備える。配信部100は、インターネット30を介して端末40から送信されるHTML要求に応じて、計算スクリプト62a、入力スクリプト62b、及びHTML64を含む応答61を返す。計算スクリプト62aは、アプリケーションサーバ10が提供するアプリケーションにおけるデータの計算に関する処理の手順を記述したものである。計算スクリプト62aは、計算の対象となるデータを特定するデータ識別子と、当該データに対して実行すべき計算の手順と、を含む。入力スクリプト62bは、データの入力時に実行すべき処理の手順を記述したものである。HTML64は、図1及び図3Aを参照して説明したHTML64と同様のものであってよい。
図16に、応答61の内容の例を模式的に示す。図16の応答61に含まれる計算スクリプト62aは、図3Aを参照して説明したスクリプト62と同様の構成を備えていてよい。つまり、計算スクリプト62aは、表示単位識別子と、その表示単位識別子が表す領域に表示させる値を求める計算の手順を表す計算式と、を関連づけた構成を備えていてよい。計算スクリプト62a中の表示単位識別子は、HTML64中の表示単識別子に対応する。また、計算スクリプト62a中の計算式において、計算の対象となるデータは、後述のDBサーバ80が備えるDB800に記憶されるデータのデータ識別子によって表される。図16の例の入力スクリプト62bは、DB800におけるデータのデータ識別子と入力式とを関連づけた構成を備える。入力式は、対応するデータ識別子のデータの入力の際に実行すべき処理の手順を表す。処理の手順には、端末40より入力されるデータを含んでいる。
再び図15を参照し、端末40は、インターネット30を介してアプリケーションサーバ10と通信し、アプリケーションサーバ10が提供するアプリケーションを利用する。端末40は、ブラウザ部400及びスクリプト送信部402を備える。
ブラウザ部400は、インターネット30を介して、アプリケーションサーバ10に対してHTML要求を行う。このHTML要求に対する応答61を端末40においてアプリケーションサーバ10から受信すると、ブラウザ部400は、応答61に含まれる計算スクリプト62aをスクリプト送信部402に渡す。後に詳述するが、計算スクリプト62aはスクリプト送信部402によりDBサーバ80に対して送信され、この計算スクリプト62aに従った計算の結果がDBサーバ80から端末40へ返送される。返送された計算結果を受け取った端末40のブラウザ部400は、応答61に含まれるHTML64中の各表示単位識別子を、対応する計算結果で置換し、端末40の表示装置において置換後のHTMLに従った表示を行う。ブラウザ部400によるHTMLの置換の処理は、上述の図1の例のプロキシサーバ20のHTML置換部206と同様の処理であってよい。また、ブラウザ部400は、データの入力の指示を受け付けた場合に、応答61中の入力スクリプト62bをスクリプト送信部402に渡す。
スクリプト送信部402は、ブラウザ部400から計算スクリプト62a又は入力スクリプト62bを受け取ると、ネットワーク50を介して、受け取ったスクリプトをDBサーバ80に対して送信する。
DBサーバ80は、DB800及びスクリプト実行部802を備える。DB800は、アプリケーションサーバ10が提供するアプリケーションの処理対象となるデータを記憶するデータベースである。スクリプト実行部802は、端末40のスクリプト送信部402から送信された計算スクリプト62a又は入力スクリプト62bに従った処理を実行する。計算スクリプト62aに従った処理は、図1の例のプロキシサーバ20のデータ計算部204による処理と同様であってよい。入力スクリプト62bに従った処理では、スクリプト実行部802は、各データ識別子について、対応する入力式が表す手順に従ってDB800へのデータの入力を行う。スクリプト実行部802は、また、計算スクリプト62a又は入力スクリプト62bに従った処理の結果を端末40に対してネットワーク50を介して送信する。
以下、第四実施形態の情報処理システムの動作の例を説明する。
図17は、端末40がHTML要求を行う場合のシステムの動作の例を示すシーケンス図である。
図17を参照し、まず、端末40のブラウザ部400は、ネットワーク50及びインターネット30を介して、アプリケーションサーバ10に対してHTML要求(GET命令)を送信する(ステップS40)。
端末40からのHTML要求を受信したアプリケーションサーバ10は、自身が提供するアプリケーションに応じて、計算スクリプト62a、入力スクリプト62b、及びHTML64を含む応答61を生成し、生成した応答61を端末40宛に返送する(ステップS42)。
応答61を受信した端末40のブラウザ部400は、受信した応答61に含まれる入力スクリプト62bをスクリプト送信部402に渡し、スクリプト送信部402は、DBサーバ80に対し、ネットワーク50を介して入力スクリプト62bを送信する(ステップS44)。
入力スクリプト62bを受信したDBサーバ80のスクリプト実行部802は、受信した入力スクリプト62bに従って、DB800へのデータの入力を行う(ステップS46)。ステップS54では、入力スクリプト62bに含まれるデータ識別子ごとに、当該データ識別子に対応付けられた入力式に従った手順によってDB800へのデータの入力が行われる。
そして、スクリプト実行部802は、DB800へのデータの入力の結果を端末40に対してネットワーク50を介して送信する(ステップS48)。
端末40は、スクリプト実行部802からの入力結果を受信すると、その入力を行った旨をアプリケーションサーバ10に対してインターネット30を介して通知する(ステップS50)。
図18は、応答61に含まれる計算スクリプト62aを処理する場合のシステムの動作の例を示すシーケンス図である。図18の例の動作は、例えば、図17の例のシーケンスの終了後に開始される。
図18を参照し、端末40のブラウザ部400は、受信した応答61に含まれる計算スクリプト62aをスクリプト送信部402に渡し、スクリプト送信部402は、ブラウザ部400から受け取った計算スクリプト62aをDBサーバ80に対してネットワーク50を介して送信する(ステップS52)。
計算スクリプト62aを受信したDBサーバ80のスクリプト実行部802は、受信した計算スクリプト62aで記述される手順に従って、DB800に登録されたデータに対する計算を実行する(ステップS54)。ステップS54の処理は、図1の例のプロキシサーバ20が備えるデータ計算部204が実行する計算(図5のステップS16)と同様の処理であってよい。
計算スクリプト62aの実行が終了すると、スクリプト実行部802は、その計算の結果を端末40に対してネットワーク50を介して送信する(ステップS56)。
DBサーバ80のスクリプト実行部802から計算結果を受信した端末40のブラウザ部400は、ステップS42で受信した応答61に含まれるHTML64における表示単位識別子の部分を、受信した計算結果で置換したHTMLを生成し、この置換後のHTMLに従った表示画面を表示装置に表示させる(ステップS58)。
第四実施形態のシステムにおいて、計算スクリプト62aの処理(図18)の後、さらに、HTML要求を行って新たな応答61を端末40で取得し、入力スクリプト62bの処理(図17のステップS44〜S50)及び計算スクリプト62aの処理を再度行ってもよい。また、入力スクリプト62bの処理は、応答61の端末40における取得の後、ユーザによる入力処理の実行の指示を待って開始してもよい。また、計算スクリプト62a中の計算式に含まれるデータ識別子のデータの値がDB800に登録済みであれば、応答61を端末40が取得した後、入力スクリプト62bの処理の前に、あるいは、入力スクリプト62bの処理と並行して、計算スクリプト62bの処理を行ってもよい。
以上で説明した第四実施形態の例によると、第一実施形態の例と同様、アプリケーションサーバ10において処理対象のデータを処理することはないけれども、処理対象のデータに対してアプリケーションサーバ10が提供するアプリケーションに従った処理が実行され、その結果が端末40に送信される。
なお、以上で説明した第一実施形態〜第四実施形態は、本発明の実施形態の例に過ぎず、上述の各実施形態において、各種の変形例があってよい。
例えば、アプリケーションサーバ10がHTML要求に応じて送信する応答において、上述の第一実施形態〜第三実施形態では、表示単位識別子ごとの計算式を表すスクリプト62を含み(図3A参照)、上述の第四実施形態では、表示単位識別子ごとの計算式を表す計算スクリプト62aと、データ識別子ごとの入力式を表す入力スクリプト62bと、を含む(図16参照)。変形例では、第一実施形態〜第三実施形態のそれぞれにおいて、スクリプト62の代わりに、計算スクリプト62a及び入力スクリプト62bを含む応答をアプリケーションサーバ10で生成して端末40宛に送信してもよい。この場合、計算スクリプト62aに関しては、上述のスクリプト62に対する処理と同様に実行すればよい。入力スクリプト62bに関しては、例えば、図1に例示する第一実施形態の場合、端末40から入力要求を受け付けたプロキシサーバ20において、入力スクリプト62bに従ってDB202へのデータの入力を行い、その結果をアプリケーションサーバ10に通知すればよい。また、図6に例示する第二実施形態の場合、入力スクリプト62bに従ってデータベースに入力される値をプロキシサーバ20の暗号化部212によって暗号化した上でアプリケーションサーバ10に送信すれば良い。さらに、図10に例示する第三実施形態の場合、入力スクリプト62bに含まれるデータ識別子のデータがDB102及びDB202のいずれに保存されるかに応じて、アプリケーションサーバ10又はプロキシサーバ20において、自身のデータベースに保存されるデータのデータ識別子に対応づけられた入力式に従ってデータの入力を行えばよい。
応答に関する他の変形例として、例えば、図15に例示する第四実施形態において、計算スクリプト62a及び入力スクリプト62bを含む応答をアプリケーションサーバ10で生成して端末40宛に送信する代わりに、第一実施形態〜第三実施形態の各例と同様のスクリプト62を含む応答を生成して送信してもよい。本変形例では、スクリプト62に関する処理は、図17を参照して説明した計算スクリプト62aについての処理と同様に行えばよい。データの入力については、例えば、端末40からDBサーバ80に対して、入力スクリプト62bの代わりに、第一実施形態と同様の入力要求70(図2A参照)を送信し、DBサーバ80においてDB800へのデータの入力を行えばよい。このとき、例えば、DB800へのデータの入力の結果をDBサーバ80が端末40に通知し、その後、端末40からアプリケーションサーバ10に対して、第一実施形態と同様の入力通知72(図2B参照)を送信する。
また、図10〜図14を参照して説明した第三実施形態において、アプリケーションサーバ10のDB102に記憶されるデータを暗号化データとしてもよい。この例の場合、プロキシサーバ20は、図6に例示する第二実施形態におけるプロキシサーバ20と同様の復号部210及び暗号化部212を備える。アプリケーションサーバ10の応答生成部106は、HTML要求に応じてスクリプト及びHTMLを生成すると、スクリプト中の計算式に含まれるデータ識別子のうち、DB102中のデータを表すものを特定し、特定したデータ識別子の暗号化データをDB102から読み出す。そして、応答生成部106は、読み出した暗号化データと、生成したスクリプト及びHTMLと、図11を参照して説明したのと同様の入力データテーブルと、を含む応答を生成し、配信部100により当該応答が送信される。プロキシサーバ20において、応答に含まれる暗号化データが復号部210により復号されてスクリプトに従った処理が実行される。端末40からのデータの入力要求を処理する場合、プロキシサーバ20の暗号化部212により、アプリケーションサーバ10のDB102に入力されるデータの値が暗号化され、対応するデータ識別子と共に暗号化データがアプリケーションサーバ10に対して送信される。プロキシサーバ20のDB202に入力されるデータについては、図10〜図14を参照して説明した例と同様に処理される。
また、以上の各実施形態の説明において、情報処理システムの構成の例を示す図には、それぞれ、1つの端末40及び1つのアプリケーションサーバ10を図示したが、各実施形態の例のシステムは、複数の端末40及び複数のアプリケーションサーバ10を備えていてよい。また、ネットワーク50又はインターネット30には、図示した装置の他の装置が接続されていてよい。例えば、ネットワーク50には、各種のサーバや画像処理装置(例.プリンタ、スキャナ、ファクシミリなど)が接続されていてよい。また例えば、インターネット30には、一般的なwebサーバなどが接続されていてよい。
以上で説明したアプリケーションサーバ10、プロキシサーバ20、及びDBサーバ80は、それぞれ、典型的には、汎用のコンピュータなどによって、上述の各種のサーバの各部の機能又は処理内容を記述したプログラムを実行することにより実現される。図19に、コンピュータのハードウエア構成の例を示す。図19の例のコンピュータは、CPU(中央演算装置)90、メモリ(一次記憶)91、各種I/O(入出力)インタフェース92等がバス93を介して接続された回路構成を有する。また、そのバス93に対し、例えばI/Oインタフェース92経由で、HDD(ハードディスクドライブ)94やCDやDVD、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体を読み取るためのディスクドライブ95が接続される。このようなドライブ94又は95は、メモリに対する外部記憶装置として機能する。実施形態の処理内容が記述されたプログラムがCDやDVD等の記録媒体を経由して、又はネットワーク経由で、HDD94等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがメモリに読み出されCPUにより実行されることにより、実施形態の処理が実現される。端末についても同様である。
10 アプリケーションサーバ、20 プロキシサーバ、30 インターネット、40 端末、50 ネットワーク、80 DBサーバ、90 CPU、91 メモリ、92 I/Oインタフェース、93 バス、94 HDD、95 ディスクドライブ、100 配信部、102,202,800 DB、104 保存場所情報記憶部、106 応答生成部、108 データ入力部、200 プロキシ部、204 データ計算部、206 HTML置換部、208 入力データ処理部、210 復号部、212 暗号化部、220 入力データテーブル記憶部、400 ブラウザ部、402 スクリプト送信部、802 スクリプト実行部。

Claims (21)

  1. アプリケーションを提供する第一情報処理装置と、第一通信手段を介して前記第一情報処理装置に接続された第二情報処理装置であって前記第一通信手段と異なる第二通信手段を介して端末装置に接続された第二情報処理装置と、を備え、
    前記第一情報処理装置は、
    前記端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータを特定するためのデータ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報を含む応答を、前記第一通信手段により送信する応答送信手段、
    を備え、
    前記第二情報処理装置は、
    処理の対象となり得るデータと当該データを特定する前記データ識別情報とを関連付けて記憶した記憶手段と、
    前記第一通信手段を介して前記第一情報処理装置から受信した前記応答に含まれる前記手順情報中の前記データ識別情報が表すデータを前記記憶手段から読み出し、読み出したデータに対して、受信した前記応答に含まれる前記手順情報が表す手順の処理を実行する処理実行手段と、
    前記処理実行手段による処理の結果を前記第二通信手段により前記端末装置に対して送信する結果送信手段と、
    を備える、
    ことを特徴とする情報処理システム。
  2. 前記第二情報処理装置は、
    データを含む入力要求を前記端末装置から前記第二通信手段を介して受信した場合に、前記入力要求に含まれるデータを、当該データを特定する前記データ識別情報と関連づけて前記記憶手段に登録する登録手段と、
    前記入力要求に含まれるデータを前記記憶手段に登録した旨を表す通知情報を、前記第一通信手段を用いて前記第一情報処理装置に対して送信する通知情報送信手段と、
    をさらに備える、
    ことを特徴とする請求項1に記載の情報処理システム。
  3. 前記応答送信手段が送信する前記応答は、前記第二情報処理装置の前記記憶手段にデータを登録するときに実行すべき処理の手順を記述した登録手順情報をさらに含み、
    前記登録手段は、前記登録手順情報に記述された手順に従って前記入力要求に含まれるデータを前記記憶手段に登録する、
    ことを特徴とする請求項1又は2に記載の情報処理システム。
  4. 前記応答送信手段が送信する応答は、前記処理要求で要求された処理の結果を表示装置に表示させる際の表示の態様を制御する表示制御情報をさらに含み、
    前記第二情報処理装置の前記結果送信手段は、前記第一情報処理装置が送信した前記応答に含まれる前記表示制御情報を、前記処理実行手段による処理の結果と共に前記端末装置に対して送信する、
    ことを特徴とする請求項1から3のいずれか1項に記載の情報処理システム。
  5. 前記第一情報処理装置において、
    処理の対象となり得るデータを記憶した記憶手段と、
    前記端末装置からの処理要求で要求された処理のうち前記第一情報処理装置の前記記憶手段に記憶されたデータを処理対象とする処理を実行し、この処理の実行の結果と、前記処理要求で要求された処理のうち前記第二情報処理装置の前記記憶手段に記憶されたデータを処理対象とする処理の手順を、当該処理の処理対象のデータの前記データ識別情報を含んだ形式で表す手順情報と、を含む応答を生成する応答生成手段と、をさらに備え、
    前記応答送信手段は、前記応答生成手段が生成した前記応答を前記第一通信手段により送信する、
    ことを特徴とする請求項1から4のいずれか1項に記載の情報処理システム。
  6. 前記第一情報処理装置及び前記第二情報処理装置において、どのデータを前記第一情報処理装置の前記記憶手段及び前記第二情報処理装置の前記記憶手段のいずれに登録すべきかを表す登録場所情報を参照可能であり、
    前記第二情報処理装置は、
    データを含む入力要求を前記端末装置から前記第二通信手段を介して受信した場合に、前記登録場所情報を参照し、前記入力要求に含まれるデータが前記第二情報処理装置の前記記憶手段に登録すべきものであれば、前記入力要求に含まれるデータを当該データの前記データ識別情報と関連づけて前記第二情報処理装置の前記記憶手段に登録する登録手段と、
    前記登録場所情報を参照し、前記入力要求に含まれるデータが前記第一情報処理装置の前記記憶手段に登録すべきものであれば、前記入力要求を前記第一情報処理装置に対して前記第一通信手段を用いて送信する入力要求送信手段と、
    をさらに備え、
    前記第一情報処理装置は、
    前記第二情報処理装置から前記入力要求を受信した場合に、前記入力要求に含まれるデータを前記第一情報処理装置の前記記憶手段に登録する登録手段、
    をさらに備える、
    ことを特徴とする請求項5に記載の情報処理システム。
  7. 前記第一情報処理装置において、
    処理の対象となり得るデータであって暗号化された暗号化データと、当該暗号化データの前記データ識別情報と、を関連づけて記憶した暗号化データ記憶手段と、
    前記端末装置からの処理要求で要求された処理の対象となるデータのうち前記暗号化データ記憶手段に記憶された暗号化データを前記暗号化データ記憶手段から読み出し、読み出した暗号化データと、前記処理要求で要求された処理の対象となるデータのデータ識別情報を含んだ形式で当該要求された処理の手順を表す手順情報と、を含む応答を生成する応答生成手段と、をさらに備え、
    前記応答送信手段は、前記応答生成手段が生成した前記応答を前記第一通信手段により送信し、
    前記第二情報処理装置において、
    前記応答に含まれる前記暗号化データを復号する復号手段をさらに備え、
    前記処理実行手段は、前記復号手段が復号したデータと、前記記憶手段から読み出したデータと、に対して、前記応答に含まれる前記手順情報が表す手順の処理を実行する、
    ことを特徴とする請求項1から4のいずれか1項に記載の情報処理システム。
  8. 前記第一情報処理装置及び前記第二情報処理装置において、どのデータを前記第一情報処理装置の前記暗号化データ記憶手段及び前記第二情報処理装置の前記記憶手段のいずれに登録すべきかを表す登録場所情報を参照可能であり、
    前記第二情報処理装置は、
    データを含む入力要求を前記端末装置から前記第二通信手段を介して受信した場合に、前記登録場所情報を参照し、前記入力要求に含まれるデータが前記第二情報処理装置の前記記憶手段に登録すべきものであれば、前記入力要求に含まれるデータを当該データの前記データ識別情報に関連づけて前記第二情報処理装置の前記記憶手段に登録する登録手段と、
    前記登録場所情報を参照し、前記入力要求に含まれるデータが前記第一情報処理装置の前記記憶手段に登録すべきものであれば、当該データを暗号化する暗号化手段と、
    前記暗号化手段により暗号化された暗号化データを含む前記入力要求を前記第一情報処理装置に対して前記第一通信手段を用いて送信する入力要求送信手段と、
    をさらに備え、
    前記第一情報処理装置は、
    前記第二情報処理装置から前記入力要求を受信した場合に、前記入力要求に含まれる前記暗号化データを当該暗号化データの前記データ識別情報に関連づけて前記暗号化データ記憶手段に登録する登録手段、
    をさらに備える、
    ことを特徴とする請求項7に記載の情報処理システム。
  9. アプリケーションを提供する第一情報処理装置と、第一通信手段を介して前記第一情報処理装置に接続された第二情報処理装置であって前記第一通信手段と異なる第二通信手段を介して端末装置に接続された第二情報処理装置と、を備え、
    前記第一情報処理装置は、
    処理の対象となり得るデータを暗号化した暗号化データと当該暗号化データを特定するデータ識別情報とを関連づけて記憶した記憶手段と、
    前記端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータの前記暗号化データを前記記憶手段から読み出し、読み出した暗号化データと、読み出した暗号化データの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報と、を含む応答を、前記第一通信手段により送信する応答送信手段と、
    を備え、
    前記第二情報処理装置は、
    前記第一情報処理装置が送信した前記応答に含まれる前記暗号化データを復号する復号手段と、
    前記復号手段による復号後のデータに対して、前記第一情報処理装置が送信した前記応答に含まれる前記手順情報が表す手順の処理を実行する処理実行手段と、
    前記処理実行手段による処理の結果を前記第二通信手段により前記端末装置に対して送信する結果送信手段と、
    を備える、
    ことを特徴とする情報処理システム。
  10. 前記第二情報処理装置は、
    データを含む入力要求を前記端末装置から前記第二通信手段を介して受信した場合に、前記入力要求に含まれるデータを暗号化する暗号化手段と、
    前記暗号化手段により暗号化された暗号化データを、前記第一通信手段を用いて前記第一情報処理装置に対して送信する暗号化データ送信手段と、
    をさらに備え、
    前記第一情報処理装置は、
    前記第二情報処理装置が送信した前記暗号化データを当該暗号化データの前記データ識別情報に関連づけて前記記憶手段に登録する登録手段、
    をさらに備える、
    ことを特徴とする請求項9に記載の情報処理システム。
  11. アプリケーションを提供する第一情報処理装置と、第一通信手段を介して前記第一情報処理装置に接続された端末装置と、前記第一通信手段と異なる第二通信手段を介して前記端末装置に接続された第二情報処理装置と、を備え、
    前記第一情報処理装置は、
    前記端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータを特定するためのデータ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報を含む応答を、前記第一通信手段により前記端末装置に対して送信する応答送信手段、
    を備え、
    前記端末装置は、
    前記第一通信手段を介して前記第一情報処理装置から受信した前記応答に含まれる前記手順情報を、前記第二通信手段により前記第二情報処理装置に対して送信する送信手段、
    を備え、
    前記第二情報処理装置は、
    処理の対象となり得るデータと当該データを特定する前記データ識別情報とを関連づけて記憶した記憶手段と、
    前記第二通信手段を介して前記端末装置から前記手順情報を受信し、受信した前記手順情報に含まれる前記データ識別情報が表すデータを前記記憶手段から読み出し、読み出したデータに対して、受信した前記手順情報が表す手順の処理を実行する処理実行手段と、
    前記処理実行手段による処理の結果を前記第二通信手段により前記端末装置に対して送信する結果送信手段と、
    を備える、
    ことを特徴とする情報処理システム。
  12. 前記第一情報処理装置の前記応答送信手段が送信する前記応答は、前記第二情報処理装置の前記記憶手段にデータを登録するときに実行すべき処理の手順を記述した登録手順情報をさらに含み、
    前記端末装置の前記送信手段は、さらに、前記応答に含まれる前記登録手順情報を前記第二情報処理装置に対して送信し、
    前記第二情報処理装置の前記処理実行手段は、さらに、前記端末装置から受信した前記登録手順情報が表す手順の処理に従って、データと当該データの前記識別情報とを関連づけて前記記憶手段に登録する、
    ことを特徴とする請求項11に記載の情報処理システム。
  13. 前記処理の対象となるデータは数値を含み、
    前記手順情報が表す手順の処理は、数値に対する演算を含む、
    ことを特徴とする請求項1から12のいずれか1項に記載の情報処理システム。
  14. 処理の対象となり得るデータと当該データを特定するデータ識別情報とを関連づけて記憶した記憶手段と、
    端末装置からのアプリケーションに従った処理要求に応じて他の情報処理装置が送信した応答であって、当該処理要求で要求された処理の対象となるデータの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報を含む応答を取得した場合に、当該応答に含まれる前記手順情報中の前記データ識別情報が表すデータを前記記憶手段から読み出し、読み出したデータに対して、前記応答に含まれる前記手順情報が表す手順の処理を実行する処理実行手段と、
    前記処理実行手段による処理の結果を前記端末装置に対して送信する結果送信手段と、
    を備えることを特徴とする情報処理装置。
  15. コンピュータに、
    処理の対象となり得るデータと当該データを特定するデータ識別情報とを関連づけて記憶した記憶手段を参照させ、
    端末装置からのアプリケーションに従った処理要求に応じて他のコンピュータが送信した応答であって、当該処理要求で要求された処理の対象となるデータの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報を含む応答を取得した場合に、当該応答に含まれる前記手順情報中の前記データ識別情報が表すデータを前記記憶手段から読み出し、読み出したデータに対して、前記応答に含まれる前記手順情報が表す手順の処理を実行するステップと、
    前記処理の実行の結果を前記端末装置に対して送信するステップと、
    を実行させるプログラム。
  16. 処理対象のデータと当該データを特定するデータ識別情報とを関連づけて記憶した記憶手段を利用可能な端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報を含む応答を、他の情報処理装置に対して第一通信手段により送信する応答送信手段、
    を備え
    前記他の情報処理装置は、前記第一通信手段と異なる第二通信手段により前記端末装置に接続され、前記第一通信手段を介して前記応答を受信し、前記応答に含まれる前記手順情報が表す手順の処理を実行する、
    ことを特徴とする情報処理装置。
  17. コンピュータに、
    処理対象のデータと当該データを特定するデータ識別情報とを関連づけて記憶した記憶手段を利用可能な端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報を含む応答を、他の情報処理装置に対して第一通信手段により送信するステップ、
    を実行させ
    前記他の情報処理装置は、前記第一通信手段と異なる第二通信手段により前記端末装置に接続され、前記第一通信手段を介して前記応答を受信し、前記応答に含まれる前記手順情報が表す手順の処理を実行する、
    ことを特徴とするプログラム。
  18. 処理の対象となり得るデータを暗号化した暗号化データと当該暗号化データを特定する識別情報とを関連づけて記憶した記憶手段を備える他の情報処理装置に第一通信手段を介して接続され、前記第一通信手段と異なる第二通信手段を介して端末装置に接続され、
    前記端末装置からのアプリケーションに従った処理要求に応じて前記他の情報処理装置が送信した応答であって、前記記憶手段から読み出された暗号化データであって前記処理要求で要求された処理の対象となるデータの暗号化データと、当該読み出された暗号化データの前記データ識別情報を含んだ形式で前記要求されたアプリケーションに従った処理の手順を表す手順情報と、を含む応答を、前記第一通信手段を介して受信した場合に、当該応答に含まれる前記暗号化データを復号する復号手段と、
    前記復号手段による復号後のデータに対して、前記応答に含まれる前記手順情報が表す手順の処理を実行する処理実行手段と、
    前記処理実行手段による処理の結果を前記第二通信手段により前記端末装置に対して送信する結果送信手段と、
    を備えることを特徴とする情報処理装置。
  19. 処理の対象となり得るデータを暗号化した暗号化データと当該暗号化データを特定する識別情報とを関連づけて記憶した記憶手段を備える他のコンピュータに第一通信手段を介して接続され、前記第一通信手段と異なる第二通信手段を介して端末装置に接続されたコンピュータに、
    前記端末装置からのアプリケーションに従った処理要求に応じて前記他のコンピュータが送信した応答であって、前記記憶手段から読み出された暗号化データであって前記処理要求で要求された処理の対象となるデータの暗号化データと、当該読み出された暗号化データの前記データ識別情報を含んだ形式で前記要求されたアプリケーションに従った処理の手順を表す手順情報と、を含む応答を、前記第一通信手段を介して受信した場合に、前記応答に含まれる前記暗号化データを復号する復号ステップと、
    前記復号ステップによる復号後のデータに対して、前記応答に含まれる前記手順情報が表す手順の処理を実行する処理実行ステップと、
    前記処理実行ステップによる処理の結果を前記第二通信手段により前記端末装置に対して送信する結果送信ステップと、
    を実行させるプログラム。
  20. 処理の対象となり得るデータを暗号化した暗号化データと当該暗号化データを特定する識別情報とを関連づけて記憶した記憶手段と、
    端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータの前記暗号化データを前記記憶手段から読み出し、読み出した暗号化データと、当該読み出した暗号化データの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報と、を含む応答を、他の情報処理装置に対して第一通信手段により送信する応答送信手段と、
    を備え、
    前記他の情報処理装置は、前記第一通信手段と異なる第二通信手段により前記端末装置に接続され、前記暗号化データを復号する復号手段を備える、
    ことを特徴とする情報処理装置。
  21. コンピュータに、
    処理の対象となり得るデータを暗号化した暗号化データと当該暗号化データを特定する識別情報とを関連づけて記憶した記憶手段を参照させ、
    端末装置からのアプリケーションに従った処理要求に応じて、当該処理要求で要求された処理の対象となるデータの前記暗号化データを前記記憶手段から読み出し、読み出した暗号化データと、当該読み出した暗号化データの前記データ識別情報を含んだ形式で当該要求されたアプリケーションに従った処理の手順を表す手順情報と、を含む応答を、他の情報処理装置に対して第一通信手段により送信するステップ、
    を実行させ、
    前記他の情報処理装置は、前記第一通信手段と異なる第二通信手段により前記端末装置に接続され、前記暗号化データを復号する復号手段を備える、
    ことを特徴とするプログラム。
JP2009243584A 2009-10-22 2009-10-22 情報処理システム、情報処理装置、及びプログラム Expired - Fee Related JP5493696B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009243584A JP5493696B2 (ja) 2009-10-22 2009-10-22 情報処理システム、情報処理装置、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009243584A JP5493696B2 (ja) 2009-10-22 2009-10-22 情報処理システム、情報処理装置、及びプログラム

Publications (2)

Publication Number Publication Date
JP2011090505A JP2011090505A (ja) 2011-05-06
JP5493696B2 true JP5493696B2 (ja) 2014-05-14

Family

ID=44108702

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009243584A Expired - Fee Related JP5493696B2 (ja) 2009-10-22 2009-10-22 情報処理システム、情報処理装置、及びプログラム

Country Status (1)

Country Link
JP (1) JP5493696B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6395017B1 (ja) * 2017-12-15 2018-09-26 フリュー株式会社 写真シール作成装置、印刷方法、およびプログラム
JP7185953B1 (ja) 2021-07-02 2022-12-08 Eaglys株式会社 データ管理システム、データ管理方法、及びデータ管理プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4644940B2 (ja) * 2001-01-17 2011-03-09 ソニー株式会社 課金方法、並びにスクリプト変換システム及び方法
JP4865445B2 (ja) * 2005-08-09 2012-02-01 学校法人 創価大学 情報管理方法及び情報管理システム
JP5000457B2 (ja) * 2007-10-31 2012-08-15 株式会社日立製作所 ファイル共有システム及びファイル共有方法
JP4734311B2 (ja) * 2007-11-20 2011-07-27 株式会社日立製作所 情報処理システム、秘匿データ管理装置、およびプログラム

Also Published As

Publication number Publication date
JP2011090505A (ja) 2011-05-06

Similar Documents

Publication Publication Date Title
JP5174955B2 (ja) クライアント端末、サーバ、サーバクライアントシステム、連携動作処理方法、プログラム、および記録媒体
US20080027742A1 (en) Information processing method, information processing apparatus, computer program and storage medium
US20100024011A1 (en) Document management system and document management method
JP2014092823A (ja) システム及びサービス提供装置
JP6424499B2 (ja) 画像形成装置、情報処理方法、及びプログラム
JP2009100462A (ja) 暗号管理装置、復号管理装置、およびプログラム
JP6048372B2 (ja) 産業機器管理システム、産業機器管理サーバ、産業機器管理方法、プログラム、及び情報記憶媒体
JP2006323503A (ja) 文書管理装置及びその制御方法、コンピュータプログラム、記憶媒体
US20180039787A1 (en) Information processing apparatus, application management method, and image forming apparatus
JP6907491B2 (ja) 情報共有サーバー、情報共有システム及びプログラム
JP4803289B2 (ja) 画像処理システム、画像処理装置及び画像処理方法並びに画像処理プログラム
JP2018032149A (ja) 情報処理装置、情報処理システム、情報処理方法およびプログラム
JP2020003877A (ja) 情報処理装置、情報処理方法、及び認証連携システム
JP5383376B2 (ja) 画像処理装置及びその制御方法
US10713098B2 (en) Information processing apparatus and cookie information management method
JP6163758B2 (ja) 機器管理装置、機器管理システムおよびプログラム
JP5493696B2 (ja) 情報処理システム、情報処理装置、及びプログラム
JP6711042B2 (ja) 復号プログラム、暗号化プログラム、復号装置、暗号化装置、復号方法、および暗号化方法
JP2004234538A (ja) 暗号化データ共有システム
JP6237868B2 (ja) クラウドサービス提供システム及びクラウドサービス提供方法
JP2022042176A (ja) 情報処理プログラム、情報処理システム及び情報処理方法
JP6281560B2 (ja) 情報処理装置、処理方法、およびプログラム
JP2006227832A (ja) サービス提供装置、情報端末装置、サービス提供システム、サービス提供方法
JP2006185212A (ja) 情報管理システム、情報管理方法及びプログラム
JP2016038805A (ja) 情報処理システム、情報処理装置及びその制御方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120918

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131227

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140204

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140217

R150 Certificate of patent or registration of utility model

Ref document number: 5493696

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees