説明

ウェブサービスシステム、ウェブサービス方法及びプログラム

【課題】機密情報を含むユーザデータを外部ネットワークに送出する必要がなく、しかも、利用者がアプリケーションを実行するための適切な環境を用意する必要製をなくする。
【解決手段】ローカルサイト側仮想化プラットフォーム及びリモートサイト側仮想化プラットフォームを有し、前記ローカルサイト側仮想化プラットフォームは、前記クライアントマシンとの間、前記リモートサイト側の仮想化プラットフォームのネットワーク処理部との間に別々に通信路を確立するネットワーク処理部と、ユーザデータに機密情報が含まれているか否かを判断し、その送信先を決定する機密データ制御部と、ユーザデータに機密情報が含まれていると判断した結果を受けて、リモートサイト側仮想化プラットフォームの仮想マシンをローカルサイト側仮想化プラットフォームにマイグレーションする仮想マシンサービス部とを有している。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、クライアントマシンからウェブベースのアプリケーションソフトを利用することに関し、特に機密情報を含むユーザデータが外部ネットワークに送信されることによるリスクの回避に関する。
【背景技術】
【0002】
企業活動において、各ユーザが多様なデータを処理するために、ユーザが各自でローカルネットワーク上のクライアントマシンにソフトウェアをインストールして利用していた。この場合、必要なソフトウェアのインストールや、それらのソフトウェアの利用に伴う様々なトラブルへの対処は、ユーザ各自の手間となる。近年、特にファイルの種類やデータの処理方法の多様化に伴い、多数のソフトウェアが必要となっているので、その手間も増大している。
【0003】
そこで近年、ネットワーク回線の広帯域化と、ウェブサービスの進歩に伴い、ウェブインターフェイス経由でリモートサイトにあるソフトウェアをサービスとして利用するSaaS(Software As A Service)のような形態が注目されている。
【0004】
図12は、ユーザがクライアントマシンからSaaSによって提供されるウェブベースのアプリケーションを使用する例を示す説明図である。図12(a)は実際のデータ送信の流れを示し、図12(b)はユーザが実際に操作している状態を示す。なお、図12において、実際のデータファイルおよび操作内容情報の送受信は、全てネットワーク(インターネット)を経由して行う。
【0005】
図12(a)に示すように、ユーザはクライアントマシン900からウェブブラウザ910によって、インターネット920を経由してローカルマシン上にないウェブサーバを兼ねるアプリケーションサーバ(以後APサーバという)930にアクセスし、ワードプロセッサや表計算などのようなアプリケーション911aを起動する。前記アプリケーションソフト911a上でユーザが使用するユーザデータ901は、クライアントマシン900からAPサーバ930に送信される。
【0006】
図12(a)に示すように、ユーザがウェブブラウザ910によりAPサーバ930にアクセスしてアプリケーション911aを起動させると、図12(b)に示す様に、クライアントマシン900のディスプレイ902上にはウェブブラウザ910により、APサーバ930上で起動しているアプリケーション911a及びそのアプリケーション911aに用いられるユーザデータ901が映し出され、ユーザがクライアントマシン900上でAPサーバ930上のアプリケーション911aを操作する仮想状態が構築される。
【0007】
APサーバ930上で動作しているアプリケーション911aは、クライアントマシン900上のウェブブラウザ910から送られるユーザの操作内容に応じてユーザデータ901に対する処理を行うと同時に、その操作結果がクライアントマシン900上のウェブブラウザ910の表示内容としてクライアントマシン900のディスプレイ902上に映し出される。
【0008】
このようにして、ユーザはクライアントマシン900に新規にソフトウェアをインストールすることなく、ウェブブラウザ910を経由してAPサーバ930の提供するアプリケーション911aを利用することができる。これによって、ユーザは各自のクライアントマシンへのソフトウェアの導入および保守にかかる手間から解放される。
【0009】
これに関連する技術文献として、次の各特許文献がある。特許文献1には、クラスタシステム上の仮想マシンを第1のノードから第2のノードへマイグレーションするという技術が記載されている。特許文献2には、ウェブブラウザを経由して遠隔地のウェブサーバで動作するウェブアプリケーションを利用するシステムで、クライアントマシンがユーザから送信される特定の情報を変換してからウェブサーバに送信するという技術が記載されている。特許文献3には、クライアントマシンからウェブサーバに送信される情報を暗号化する技術の一例が記載されている。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2006−244481号公報
【特許文献2】特開2008−177821号公報
【特許文献3】特表2003−501715号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
図12で説明したように、ウェブベースのアプリケーションを利用してユーザデータを処理する場合には、APサーバに対してそのユーザデータを送信する必要がある。しかしながら、このユーザデータには企業活動における機密が含まれていることがある。特に、データ漏洩が起こる可能性がある状況においては、利用するAPサーバが信頼できるものとは言えない。
【0012】
また、APサーバ自体が十分に信頼できるとしても、利用するネットワーク(インターネット)上では盗聴される恐れがある。APサーバに情報を送信する場合、普通はSSLやTSLなどのプロトコルを使用した暗号化通信を使用するが、近年の計算機の高速化・高性能化に伴って、特に暗号化の強度が十分ではない場合に、その通信が不正に解読されてしまう危険性があることを否定することができない。
【0013】
ウェブベースのアプリケーションを利用することに対するこのような情報漏洩に対する懸念を解決するには、そもそも機密情報を含むユーザデータを、機密情報を扱うローカルサイトからリモートサイトへ送信しないようにすればよい。その方法の一つに、特許文献1に開示されたように、データを処理するためのアプリケーションをネットワーク経由でダウンロードして使用するという方法がある。こうすれば、機密情報を含むユーザデータを外部ネットワークに送信する必要は確かになくなる。
【0014】
しかしながら、アプリケーションをネットワーク経由でダウンロードする方法は、利用者が機密を含まないデータを処理する場合であっても、アプリケーションをダウンロードする必要があるため、ダウンロード先のローカルサイト側の計算機資源を無駄に消費する点や、利用者がアプリケーションを実行するための適切な環境を用意しなければならない手間がある点などの問題がある。
【0015】
前述の特許文献の中で、特許文献2および3に記載の技術では機密情報を含むデータを暗号化してからクライアントマシンからウェブサーバに送信しているが、機密情報を含むユーザデータをローカルサイト外部に送信しなくてもよいようにするものではない。
【0016】
本発明の目的は、機密情報を含むユーザデータをネットワークに送出する必要がなく、しかも、利用者がアプリケーションを実行するための適切な環境を用意する必要がないウェブサービスシステム、ウェブサービス方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0017】
前記目的を達成するため、本発明に係るウェブサービスシステムは、クライアントマシンから提供されるユーザデータをリモートサイト側の仮想マシンによって処理するウェブサービスシステムにおいて、
通信網で連繋されたローカルサイト側の仮想化プラットフォーム及びリモートサイト側の仮想化プラットフォームを有し、
前記ローカルサイト側の仮想化プラットフォームは、
前記クライアントマシンとの間と、前記リモートサイト側の仮想化プラットフォームのネットワーク処理部との間とにおいて別々に通信路を確立するネットワーク処理部と、
前記ローカルサイト側の前記ネットワーク処理部に伝送されたユーザデータに機密情報が含まれているか否かを判断し、その判断結果に基づいて前記ユーザデータの送信先を決定する機密データ制御部と、
前記機密データ制御部がユーザデータに機密情報が含まれていると判断した結果を受けて、リモートサイト側の仮想化プラットフォームの仮想マシンをローカルサイト側の仮想化プラットフォームにマイグレーションする仮想マシンサービス部とを有することを特徴とするものである。
【0018】
本発明に係るウェブサービス方法は、クライアントマシンから提供されるユーザデータをリモートサイト側の仮想マシンによって処理するウェブサービス方法において、
通信網で連繋されたローカルサイト側の仮想化プラットフォーム及びリモートサイト側の仮想化プラットフォームを有し、
前記ローカルサイト側の仮想化プラットフォームが有するネットワーク処理部により、前記クライアントマシンとの間と、前記リモートサイト側の仮想化プラットフォームのネットワーク処理部との間とにおいて別々に通信路を確立し、
前記ローカルサイト側の前記ネットワーク処理部に伝送されたユーザデータに機密情報が含まれているか否かを判断し、その判断結果に基づいて前記ユーザデータの送信先を決定し、
前記ユーザデータに機密情報が含まれていると判断した結果を受けて、リモートサイト側の仮想化プラットフォームの仮想マシンをローカルサイト側の仮想化プラットフォームにマイグレーションし、
前記マイグレーションした仮想マシンにより、機密情報を含むユーザデータをローカルサイト側で処理することを特徴とするものである。
【0019】
本発明に係るプログラムは、クライアントマシンから提供されるユーザデータをリモートサイト側の仮想マシンによって処理する制御を行うプログラムであって、
リモートサイト側の仮想化プラットフォームと通信網で連繋されたローカルサイト側の仮想化プラットフォームを構築するコンピュータに、
前記クライアントマシンとの間と、前記リモートサイト側の仮想化プラットフォームのネットワーク処理部との間とにおいて別々に通信路を確立する機能と、
前記ローカルサイト側の前記ネットワーク処理部に伝送されたユーザデータに機密情報が含まれているか否かを判断し、その判断結果に基づいて前記ユーザデータの送信先を決定する機能と、
前記ユーザデータに機密情報が含まれていると判断した結果を受けて、リモートサイト側の仮想化プラットフォームの仮想マシンをローカルサイト側の仮想化プラットフォームにマイグレーションする機能とを実行させることを特徴とするものである。
【発明の効果】
【0020】
本発明は、クライアントマシンからリモートサイトへの通信形態を、クライアントマシンからローカルサイトへのセッションと、ローカルサイトからリモートサイトへのセッションを別々に確立して、通信を中継する形態として構築するため、クライアントからリモートサイトへ送出されるデータのチェックを行うことができる。
上述したように、データのチェックが可能であるため、機密情報を含むデータの場合、リモートサイトで動作している仮想マシンをローカルサイトにマイグレーションし、その仮想マシンを用いて前記データをローカルサイトで処理することができ、機密情報を含むデータがネットワークから外部へ漏出するのを防止することができ、しかも、機密情報を含むデータ処理の場合のみ、仮想マシンのマイグレーションを利用してデータ処理を行うことができ、ローカルサイトの計算機資源を無駄に消費することを解消できる。
さらに、クライアントマシンとローカルサイトとのセッションを確立するのみにより、利用者は、機密情報の有無に関係なく、仮想マシンを利用してデータを処理することができ、データ処理を実行するための適切な環境を用意する必要がなくなる。
【図面の簡単な説明】
【0021】
【図1】本発明の第1の実施形態におけるウェブサービスシステムとクライアントマシンの構成を示す説明図である。
【図2】本実施形態で利用する計算機プラットフォームを仮想的に実現するものである仮想マシンシステムの概念について示す説明図である。
【図3】ネットワークを介してサーバマシン外部から各仮想マシンを見た見かけ上の状態を示す説明図である。
【図4】サービス仮想マシンを含む仮想マシンシステムの概念について示す説明図である。
【図5】図2で説明したハイパーバイザ上で構築された仮想マシンが、別のハイパーバイザ上にマイグレーションされる様子を示す概念図であり、図5(A)はマイグレーションされる前の状態を、図5(B)はその後の状態を各々示す。
【図6】図1で示したローカルサイト側のサービス仮想マシンの内部構成を示す説明図である。
【図7】図6に示した転送テーブルのデータ構成を示す説明図である。
【図8】図6に示す転送テーブルに記憶されているデータの構造を示す説明図である。
【図9】クライアントマシンからAPサーバへの通信をウェブプロキシが中継する際に、機密データ制御部が行う動作を示すフローチャートである。
【図10】図10(a)は、ユーザデータの属性情報が「公開」である場合におけるユーザデータの処理状態を説明する説明図、図10(b)はユーザデータの属性情報が「機密」である場合におけるユーザデータの処理状態を説明する説明図である。
【図11】APサーバ(仮想マシン)がローカルサイト側にマイグレーションされた際の、仮想マシンシステム内の仮想ネットワークについて示す説明図である。
【図12】ユーザがクライアントマシンからSaaSによって提供されるウェブベースのアプリケーションソフトを使用する例を示す説明図であり、図12(a)は実際のデータ送信の流れを示す図、図12(b)はユーザが操作するクライアントのディスプレイの表示状態を示す図である。
【発明を実施するための形態】
【0022】
以下、本発明の実施形態を図に基づいて詳細に説明する。
一般にウェブプロキシは、ファイアウォールによってインターネットへの通信を制限している環境である例えば社内ネットワーク等の内部ネットワーク(イントラネット)に配置され、イントラネットに含まれるクライアントマシンが外部ネットワークのサーバ等にアクセスする場合に、そのアクセスを中継して代行する機能を有している。
クライアントマシンから外部のサーバ等に通信を行う場合にSSL(Secure Socket Layer)又はTLS(Transport Layer Security)のプロトコルを使用して暗号化を行うセキュアな通信では、前記ウェブプロキシは、前記暗号化されたデータをチェックすることなく、その通信を単純にパススルー(リレー)するだけで、クライアントマシンと外部サーバ等との間にセッションが確立する。
したがって、ウェブプロキシでは、SSLやTLSのプロトコルを使用して暗号化されたデータの内容をチェックすることなく、その暗号化されたデータを外部に送出するため、そのデータが通信途中で解読される可能性がある。
本発明の実施形態は、前記ウェブプロキシが有する脆弱性を改善すると共に、仮想マシンシステムを利用してウェブサービスシステムを構築したものである。以下に、本発明の実施形態を具体的に説明する。
【0023】
本発明の実施形態に係るウェブサービスシステム1は図1に示す様に、ローカルサイト側に配置した仮想化プラットフォーム100と、リモートサイト側に配置した仮想化プラットフォーム400と、ローカルサイト側に配置したクライアントマシン800とを有している。これらの仮想化プラットフォーム100,400は、ルータ72,73及びインターネット71により連繋されている。ローカルサイト側の仮想化プラットフォーム100は、クライアント800がローカルサイト側でアクセスするためのものであり、ローカルサイト側の仮想化プラットフーム100に接続されたルータ72には、ファイアウォールの機能が組み込まれている。
【0024】
前記ローカルサイト側の仮想化プラットフォーム100は図1に示す様に、仮想マシンシステムを実現するサービス仮想マシン300と、ハイパーバイザ200とを有している。前記リモートサイト側の仮想化プラットフォーム400は図1に示す様に、仮想マシンシステムを実現するサービス仮想システム600と、ハイパーバイザ500とを有している。また、前記リモートサイト側の仮想化プラットフォーム400は図1に示す様に、クライアント800が提供するデータが機密情報を含むものである場合に前記仮想化プラットフォーム100側からの要求に基づいてマイグレーションするためのAPサーバ(仮想マシン)700を有している。前記APサーバ700は、クライアントマシン800から提供されるユーザデータを処理するためのアプリケーションを実行するウェブサービス機能を備えた仮想マシンである。
【0025】
上述した本発明の実施形態に用いるローカルサイト側の仮想化プラットフォーム100とリモートサイト側の仮想化プラットフォーム400を図1〜図5に基づいて説明する。
【0026】
ローカルサイト側の仮想化プラットフォーム100とリモートサイト側の仮想化プラットフォーム400とは図2に示す様に、物理的な計算機上に仮想的に構築されるものである。以下では、クライアントマシン800が提供するユーザデータを処理するための仮想マシン(APサーバ700)に着目して説明する。図2で説明する仮想マシンは図1に示した仮想的に構築したAPサーバ700に対応するものである。図1では、APサーバ700を1台図示しているが、APサーバ700に相当する仮想マシンは1以上存在しており、ユーザデータを処理する種々のアプリケーションは、1つの仮想マシンに複数組み込まれている場合も在るし、或いは2以上の仮想マシンに分散して組み込まれている場合もある。
【0027】
前記計算機は、物理的なCPU(Central Processing Unit)と、物理的なRAM(Random Access Memory)と、物理的なHDD(Hard Disk Drive)と、物理的なNIC(Network Interface Card)などの物理的なコンピュータ資源を有しており、OS(Operating System)とアプリケーションとを組み合わせたソフトウェアを実行する構成になっている。上述した物理的な計算機を用いることにより、ローカルサイト側の仮想化プラットフォーム100とリモートサイト側の仮想化プラットフォーム400とを構築している。
なお、ローカルサイト側の仮想化プラットフォーム100とリモートサイト側の仮想化プラットフォーム400とは、仮想マシンがマイグレーションされる点が異なるものであり、その他の構成は同様な構成であるから、図1及び図2に基づいて、リモートサイト側の仮想化プラットフォーム400について説明する。
【0028】
図2に示す様に、物理的な計算機10は、CPU10a,RAM10b,HDD10c等の物理的なコンピュータ資源を有している。前記計算機10には図1及び図2に示す様に、計算機の物理的環境を仮想マシンとして実現するためのソフトウェア或いはファームウェアであるハイパーバイザ500が組み込まれている。ハイパーバイザ500はVMM(Virtual Machine Manager)或いは仮想マシンモニタと呼ばれることもある。
【0029】
前記ハイパーバイザ500は、計算機10上のCPU10a,RAM10b,HDD10cなどのコンピュータ資源を、時分割或いは空間分割などの手法によって仮想マシンに割り当てる。以下の説明では、仮想マシンとして2以上の仮想マシン1#(1〜n)を用いる場合を例にとって説明するが、仮想マシンの台数は、これに限られるものではない。
具体的に説明すると、前記ハイパーバイザ500は図2に示す様に、前記物理的なコンピュータ資源を第1番目から第n番目のn台の仮想マシン1#(#=1〜n)に割り当てるとともに、第1番目の仮想マシンとして割り当てた仮想マシン11(#=1)に、仮想CPU(Central Processing Unit)11(#=1)a、仮想RAM(Random Access Memory)11(#=1)b、仮想HDD(Hard Disk Drive)11(#=1)c、仮想NIC(Network Interface Card)11(#=1)dなどの仮想的なコンピュータ資源を割り当て、それ以降の仮想マシンにも同様に仮想CPU(Central Processing Unit)、仮想RAM(Random Access Memory),仮想HDD(Hard Disk Drive),仮想NIC(Network Interface Card)などの仮想的なコンピュータ資源を割り当てる。
図2では、第1番目の仮想マシン11(#=1)と第n番目の仮想マシン1n(#=n)とを図示し、第1番目の仮想マシン11(#=1)に、仮想CPU(Central Processing Unit)11(#=1)a、仮想RAM(Random Access Memory)11(#=1)b,仮想HDD(Hard Disk Drive)11(#=1)c,仮想NIC(Network Interface Card)11(#=1)dなどの仮想的なコンピュータ資源が割り当てられ、第n番目の仮想マシン1n(#=n)に、仮想CPU(Central Processing Unit)1n(#=n)a、仮想RAM(Random Access Memory)1n(#=n)b,仮想HDD(Hard Disk Drive)1n(#=n)c,仮想NIC(Network Interface Card)1n(#=n)dなどの仮想的なコンピュータ資源が割り当てられている状態を示している。図2には、図示していない第1番目の次の第2番目の仮想マシンから第n−1番目の仮想マシンについても同様に、仮想CPU(Central Processing Unit)、仮想RAM(Random Access Memory),仮想HDD(Hard Disk Drive),仮想NIC(Network Interface Card)などの仮想的なコンピュータ資源が前記ハイパーバイザ500によって割り当てられている。
【0030】
前記ハイパーバイザ500は上述した様に1以上の仮想マシン1#(#=1〜n)を仮想的に構築すると共に、仮想した仮想マシン11(#=1)〜1n(#=n)に仮想CPU11(#=1)a〜1n(#=n)aを割り当てるためのCPU管理機能21と、仮想した仮想マシン11(#=1)〜1n(#=n)に仮想RAM11(#=1)b〜1n(#=n)bを割り当てるためのメモリ管理機能22とを実行するようになっている。
【0031】
前記ハイパーバイザ500によって仮想的に構築された仮想マシン1#(#=1〜n)は、前記ハイパーバイザ500の制御の下に、OS及びアプリケーション1#(#=1〜n)eをそれぞれ個々に実行することとなる。前記アプリケーション1#(#=1〜n)eは、利用者がクライアントマシン800を操作してユーザデータを処理するためのアプリケーションに相当するものである。
【0032】
図2に示す1以上の仮想マシン1#(#=1〜n)をリモートサイト内のネットワーク31側から見ると、図3に示す様に、見かけ上の状態では、1以上の仮想マシン11〜1nは、物理的なコンピュータと全く変わらない。
なお、以上の説明は、リモートサイト側における仮想化プラットフォーム400の仮想マシン(APサーバ700)について説明したが、ローカルサイト側の仮想化プラットフォーム100におけるハイパーバイザ200はリモートサイト側のハイパーバイザ500と同様に機能して、ローカルサイト側における仮想化プラットフォーム100に図2に示した1以上の仮想マシン1#(#=1〜n)を仮想的に構築するものである。なお、図1では、リモートサイト側の仮想マシン(APサーバ700)をマイグレーションする前の状態を示している。
【0033】
以上の説明では、クライアントマシン800が提供するユーザデータを処理するための仮想マシン(APサーバ700)に着目したが、リモートサイト側の仮想化プラットフォーム400には図1に示す様に、サービス仮想マシン600が仮想的に構築されるものである。次に、前記サービス仮想マシン600を図4に基づいて説明する。図4では、図1に示すサービス仮想マシン600をサービス仮想マシン41として表記している。
【0034】
前記ハイパーバイザ500は図4に示す様に、物理的な計算機10のCPU10a,RAM10b,HDD10c等のコンピュータ資源を、時分割或いは空間分割などによってサービス仮想マシン41に割り当てる。具体的に説明すると、前記ハイパーバイザ500は図4に示す様に、前記物理的なコンピュータ資源をサービス仮想マシン41に割り当てるとともに、そのサービス仮想マシン41に、仮想CPU(Central Processing Unit)41a、仮想RAM(Random Access Memory)41bの仮想的なコンピュータ資源を割り当てる。上述した仮想的なコンピュータ資源をの割当は、前記ハーパバイザ500がCPU管理機能21及びメモリ管理機能22を実行することにより行われる。
【0035】
さらに、前記ハイパーバイザ500は図4に示す様に、仮想した仮想マシン11(#=1)〜1n(#=n)及びサービス仮想マシン41に仮想HDD11(#=1)c〜1n(#=n)cを割り当てるためのディスク管理機能23と、仮想した仮想マシン1#(#=1〜n)に仮想NIC11(#=1)d〜1n(#=n)dを割り当てると共に、仮想ネットワーク24aを構築し、それらの仮想NICが仮想ネットワーク24a及び物理的なNIC10dを介して物理的なネットワーク31に接続するのを管理するためのネットワーク管理機能24と、前記仮想マシンの相互間における管理インターフェイスや前記仮想マシンを構成する他の部分と協力して仮想マシンのマイグレーション等のサービスを実現するための仮想マシン制御機能25とを実行するようになっている。前記仮想マシン制御機能25には、仮想マシンを運用するのに必要な管理を実行するための各種機能が含まれている。なお、前記仮想マシン制御機能25を仮想マシンサービス部620(320)で実行するようにしてもよいものである。
前記ネットワーク管理機能24は図1に示すネットワーク処理部610に相当するものであり、図1において、前記ディスク管理機能23は図1の仮想マシンサービス部620と別体のディスク制御部として構築される。前記ディスク制御部は本発明の特徴ではないため、図1では図示するのを省略している。
なお、前記ハイパーバイザ500は、仮想マシンが2以上存在する場合に、それらの仮想マシンに対して仮想ネットワーク24aに対して共通に構築する、或いは前記2以上の仮想マシンの個々に対して専用の仮想ネットワークとして構築してもよいものである。
【0036】
次に、クライアントマシン800が提供するユーザデータが機密情報を含むデータである場合に行われるマイグレーションを図1及び図5に基づいて説明する。図1及び図5(a)に示す様に、リモートサイト側の仮想化プラットフォーム400上で、例えば仮想マシン12が動作している最中に、機密情報を含むユーザデータを仮想マシン12によって処理する状態が生じたとする。
機密情報を含むユーザデータを仮想マシン12によって処理する状態が生じた場合、後述のローカルサイト側のネットワーク処理部310がユーザデータに機密情報が含まれていることを検出したとき、その検出信号をローカルサイト側の仮想マシンサービス部320に出力すると、前記仮想マシンサービス部320は、マイグレーションを行うべき旨の連絡をネットワーク処理部310及びインターネット71を介してリモートサイト側のネットワーク処理部610に通知する。
前記通知を受け取ったリモートサイト側のネットワーク処理部610は、リモートサイト側の仮想マシンサービス部620に前記通知を伝送する。
前記仮想マシンサービス部620は、前記通知が伝送されたことにより、現在動作している仮想マシン12の動作状態に関する情報をリモートサイト側のネットワーク処理部610及びローカルサイト側のネットワーク処理部310を介してローカルサイト側の仮想マシンサービス部320に伝送する。
前記ローカルサイト側の仮想マシンサービス部320はリモートサイト側の仮想マシンサービス部620と協同して、リモートサイト側で動作している仮想マシン12の動作状態に関する情報を前記仮想マシンサービス部620から受け取ると、その情報をローカルサイト側のハイパーバイザ200に渡す。
前記ローカルサイト側のハイパーバイザ200は、前記情報を受け取ると、図5(b)に示す様に、その情報に基づいてローカルサイト側の仮想マシン12にリモートサイト側の仮想マシン12の動作状態をマイグレーションさせる。このマイグレーションによって、ローカルサイト側の仮想化プラットフォーム400には、リモートサイト側の仮想プラットフォーム400上で動作している仮想マシン12が構築される。
このマイグレーションによって、クライアントマシン800が提供する、機密情報を含むユーザデータを、リモートサイト側の仮想マシン12に代わって、ローカルサイト側の仮想マシン12上で処理することが可能になる。
【0037】
サービス仮想マシン41を含む仮想マシンシステムでは、HDDやネットワークなどのI/Oデバイス関連の機能を、サービス仮想マシン41に移管させることが多い。このようなサービス仮想マシン41を利用する目的は、既存のソフトウェアを再利用することでハイパーバイザの開発に係る負荷を削減すること、ハイパーバイザがソフトウェアとして膨大になりすぎるのを防ぐこと、セキュリティを高めることなどにある。
また、以上の説明では、仮想化プラットフォーム100及び400上での前記仮想マシン及び前記サービス仮想マシンの動作を制御する仮想マシン管理部200及び500としてハイパーバイザ200及び500を使用したが、ハイパーバイザ200及び500以外の構成を用いても良いものである。例えば、ハイパーバイザ200及び500に変えて、OSの機能の一部やアプリケーションにより、仮想マシン管理部200及び500を構築するようにしてもよいものである。
なお、サービス仮想マシン41を無くして、このサービス仮想マシン41の機能をハイパーバイザ500(200)が実行するようにしてもよいものである。
【0038】
次に、ローカルサイト側のネットワーク処理部310と仮想マシンサービス部320を図1,図6及び図7に基づいて説明する。
【0039】
図1に示す様に、ローカルサイト側には、このローカルサイト側の仮想化プラットフォーム100にアクセスするクライアントマシン800が配置されている。前記クライアントマシン800は、一般的なコンピュータ装置、または携帯電話端末やPDA(Personal Digital Assistant)などであり、仮想化プラットフォーム100と同様にCPU801と、RAM802と、HDD803と、NIC804等の物理的なコンピュータ資源を備えている。さらに、クライアントマシン800は、ユーザによる操作を受け付け、その操作の結果をユーザに提示する入出力部805を有している。前記クライアントマシン800は、ローカルサイト内のネットワーク31を介してローカルサイト側の仮想化プラットフォーム100にアクセスする。
【0040】
前記クライアントマシン800のウェブブラウザ810は、CPU801上で動作するプログラムであり、リモートサイト側の仮想化プラットフォーム400の仮想マシン(APサーバ700)、或いはリモートサイト側の仮想化プラットフォーム400からローカルサイト側の仮想化プラットフォーム100にマイグレーションされた仮想マシン(APサービス700)から送信されたデータをウェブコンテンツとして表示する。前記ウェブブラウザ810は入出力部805からの操作によって動作し、その操作の結果を入出力部805に表示する。HDD803には、リモートサイト側の仮想化プラットフォーム400の仮想マシン(APサーバ700)、或いはリモートサイト側の仮想化プラットフォーム400からローカルサイト側の仮想化プラットフォーム100にマイグレーションされた仮想マシン(APサービス700)によって扱われるデータファイルであるユーザデータ820が記憶されている。ユーザデータ820の構成については後述する。また、ユーザデータ820はHDD803以外に格納されている場合もある。
【0041】
なお、仮想化プラットフォーム100および400を仮想的に構築するためのコンピュータ、及びクライアントマシン800を構築するコンピュータは、CPU、RAM、HDD、NIC、入出力装置以外にも多くのデバイスが使用されているが、本明細書では本発明の実施形態を説明する上で特に必要であるデバイスについてのみ説明している。
【0042】
図6に示すローカルサイト側の仮想マシンサービス部320は、図4に示した仮想マシンサービス部41(図1に示すリモートサイト側の仮想マシンサービス部620に相当する)の構成と同様である。
本発明の実施形態におけるローカルサイト側のネットワーク処理部310は、リモートサイト側のネットワーク処理部610の構成と相違している。以下に具体的に説明する。
【0043】
本発明の実施形態におけるローカルサイト側のサービス仮想マシン300が有するネットワーク処理部310は図6に示す様に、機密データ制御部331と、プロキシ通信部332と、転送テーブル340とを有している。前記転送テーブル340は、ローカルサイト側の仮想化プラットフォーム100を構築する計算機のメモリに記憶されている。
【0044】
前記ネットワーク処理部310は汎用のウェブプロキシの機能を有すると共に、図7に示す様に、クライアントマシン800との間、及びリモートサイト側の仮想化プラットフォーム600のネットワーク処理部610との間に、それぞれ通信路81,82を個別に確立する機能を有している。具体的には、前記ネットワーク処理部310は、SSL(Secure Sockets Layer)もしくはTLS(Transport Layer Security)のプロトコルを使用することにより、クライアントマシン800との間に第1のSSL通信路81を確立し、リモートサイト側の仮想化プラットフォーム600のネットワーク処理部610との間に第2のSSL通信路82を確立している。なお、前記ネットワーク処理部310は、前記第1のSSL通信路81と前記第2のSSL通信路82とを別々に確立させる、例えば第1のSSL通信路81を確立した後に第2のSSL通信路82を、時間差等をもって別々に確立させる。
したがって、前記ネットワーク処理部310は、クライアントマシン800から提供されるSSLあるいはTLSのプロトコルを使用して暗号化されたユーザデータを受け取っても、その暗号化されたデータをクライアントマシン800からリモートサイト側の仮想化プラットフォーム400にパススルーすることはない。
前記汎用のウェブプロキシの機能は、例えばSSL或いはTLSのプロトコルを使用して暗号化されたデータとHTMLのデータとのデータの種類のみを判断し、それらのデータの内容をチェックすることなく、HTMLデータである場合にクライアントマシン800からリモートサイト側の仮想化プラットフォーム400へのアクセスを代行する機能を意味している。
【0045】
前記転送テーブル340は、ユーザデータの送信元であるクライアントマシンのアドレス情報と、リモートサイト側仮想化プラットフォーム400の仮想マシン(APサーバ700)が属する仮想ネットワーク24aを識別するための識別子と、リモートサイト側からローカルサイト側にマイグレーションされた仮想マシン(APサーバ700)が属する仮想ネットワーク24aを識別するための識別子とを対応させて記憶している。転送テーブル340は、後述の機密データ制御部331によって必要に応じて記憶データが書き換えられる。そのデータ構成については後述する。
【0046】
前記機密データ制御部331は、前記ネットワーク処理部310がクライアントマシン800との間の第1のSSL通信路81とリモートサイト側のネットワーク処理部610との間の第2のSSL通信路82とを別々に確立させてパススルーの通信路を絶つことにより、前記ネットワーク処理部310が保持しているクライアントマシン800からのユーザデータを受け取って、そのユーザデータに機密情報が含まれているか否かを判断して、ユーザデータの送信先を決定する。前記機密データ制御部331は、その判断結果に基づいて、ユーザデータに機密情報が含まれていた場合に、そのユーザデータの送信先を、ローカルサイト側の仮想化プラットフォーム100にマイグレーションされた仮想マシン(APサーバ700)に決定する。前記機密データ制御部331は、その判断結果に基づいて、ユーザデータに機密情報が含まれていない場合に、そのユーザデータの送信先を、リモートサイト側のネットワーク処理部610に決定する。
ここで、クライアントマシン800が提供するユーザデータには、機密情報を含むか否かを示す属性情報が添付されているため、前記機密データ制御部331は、ユーザデータから前記属性情報を抽出して、その属性情報に基づいて機密情報が含まれているか否かを判断する。
【0047】
前記プロキシ通信部332は、前記機密データ制御部331が決定したユーザデータの送信先へユーザデータを伝送する。具体的には、前記プロキシ通信部332は、前記機密データ制御部331がユーザデータに機密情報が含まれていることによって送信先を決定した場合に、そのユーザデータを、ローカルサイト側の仮想化プラットフォーム100にマイグレーションされた仮想マシン(APサーバ700)に伝送する。
【0048】
図8は、図6に示す転送テーブル340に記憶されているデータの構造を示す説明図である。転送テーブル340は、クライアントマシン800上で動作するウェブブラウザ810と通信を行っているAPサーバ(仮想マシン)700が、リモートサイト側の仮想化プラットフォーム400からローカルサイト側の仮想化プラットフォーム100にマイグレーションされているか否かを示すテーブルである。転送テーブル340は、ローカルサイト側の仮想化プラットフォームを構築するコンピュータのRAM上に作成されるデータである。
【0049】
リモートサイト側仮想化プラットフォーム400上の仮想マシン(APサーバ700)がローカルサイト側の仮想化プラットフォーム100にマイグレーションされた場合には、機密データ制御部331によって、転送テーブル340に、ユーザデータの送信元(クライアントマシン800)のIPアドレス341aとクライアントマシン800のポート番号341bの組と、あて先(ローカルサイト側の仮想化プラットフォーム100にマイグレーションされたAPサーバ(仮想マシン)700)にアクセスするための仮想ネットワーク識別子342aとが登録される。
したがって、ローカルサイト側ネットワーク処理部310のプロキシ通信部332は転送テーブル340に記憶されている前記転送先情報に基づいて、ユーザデータを、ローカルサイト側の仮想化プラットフォーム100にマイグレーションされた仮想マシン(APサーバ700)に伝送する。このことからして、転送テーブル340に記憶されている前記転送先情報には、ユーザデータの転送先が1つ記憶されるものであって、1つのユーザデータに対して2以上の転送先が存在することはない。
APサーバ(仮想マシン)700がローカルサイト側の仮想化プラットフォーム100にマイグレーションされていない場合には、転送テーブル340には、ユーザデータを、ローカルサイト側の仮想化プラットフォーム100にマイグレーションされた仮想マシン(APサーバ700)へ転送するための記憶データが存在しない。この場合、ユーザデータに含まれる送信情報をプロキシ通信部332が解読してリモートサイト側の仮想化プラットフォーム400に伝送する。
なお、前記仮想ネットワーク識別子342aは、ローカルサイト側の仮想化プラットフォーム100にマイグレーションされたAPサーバ(仮想マシン)700にアクセスするために仮想的に構築される仮想ネットワーク24aを識別するためのものである。
【0050】
図7に示す様に、本実施形態で使用されるデータファイルであるユーザデータ820は、そのデータの機密性が「公開」であるか「機密」であるかを示す属性情報821と、データ本体822とからなる。ユーザデータ820のデータ本体822が機密情報を含むものである場合に、その属性情報821は「機密」を示すこととなり、ユーザデータ820のデータ本体822が機密情報を含まないものである場合に、その属性情報821は「公開」を示すこととなる。
ローカルサイト側ネットワーク処理部310の機密データ制御部331は、この属性情報821によって以降の動作を決定する。
【0051】
属性情報821は、予めユーザデータ820の各々に付与されている。図7に示された例では、属性情報821がデータ本体822の先頭部に付与されているが、必ずしもこの通りである必要はない。また、この属性情報821を付与および編集する手段、方法、およびタイミングなどについては、本実施形態では特に問題とはされない。
ローカルサイト側ネットワーク処理部310のプロキシ通信部332は、クライアントマシン800のウェブブラウザ810とリモートサイト側の仮想化プラットフォーム400のAPサービス710(仮想マシン)との間の通信を中継して代行する際、ユーザデータ820に含まれている属性情報821を削除してデータ本体822のみを転送する。
【0052】
図9は、ウェブブラウザ810からAPサービス710への通信をローカルサイト側のネットワーク処理部310が中継する際に、機密データ制御部331が行う動作を示すフローチャートである。
【0053】
機密データ制御部331は、ローカルサイト内のネットワーク31を介して仮想化プラットフォーム100にアクセスしたクライアントマシン800のウェブブラウザ810からの通信データにデータファイルが含まれているか否か、即ちユーザデータ820の送信であるか否かを判定する(ステップS101)。機密データ制御部331は、ユーザデータ820の送信でなければ、処理を後述のステップS110に進める。
【0054】
機密データ制御部331は、ユーザデータの送信であれば、ユーザデータ820を通信データから取り出し(ステップS102)、取り出されたファイルであるユーザデータ820に属性情報821が含まれているかどうかを判定する(ステップS103)。機密データ制御部331は、前記属性情報821が含まれていなければ、ウェブブラウザ810に対して「データの機密性が不明である」旨のエラーを返すというエラー処理(ステップS111)を実行して、処理を終了させる。
【0055】
ステップS103に続いて機密データ制御部331は前記属性情報821が含まれている場合、ユーザデータ820に含まれる属性情報821の内容が「機密」であるか「公開」であるかについて判断する(ステップS104)。機密データ制御部331は、前記属性情報821が「公開」であれば、後述のステップS109に処理を進める。
【0056】
機密データ制御部331は、前記属性情報821の内容が「機密」であれば、その判断結果に基づいて、ユーザデータ820の送信先を、リモートサイト側の仮想プラットフォーム400からローカルサイト側仮想化プラットフォーム100にマイグレーションされた仮想マシン(APサーバ700)に決定する(ステップS105)。
【0057】
ユーザデータ820の送信先を決定する際、機密データ制御部331は転送テーブル340の内容を参照し、転送テーブル340に送信元(クライアントマシン800)のIPアドレス341aとポート番号341bの組と、ローカルサイト側仮想化プラットフォーム100にマイグレーションされた仮想マシン(APサーバ700)に繋がる仮想ネットワーク識別子342とを参照して送信先を決定する。
【0058】
機密データ制御部331は、ユーザデータの属性情報821が「機密」である場合、ローカルサイト側の仮想マシンサービス部320に、APサーバ(仮想マシン)700をローカルサイト側へマイグレーションさせるように依頼する。依頼を受けた仮想マシンサービス部320は、リモートサイト側の仮想マシンサービス部620と連携して、リモートサイト側仮想化プラットフォーム400のAPサーバ(仮想マシン)700をローカルサイト側仮想化プラットフォーム100にマイグレーションさせる(ステップS106)。
【0059】
機密データ制御部331は、前記仮想マシンサービス部320によるマイグレーション処理が成功したか否かを判断し(ステップS107)、成功したら送信元のIPアドレス341aとポート番号341bを転送テーブル340に登録する(ステップS108)。そして、機密データ制御部331は、ウェブブラウザ810のIPアドレス341a、ポート番号341bからの通信の相手を、ローカルサイト側プラットフォーム100にマイグレーションされたAPサーバ700(仮想マシン)に決定する。
【0060】
以上の判断および処理を経て、機密データ制御部331は、ユーザデータ820から属性情報821を削除し、データ本体822のみに再構成する(ステップS109)。そして、機密データ制御部331は、プロキシ通信部332に通信データを転送させる(ステップS110)。この時、ウェブブラウザ810のIPアドレス341aとポート番号341bのエントリが転送テーブル340に登録されていれば、データ本体822の転送先はローカルサイト側プラットフォーム100にマイグレーションされたAPサーバ700(仮想マシン)となり、転送テーブル340に登録されていなければ、転送先はリモートサイト側となる。
【0061】
図10は、図9で示したクライアントマシン800のウェブブラウザ810からAPサーバ(仮想マシン)700への通信の動作例を示す説明図である。図10(a)はユーザデータ820の属性情報821が「公開」の場合、図10(b)は属性情報821が「機密」の場合を各々示す。図10では、ローカルサイト側およびリモートサイト側の仮想化プラットフォーム100および400について、各々の動作を説明するのに必要な機能部のみを示し、図1〜図5で説明したような構成については、特に必要な場合を除いて図示するのを省略している。
【0062】
図10(a)に示す様にユーザデータ820の属性情報821が「公開」の場合、ローカルサイト側ネットワーク処理部310の機密データ制御部332は、ユーザデータ820の送信先をリモートサイト側仮想プラットフォーム400のネットワーク処理部610に決定する。そして、機密データ制御部332は、ユーザデータ820から属性情報821を削除して、そのユーザデータ820をプロキシ通信部332に伝送する。プロキシ通信部332は、前記ユーザデータ820を、インターネット71を介してリモートサイト側のネットワーク処理部610に伝送する。
そして、リモートサイト側に伝送されたユーザデータ820は、リモートサイト側仮想化プラットフォーム400上に仮想的に構築されたAPサーバ(仮想マシン)700によって処理される。その処理後のユーザデータはクライアントマシン800に伝送される。
【0063】
図10(b)に示す様にユーザデータ820の属性情報821が「機密」の場合、機密データ制御部331は、ユーザデータ820が機密情報を含むものであるとして判断し、そのユーザデータ820の送信先をローカルサイト側仮想化プラットフォーム100にマイグレーションされたAPサーバ(仮想マシン)700に決定する。機密データ制御部331によってユーザデータ820から属性情報821が取り除かれたデータ本体822は、仮想マシンサービス部320のマイグレーション機能によってローカルサイト側仮想化プラットフォーム100にマイグレーションされたAPサーバ700に、プロキシ通信部332によって伝送される。即ち、属性情報821が「機密」であれば、データ本体822がリモートサイト側に送信されることはないので、情報漏洩のリスクはなくなる。
【0064】
図11は、APサーバ(仮想マシン)700がローカルサイト側仮想化プラットフォーム100にマイグレーションされた際の、ウェブサービスシステム1の仮想ネットワークについて示す説明図である。
【0065】
マイグレーションされる前のAPサーバ(仮想マシン)700は、リモートサイト側仮想化プラットフォーム400上にハイパーバイザ500によって仮想的に構築された仮想ネットワーク352(仮想ネットワーク24aに相当する)に接続されている。
【0066】
図5及び図11に示す様に、リモートサイト側仮想化プラットフォーム400のAPサーバ(仮想マシン)700が、ローカルサイト側仮想化プラットフォーム100にマイグレーションされると、ローカルサイト側のハイパーバイザ200によって、マイグレーションされたAPサーバ(仮想マシン)700にアクセスするための仮想ネットワーク351(仮想ネットワーク24aに相当する)が仮想的に構築され、その仮想ネットワーク351に対して識別するための仮想ネットワーク識別子342aが付される。前記仮想ネットワーク識別子342aは機密データ制御部331によって転送テーブル340に書き込まれる。
【0067】
マイグレーションされたAPサーバ(仮想マシン)700は、仮想ネットワーク351に接続される。この仮想ネットワーク351には、ローカルサイト側ネットワーク処理部310の制御の下で、ローカルサイト側のネットワーク31を介してローカルサイト側仮想化プラットフォーム100にアクセスしたクライアントマシン800が接続されることとなり、クライアントマシン800のウェブブラウザ810は、ローカルサイト側プロキシ通信部332の制御の下で、ローカルサイト側ネットワーク31及びローカルサイト側仮想ネットワーク351を介して、ローカルサイト側仮想化プラットフォーム100上にマイグレーションされたAPサーバ(仮想マシン)700にアクセスすることとなる。
【0068】
なお、ローカルサイト側仮想化プラットフォーム100にマイグレーションしたAPサーバ(仮想マシン)700により、機密情報を含むユーザデータを処理したのに引き続いて、機密情報を含まないユーザデータを処理する場合、ローカルサイト側仮想化プラットフォーム100にマイグレーションしたAPサーバ(仮想マシン)700を用いてユーザデータを処理するようにしてもよいものである。
【0069】
(実施形態の全体的な動作)
次に、上記の実施形態の全体的な動作について説明する。本発明の実施形態に係るウェブサービスシステムを用いてウェブサービス方法を実施する場合について説明する。まずウェブサービスへの送信データ(ユーザデータ820)が機密情報を含んでいるか否かを機密データ制御部331が判断し(図9:ステップS104〜105)、ユーザデータ820が機密情報を含んでいれば、機密データ制御部331が、APサービス710が稼働する仮想マシンであるAPサーバ(仮想マシン)700をサーバマシン100の仮想マシンシステム上にマイグレーションさせて仮想マシンシステム上に組み込む(図9:ステップS106)。
【0070】
ここで、APサーバ(仮想マシン)700がローカルサイト側仮想化プラットフォーム100上にマイグレーションされている場合には、機密データ制御部331は、データの送信元と、前記APサーバ(仮想マシン)700へアクセスするための仮想ネットワークにアクセスするための仮想ネットワーク識別子との組を転送テーブル340に記憶させる(図9:ステップS108)。
【0071】
さらに、ユーザデータ820からファイルを抽出してファイルが機密情報を含んでいるかを示す属性情報を含んでいるか否かを機密データ制御部331が判断し(図9:ステップS101〜103)、属性情報を含んでいる場合に機密データ制御部331がこの属性情報を削除する(図9:ステップS109)。
【0072】
以上の説明では、本発明の実施形態をハードウェアとして構築した場合を説明したが、図1〜図7に示すハードウェアの構成をソフトウェア上で実現するプログラムとして構築しても良いものである。この場合、前記プログラムは、記録媒体に記録されて商取引の対象となる。
【0073】
以上説明したように本発明の実施形態によれば、クライアントマシンからリモートサイトへの通信形態を、クライアントマシンからローカルサイトへのセッションと、ローカルサイトからリモートサイトへのセッションを別々に確立して、通信を中継する形態として構築するため、クライアントからリモートサイトへ送出されるデータのチェックを行うことができる。
【0074】
上述したように、データのチェックが可能であるため、機密情報を含むデータの場合、リモートサイトで動作している仮想マシンをローカルサイトにマイグレーションし、その仮想マシンを用いて前記データをローカルサイトで処理することができ、機密情報を含むデータがネットワークから外部へ漏出するのを防止することができ、しかも、機密情報を含むデータ処理の場合のみ、仮想マシンのマイグレーションを利用してデータ処理を行うことができ、ローカルサイトの計算機資源を無駄に消費することを解消できる。
【0075】
さらに、クライアントマシンとローカルサイトとのセッションを確立するのみにより、利用者は、機密情報の有無に関係なく、仮想マシンを利用してデータを処理することができ、データ処理を実行するための適切な環境を用意する必要がなくなる。
【0076】
本実施形態では、ユーザデータ820の属性情報821が正しく設定されていれば、属性情報821が「機密」であるユーザデータ820を、インターネット11を介してローカルサイト外部に送信することはない。従って、情報漏洩のリスクをそもそも発生させることがない。それでいてユーザは、各自のクライアントマシンへのソフトウェアの導入および保守にかかる手間から解放されるという、ウェブベースアプリケーションを利用することによるメリットをそのまま享受することができる。
【0077】
(本実施形態の変形例)
ここで、上述の第1の実施形態にはいくつかの変形が存在する。以下、それらの変形例について説明する。上述した実施形態では、サービス仮想マシンシステムを利用するものとして説明したが、サービス仮想マシンシステムを利用せずにハイパーバイザのみで同様の構成とすることもできる。これは仮想化システムを実現する実装方式の違いに過ぎないので、ネットワークからの見かけ上の違いは特にないからである。また、ハイパーバイザを用いず、OSの機能の一部やアプリケーションとしてこれを実現する場合もある。
【0078】
また、上述した実施形態では、属性情報は「機密」と「公開」の2種類のみが存在したが、これに3段階以上の機密性を設定することが考えられる。この場合、本発明のウェブプロキシを持つ仮想マシンシステムを多段構成として、設定された機密性に応じてAPサーバ(仮想マシン)をマイグレーションさせる仮想マシンシステムの位置を変更するように構成すればよい。
【0079】
また、上述した実施形態では、ユーザデータに付与された属性情報によってデータの機密性を判定するものとしたが、これをデータ本体の内容そのものによって判定するようにしてもよい。この場合、たとえばデータを直接走査してキーワードとの一致により機密性を判定する方法、データを直接走査して他のデータとの間の依存関係から機密性を推定する方法などが考えられる。他にも、データの機密性の判定には、当業者が適用可能な任意の方法を使用することができる。
【0080】
これまで本発明について図面に示した特定の実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができる。
【産業上の利用可能性】
【0081】
本発明は、ウェブベースアプリケーションを利用するシステムにおいて幅広く利用することができる。
【符号の説明】
【0082】
1 ウェブサービスシステム
71 インターネット
72 ルータ
73 ルータ
81、82 SSL(TLS)通信路
100、400 仮想化プラットフォーム
200、500 ハイパーバイザ
300、600 サービス仮想マシン
310、610 ネットワーク処理部
320、620 仮想マシンサービス部
331 機密データ制御部
332 プロキシ通信部
340 転送テーブル
700 APサーバ(仮想マシン)
800 クライアントマシン
805 入出力部
810 ウェブブラウザ
820 ユーザデータ
821 属性情報
822 データ本体

【特許請求の範囲】
【請求項1】
クライアントマシンから提供されるユーザデータをリモートサイト側の仮想マシンによって処理するウェブサービスシステムにおいて、
通信網で連繋されたローカルサイト側の仮想化プラットフォーム及びリモートサイト側の仮想化プラットフォームを有し、
前記ローカルサイト側の仮想化プラットフォームは、
前記クライアントマシンとの間と、前記リモートサイト側の仮想化プラットフォームのネットワーク処理部との間とにおいて別々に通信路を確立するネットワーク処理部と、
前記ローカルサイト側の前記ネットワーク処理部に伝送されたユーザデータに機密情報が含まれているか否かを判断し、その判断結果に基づいて前記ユーザデータの送信先を決定する機密データ制御部と、
前記機密データ制御部がユーザデータに機密情報が含まれていると判断した結果を受けて、リモートサイト側の仮想化プラットフォームの仮想マシンをローカルサイト側の仮想化プラットフォームにマイグレーションする仮想マシンサービス部とを有することを特徴とするウェブサービスシステム。
【請求項2】
前記ユーザデータは、機密情報の有無を示す属性情報を有しており、
前記機密データ制御部は、ユーザデータの前記属性情報に基づいて機密情報が含まれているか否かを判断するものである請求項1に記載のウェブサービスシステム。
【請求項3】
前記ネットワーク処理部が、前記データの送信元のアドレス情報と仮想ネットワークの識別子を記憶している転送テーブルを有し、
前記機密データ制御部が、前記ウェブサーバが前記第1の仮想マシンシステム上にマイグレーションされている場合に、前記転送テーブルに、前記データの送信元と前記ウェブサーバが属する仮想ネットワークの識別子の組を記憶する機能を有する請求項1に記載のウェブサービスシステム。
【請求項4】
前記機密データ制御部が、前記ウェブサーバへの前記送信データからファイルを抽出して前記ファイルが機密情報を含んでいるかを示す属性情報の有無を判断すると共に、前記属性情報がある場合にこの属性情報を削除する機能を有する請求項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


【公開番号】特開2010−244515(P2010−244515A)
【公開日】平成22年10月28日(2010.10.28)
【国際特許分類】
【出願番号】特願2009−278713(P2009−278713)
【出願日】平成21年12月8日(2009.12.8)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】