最初に、図1を用いて、本実施例に係るファイル転送システムの概要について説明する。図1は、本実施例に係るファイル転送システムの概要を説明するための説明図である。同図に示すように、このファイル転送システム100は、ホストクライアント10と、転送サーバ20と、情報管理サーバ30と、メールサーバ50とが、LAN(Local Area Network)などのネットワークを介して接続されて構成されている。
なお、同図においては、論理的な機能ごとに各サーバを設置した場合を示しているが、上記のファイル転送システムでは、これらのサーバを物理的に同じ筐体に収容する構成をとることも可能である。
ホストクライアント10は、ホストユーザが使用するクライアント装置であり、直接あるいはAPサーバを介して、転送サーバ20に接続されている。具体的には、このホストクライアント10は、自装置を収容する転送サーバ20と通信を行い、ファイルの送信/受信および暗号化/復号化を行う。
かかるホストクライアント10は、例えば、パーソナルコンピュータなどの端末装置に専用のクライアントソフトウェアをインストールすることによって実現される。または、ホストクライアント10は、例えば、専用のクライアントソフトウェアと同等の機能を提供する専用のアプリケーションソフトウェアをAPサーバにインストールしておき、そのアプリケーションソフトウェアを利用することが可能な汎用的なブラウザを端末装置に実装することによって実現される。
転送サーバ20は、専用アドレスに基づいてファイルを転送するサーバ装置である。具体的には、この転送サーバ20は、ホストクライアント10からの要求に応じて、情報管理サーバ30へのユーザ情報の問い合わせや、転送ファイルのルーティングなどを行う。また、転送サーバ20は、ファイルの転送状態を管理し、ホストクライアント10からの要求に応じてファイル転送状態を通知する。
情報管理サーバ30は、ファイル転送サービスに加入しているユーザ情報など管理するサーバ装置である。具体的には、この情報管理サーバ30は、グループ情報やユーザアドレス、ユーザ収容グループ、ユーザ収容転送サーバ、ユーザの送受信可否情報、ユーザ公開鍵、転送サーバ間の接続関係、グループ・ユーザのサービス加入情報などを管理し、転送サーバ20からの要求に応じてそれらの情報を提供する。
ゲストサーバ40は、ゲストユーザとの間でメッセージやファイルの受信および送信を行うための機能を提供するサーバ装置であり、メールサーバ50は、組織内または組織間でやり取りされる電子メールの送受信および管理を行うサーバ装置である。
また、このファイル転送システム100は、ゲストサーバ40において、例えばインターネットやWAN(Wide Area Network)などを介して、ゲストユーザが使用するゲストユーザ端末60と接続されている。
このような構成のもと、本実施例に係るファイル転送システム100では、ファイル転送用の専用アドレスが付与されていないゲストユーザとの間でもファイルを転送することができるようにしている点に特徴がある。以下、かかるファイル転送システム100の特徴について具体的に説明してゆく。
まず、図2を用いて、本実施例に係るファイル転送システム100によるファイル転送手順の概要について説明する。図2は、本実施例に係るファイル転送システム100によるファイル転送手順の概要を説明するための図である。なお、ここでは、ホストユーザとゲストユーザとの間でファイルの転送が行われる場合を中心に説明する。
同図に示すように、本実施例に係るファイル転送システム100では、専用アドレスが付与されているホストユーザが、他のユーザに対してファイル送信を依頼するためのファイル送信依頼を、他のホストユーザあるいはゲストユーザに対して送信することによって、ファイル転送が開始される。
具体的には、ホストユーザは、まず、ファイル送信の依頼先となる依頼先アドレスと、ファイル送信依頼に応じてユーザがファイルを送信する際の送信先となる返信先アドレスと、送信依頼メッセージとをそれぞれ指定して、ホストクライアント10にファイル送信依頼の送信を要求する。このとき、ホストユーザは、ファイル送信を依頼するユーザに対してファイルを送りたい場合は、そのファイルを添付したうえでファイル送信依頼を送信する(同図(1)参照)。
ここで、例えば、ホストユーザは、他のホストユーザに対してファイル送信を依頼する場合には、依頼先のホストユーザに付与されている専用アドレスを依頼先アドレスに指定し、ゲストユーザに対してファイル送信を依頼する場合には、依頼先のゲストユーザのメールアドレス(電子メールのアドレス)を依頼先アドレスとして指定する。また、ホストユーザは、返信先アドレスとして、自身または他のホストユーザの専用アドレスを指定する。
ファイル送信依頼の送信を要求されると、ホストクライアント10は、依頼先がゲストユーザであるか否かを判定し、ゲストユーザであると判定した場合には、情報管理サーバ30からゲストエージェントの専用アドレスを取得する(同図(2)参照)。ここで、「ゲストエージェント」とは、このファイル転送システム100で用いられているファイル転送用の専用アドレスが付与された仮想的なユーザであり、ゲストユーザとホストユーザとの間で仲立ちを行うユーザである。
ゲストエージェントの専用アドレスを取得すると、ホストクライアント10は、取得した専用アドレスを送信先として、自装置を収容する転送サーバ20に対してファイル送信依頼を送信する。このとき、ホストクライアント10は、ホストユーザから指定された返信先アドレスと、ゲストユーザのメールアドレスとをそれぞれファイル送信依頼に含めて送信する(同図(3)参照)。
ファイル送信依頼が送信された転送サーバ20は、送信先がゲストエージェントであるか否かを判定し、ゲストエージェントであると判定した場合には、ゲストエージェントを収容するゲストサーバ40までのルーティング情報を情報管理サーバ30から取得し(同図(4)参照)、取得したルーティング情報に基づいてルーティングを行って、受信したファイル送信依頼をゲストサーバ40まで転送する(同図(5)参照)。
そして、ファイル送信依頼を受信したゲストサーバ40は、ゲストユーザに対して送信依頼メッセージおよび添付ファイルを取得する手段を提供するための取得用URL(Uniform Resource Locator)と、当該取得用URLへのアクセスを許可するための取得用パスワードと、ゲストユーザに対してファイル送信依頼に応じたファイルの送信を行う手段を提供するための返信用URLと、当該返信用URLへのアクセスを許可するための返信用パスワードとをそれぞれ生成する。そして、ゲストサーバ40は、受信したファイル送信依頼に含まれていたゲストユーザのメールアドレスに対して、生成した各URLおよび各パスワードを含めた電子メール(以下、「依頼到着通知メール」と呼ぶ)を送信する(同図(6)参照)。ここで送信された依頼到着通知メールは、メールサーバ50によってゲストユーザ宛に送信される。
依頼到着通知メールが送信されたゲストユーザは、ゲストユーザ端末60を用いて当該依頼到着通知メールを受信する。そして、ゲストユーザは、ゲストユーザ端末60に備えられているブラウザを用いて、依頼到着通知メールに含まれていた取得用URLおよび取得用パスワードを用いてゲストサーバ40にアクセスする。このアクセスにより、ゲストユーザ端末60は、ホストユーザから送信されたファイル送信依頼に含まれていた送信依頼メッセージおよび添付ファイルをゲストサーバ40から取得するとともに、取得した送信依頼メッセージをブラウザ上に表示する(同図(7)参照)。
そして、送信依頼メッセージがブラウザ上に表示されると、ゲストユーザは、その送信依頼メッセージを確認し、続いて、依頼到着通知メールに含まれていた返信用URLおよび返信用パスワードを用いてゲストサーバ40にアクセスする。このとき、ゲストユーザ端末60は、ゲストサーバ40がファイルを返信するためのファイル返信用画面に関する情報をゲストサーバ40から取得し、当該ファイル返信用画面をブラウザ上に表示する。
ブラウザ上にファイル返信用画面が表示されると、ゲストユーザは、そのファイル返信用画面を用いて、ファイル送信依頼により送信を依頼されたファイルを指定する。この指定を受け付けると、ゲストユーザ端末60は、指定されたファイルをゲストサーバ40に対して送信する(同図(8)参照)。
そして、このファイルを受信したゲストサーバ40は、ホストユーザから受信したファイル送信依頼に含まれていた返信先アドレスを送信先として、自装置を収容する転送サーバ20に対して、受信したファイルを送信する。そして、ファイル送信応答を受信した転送サーバ20は、送信先となっている返信先アドレスが付与されているホストユーザを収容する転送サーバ20までのルーティング情報を情報管理サーバ30から取得し(同図(9)参照)、取得したルーティング情報に基づいてルーティングを行って、受信したファイルを転送サーバ20まで転送する(同図(10)参照)。
そして、返信先となっていたホストユーザは、ホストクライアント10を用いて自身を収容している転送サーバ20にアクセスして、自身宛に送信されているファイルを受信する(同図(11)参照)。
このように、本実施例に係るファイル転送システム100では、ホストクライアント10が、ゲストユーザに対してファイル送信依頼を送信する場合に、返信先アドレスと、ゲストユーザのメールアドレスとをファイル送信依頼に含めて転送サーバ20に送信する。転送サーバ20は、ファイル送信依頼を受信すると、受信したファイル送信依頼をゲストエージェントの専用アドレスに基づいて、ゲストサーバ40まで転送する。ゲストサーバ40は、ファイル送信依頼を受信すると、受信したファイル送信依頼に含まれているゲストユーザのメールアドレスに依頼到着通知メールを送信する。そして、ゲストユーザは、ゲストユーザ端末60を用いて依頼到着通知メールを受信すると、その依頼到着通知メールに含まれている取得用URLおよび取得用パスワードを用いてホストユーザから送られた送信依頼メッセージおよび添付ファイルを取得し、また、同じく依頼到着通知メールに含まれていた返信用URLおよび返信用パスワードを用いて、依頼されたファイルをホストユーザへ返信する。したがって、本実施例に係るファイル転送システム100では、専用アドレスが付与されていないゲストユーザとの間でもファイルを転送することができるようになる。
次に、図3および4を用いて、本実施例に係るファイル転送システム100によるファイル転送手順の詳細について説明する。図3および4は、本実施例に係るファイル転送システム100によるファイル転送手順の詳細を説明するためのシーケンス図(1)および(2)である。なお、ここでは、組織外のゲストユーザに対してファイルの送付を依頼する場合について説明する。また、両図において、転送サーバ20aは、ホストユーザを収容する転送サーバ20であり、転送サーバ20bは、ゲストエージェントを収容する転送サーバ20である。
図3に示すように、本実施例に係るファイル転送システム100では、まず、ホストクライアント10が、他のユーザに対してファイル送信を依頼するファイル送信依頼の送信要求を、依頼元のホストユーザから受け付ける(ステップS101)。
このとき、具体的には、ホストクライアント10は、組織外のゲストユーザに対してファイル送信を依頼する場合には、送信要求とともに、「送信者アドレス」、「ゲスト送信フラグ」、「ゲストユーザメールアドレス」(依頼先アドレス)、「送信依頼メッセージ」、「返信先アドレス」、および、添付ファイルをそれぞれ受け付ける。
ここで、送信者アドレスには、送信元のホストユーザに付与されている専用アドレスが設定され、ゲストユーザメールアドレスには、依頼先のゲストユーザのメールアドレス(電子メールのアドレス)が設定される。また、送信依頼メッセージには、依頼元のホストユーザによって入力されたメッセージが設定され、返信先アドレスには、返信先となるホストユーザ(以下、「返信先ユーザ」と呼ぶ)の専用アドレスが設定される。返信先ユーザは、依頼元のホストユーザであってもよいし、他のホストユーザであってもよい。
また、ホストクライアント10は、受け付けたファイル送信依頼の依頼先がホストユーザであるかゲストユーザであるかを判定し、ゲストユーザであった場合には、ホストユーザとゲストユーザとを判別するための「ゲスト送信フラグ」に「true」を設定しておく。
続いて、ホストクライアント10は、ゲストエージェントに関する情報を情報管理サーバ30から取得するための情報取得要求を転送サーバ20aに送信する(ステップS102)。このとき、具体的には、ホストクライアント10は、送信元のホストユーザから受け付けた「送信者アドレス」を、情報取得要求に含めて送信する。
転送サーバ20aは、情報取得要求を受信すると、情報取得要求に含まれている送信者アドレスに基づいて、自装置が記憶している情報を検索し、送信者であるホストユーザが所属するグループを管理する情報管理サーバ30の位置を取得する(ステップS103)。そして、転送サーバ20aは、位置を取得した情報管理サーバ30に対して、ホストクライアント10から受信した情報取得要求を転送する(ステップS104)。
情報管理サーバ30は、情報取得要求を受信すると、自装置が記憶している情報を検索し、要求されたゲストエージェントに関する情報を取得する(ステップS105)。ここで、自装置が記憶している情報に当該ゲストエージェントに関する情報がなかった場合には、情報管理サーバ30は、他の情報管理サーバ30に問い合わせることによって必要な情報を取得する。そして、情報管理サーバ30は、取得した情報を転送サーバ20aに送信する(ステップS106)。
このとき、具体的には、情報管理サーバ30は、送信者アドレスに対応する「ゲストエージェントの専用アドレス」、「ゲストエージェントを収容する転送サーバ20bまでのルーティング情報」、「ゲストエージェント−送信者間の送受信可否情報」、および、「ゲストエージェントの公開鍵」をそれぞれ取得して送信する。
転送サーバ20aは、ゲストエージェントに関する情報を受信すると、その情報をホストクライアント10に転送する(ステップS107)。
ホストクライアント10は、ゲストエージェントに関する情報を受信すると、ホストユーザによって指定されたファイルをゲストエージェントの公開鍵を利用して暗号化し(ステップS108)、転送サーバ20aに対して、暗号化したファイルを添付したファイル送信依頼を送信する(ステップS109)。
このとき、具体的には、ホストクライアント10は、ホストユーザから受け付けた「送信者アドレス」、「ゲスト送信フラグ」、「ゲストユーザメールアドレス」、「送信依頼メッセージ」および「返信先アドレス」に加えて、転送サーバ20aを介して情報管理サーバ30から取得した「ゲストエージェントの専用アドレス」および「転送サーバ20bまでのルーティング情報」を、それぞれファイル送信依頼に含めて送信する。
転送サーバ20aは、ファイル送信依頼および添付ファイルを受信すると、ファイル送信依頼に含まれているルーティング情報に基づいて、ゲストエージェントを収容する転送サーバ20bまでのルーティングを行い(ステップS110)、ホストクライアント10から受信したファイル送信依頼および添付ファイルを転送サーバ20bに転送する(ステップS111)。
なお、ここでは、転送サーバ20aが、ホストクライアント10から情報取得要求を受信した場合に、転送サーバ20bまでのルーティング情報を他の情報とともに情報管理サーバ30から取得してホストクライアント10に転送し、その後、ホストクライアント10からファイル送信依頼を受信した場合に、そのファイル送信依頼に含まれるルーティング情報に基づいて転送サーバ20bまでのルーティングを行うこととした。
しかし、転送サーバ20aがルーティング情報を取得するタイミングはこれに限られるわけではなく、例えば、転送サーバ20aが、ステップS109においてホストクライアント10から送信されたファイル送信依頼を受信した後に、情報管理サーバ30からルーティング情報を取得するようにしてもよい。これにより、ステップS107において転送サーバ20aがホストクライアント10へルーティング情報を送信する必要がなくなるので、ホストクライアント10にルーティング情報を処理させることなく、転送サーバ20aが転送サーバ20bまでのルーティングを行うことができるようになる。
転送サーバ20bは、ファイル送信依頼および添付ファイルを受信すると、ファイル送信依頼に含まれているルーティング情報に基づいて、自装置が目的の転送サーバであることを確認し(ステップS112)、さらに、ファイル送信依頼に含まれているゲスト送信フラグが「true」であった場合には、ゲストサーバ40に対して、ファイル送信依頼が到着したことを通知するための依頼到着通知を送信する(ステップS113)。
このとき、具体的には、転送サーバ20bは、ファイル送信依頼に含まれていた「送信者アドレス」、「ゲストユーザメールアドレス」、「送信依頼メッセージ」、「返信先アドレス」および「ゲストエージェントの専用アドレス」を、それぞれ依頼到着通知に含めて送信する。
ゲストサーバ40は、依頼到着通知を受信すると、送信依頼メッセージおよび添付ファイルを取得するための取得用URLおよび取得用パスワード、ならびに、ファイルを返信するための返信用URLおよび返信用パスワードをそれぞれ生成する(ステップS114)。そして、ゲストサーバ40は、生成した各URLおよび各パスワードを含めた依頼到着通知メールをメールサーバ50に送信する(ステップS115)。
このとき、具体的には、ゲストサーバ40は、それぞれ一回のみ指定が可能なURL(ワンタイムURL)およびパスワード(ワンタイムパスワード)を、取得用URLおよび取得用パスワード、ならびに、返信用URLおよび返信用パスワードとして生成して送信する。
続いて、ゲストユーザ端末60が、メール受信の要求をゲストユーザから受け付けた場合に、メールサーバ50から依頼到着通知メールを受信する(ステップS116)。そして、ゲストユーザ端末60は、依頼到着通知メールに含まれていた取得用URLおよび取得用パスワードによるログイン要求をゲストユーザから受け付けると(ステップS117)、ゲストサーバ40に対して、ファイル取得用のログイン要求を送信する(ステップS118)。
ゲストサーバ40は、ログイン要求を受信すると、そのログイン要求に対する認証処理を行い(ステップS119)、認証できた場合には、ゲストユーザ端末60に備えられたブラウザに送信依頼メッセージを表示し、さらに、添付ファイル取得用のボタンを表示する(ステップS120)。
そして、ゲストユーザ端末60が、添付ファイル取得用のボタンが押されることによって、ゲストユーザから添付ファイルの取得要求を受け付けた場合に(ステップS121)、ゲストサーバ40に対して添付ファイル取得要求を送信する(ステップS122)。
ゲストサーバ40は、添付ファイル取得要求を受信すると、その添付ファイル取得要求を転送サーバ20bに転送する(ステップS123)。
転送サーバ20bは、転送された添付ファイル取得要求を受信すると、折り返し、ファイル送信依頼に添付されていた添付ファイルをゲストサーバ40に送信する(ステップS124)。
ゲストサーバ40は、添付ファイルを受信すると、記憶している情報を検索してゲストエージェントの秘密鍵を取得し、取得した秘密鍵で添付ファイルを復号化する(ステップS125)。そして、ゲストサーバ40は、復号化した添付ファイルをゲストユーザ端末60に送信する(ステップS126)。
こうして、ファイル送信依頼を要求した際にホストユーザが添付したファイルが、転送サーバ20によってゲストエージェントの専用アドレスに基づいて転送され、依頼先のゲストユーザが使用するゲストユーザ端末60まで届けられる。
続いて、図4に示すように、ゲストユーザ端末60が、依頼到着通知メールに含まれていた返信用URLおよび返信用パスワードによるログイン要求をゲストユーザから受け付けた場合に(ステップS127)、ゲストサーバ40に対してファイル返信用のログイン要求を送信する(ステップS128)。
ゲストサーバ40は、ログイン要求を受信すると、そのログイン要求に対する認証処理を行い(ステップS129)、認証できた場合には、返信メッセージの入力および返信ファイルの送信を行うためのファイル返信用画面を、ゲストユーザ端末60に備えられたブラウザに表示する(ステップS130)。
そして、ゲストユーザ端末60が、ファイル返信用画面を介して、ゲストユーザから返信メッセージおよび返信ファイルを受け付けた場合に(ステップS131)、受け付けた返信メッセージおよび返信ファイルをゲストサーバ40に対して送信する(ステップS132)。
ゲストサーバ40は、返信メッセージおよび返信ファイルを受信すると、返信先ユーザに関する情報を情報管理サーバ30から取得するための情報取得要求を転送サーバ20bに送信する(ステップS133)。このとき、具体的には、ゲストサーバ40は、依頼到着通知に含まれていた「ゲストエージェントの専用アドレス」および「返信先アドレス」を、それぞれ情報取得要求に含めて送信する。
転送サーバ20bは、情報取得要求を受信すると、その情報取得要求に含まれているゲストエージェントのアドレスに基づいて、自装置が記憶している情報を検索し、ゲストエージェントが所属する情報管理サーバ30の位置を取得する(ステップS134)。そして、転送サーバ20bは、その情報管理サーバ30に対して、ゲストサーバ40から受信した情報取得要求を転送する(ステップS135)。
情報管理サーバ30は、情報取得要求を受信すると、自装置が記憶している情報を検索し、要求された返信先ユーザに関する情報を取得する(ステップS136)。ここで、情報管理サーバ30は、自装置が記憶している情報に当該返信先アドレスに関する情報がなかった場合には、他の情報管理サーバ30に問い合わせることによって必要な情報を取得する。そして、情報管理サーバ30は、取得した情報を転送サーバ20bに送信する(ステップS137)。
このとき、具体的には、情報管理サーバ30は、返信先ユーザを収容する転送サーバ20aまでの「ルーティング情報」、「ゲストエージェント−返信先アドレス間の送受信可否情報」、「返信先ユーザの公開鍵」を、それぞれ取得して送信する。
転送サーバ20bは、返信先ユーザに関する情報を受信すると、その情報をゲストサーバ40に転送する(ステップS138)。
そして、ゲストサーバ40は、返信先ユーザに関する情報を受信すると、ゲストユーザ端末60から送信された返信ファイルを、受信した返信先ユーザの公開鍵を利用して暗号化し(ステップS139)、返信メッセージを含めたファイル返信応答および暗号化したファイルを転送サーバ20bに送信する(ステップS140)。
このとき、具体的には、ゲストサーバ40は、依頼到着通知に含まれていた「ゲストエージェントの専用アドレス」および「返信先アドレス」に加えて、ゲストユーザ端末60から送信された「返信メッセージ」、および、転送サーバ20bを介して情報管理サーバ30から取得した転送サーバ20aまでの「ルーティング情報」を、それぞれファイル返信応答に含めて送信する。
転送サーバ20bは、ファイル返信応答および返信ファイルを受信すると、そのファイル返信応答に含まれているルーティング情報に基づいて、返信先ユーザを収容する転送サーバ20aまでのルーティングを行い(ステップS141)、ホストクライアント10から受信したファイル返信応答および返信ファイルを転送サーバ20aに転送する(ステップS142)。
そして、転送サーバ20aは、ファイル返信応答および返信ファイルを受信すると、そのファイル返信応答に含まれているルーティング情報に基づいて、自装置が目的の転送サーバであることを確認し(ステップS143)、ファイル返信応答に含まれていた返信メッセージおよび返信ファイルを、それぞれ返信先アドレスに対応付けて保持しておく。
その後、ホストクライアント10が、返信先ユーザであるホストユーザから返信メッセージの確認要求を受け付けた場合に(ステップS144)、転送サーバ20aに対して、新たに着信した返信メッセージがるか否かを確認するための確認要求を送信する(ステップS145)。このとき、具体的には、ホストクライアント10は、返信先ユーザの専用アドレスである「返信先アドレス」を、確認要求に含めて送信する。
転送サーバ20aは、新着メッセージの確認要求を受信すると、その時点で保持されている返信メッセージの中から、確認要求に含まれていた返信先ユーザのアドレスに対応付けられている新着の返信メッセージを検索して(ステップS146)、ホストクライアント10に送信する(ステップS147)。
ホストクライアント10は、返信メッセージを受信すると、その返信メッセージを表示し、返信先ユーザから返信ファイルの取得要求を受け付けると、転送サーバ20aに対して返信ファイル取得要求を送信する(ステップS148)。
転送サーバ20aは、返信ファイル取得要求を受信すると、その時点で保持されている返信ファイルの中から、当該返信先ユーザのアドレスに対応付けられている返信ファイルを取得して、ホストクライアント10に送信する(ステップS149)。
そして、ホストクライアント10は、返信ファイルを受信すると、その返信ファイルを返信先ユーザの秘密鍵で復号化する(ステップS150)。
こうして、ファイル送信依頼を要求したゲストユーザから送られた返信ファイルが、転送サーバ20によって返信先ユーザの専用アドレスに基づいて転送され、ファイルの返信先として指定された返信先ユーザが使用するホストクライアント10まで届けられる。
次に、図5〜8を用いて、上記で説明したファイル転送システム100における各装置の構成について説明する。図5は、ホストクライアント10の構成を示す機能ブロック図であり、図6は、転送サーバ20の構成を示す機能ブロック図であり、図7は、情報管理サーバ30の構成を示す機能ブロック図であり、図8は、ゲストサーバ40の構成を示す機能ブロック図である。
まず、ホストクライアント10は、図5に示すように、入力部11と、表示部12と、要求受付・応答部13と、要求送信・応答受信部14と、制御部15とを有する。
入力部11は、各種情報を入力する装置であり、マウスやトラックボールなどのポインティングデバイスおよびキーボードなどによって構成される。表示部12は、各種情報を表示する装置であり、CRT(Cathode Ray Tube)ディスプレイや液晶ディスプレイなどによって構成される。
要求受付・応答部13は、入力部11から入力された各種情報を受け付けて制御部に引き渡し、制御部から渡された情報を表示部12に表示する処理部である。例えば、この要求受付・応答部13は、入力部11を介して、ホストユーザからファイル送信の依頼を受け付ける。
なお、要求受付・応答部13は、ファイル送信の依頼を受け付けた際に、受け付けたファイル送信依頼の依頼先がホストユーザであるかゲストユーザであるかを判定して、ゲストユーザであった場合には、「ゲスト送信フラグ」に「true」を設定するが、この判定方法としては、例えば、以下の方法がある。
例えば、要求受付・応答部13は、ファイル送信の依頼とともに入力される各種項目(「送信者アドレス」、「依頼先アドレス」、「送信依頼メッセージ」、「返信先アドレス」など)を受け付けるための入力画面を表示部12に表示し、その入力画面において、依頼先アドレスを入力するフィールドを、ホストユーザの専用アドレスを入力するためのものと、ゲストユーザのメールアドレスを入力するためのものと、それぞれ設けておく。そして、要求受付・応答部13は、入力されたフィールドに基づいて、依頼先がホストユーザであるかゲストユーザであるかを判定する。
または、要求受付・応答部13は、かかる入力画面において、依頼先アドレスを入力するフィールドをひとつ設けておき、そのフィールドに入力されたアドレスの構造が専用アドレスの構造であった場合には、依頼先がホストユーザであると判断し、電子メールのアドレスであった場合には、依頼先がゲストユーザであると判断するようにしてもよい。
制御部15は、ホストクライアント10の全体制御を行う処理部であり、本発明に関連する機能部としては、ファイル暗号化部15aと、ユーザ情報取得部15bと、送信依頼・添付ファイル送信部15cと、新着有無確認部15dと、ファイル復号部15eと、返信ファイル取得部15fとを有する。
ファイル暗号化部15aは、後述する送信依頼・添付ファイル送信部15cによる制御のもと、ファイルの暗号化を行う処理部である。ユーザ情報取得部15bは、後述する送信依頼・添付ファイル送信部15cによる制御のもと、情報取得要求を転送サーバ20に送信することによって、各種ユーザに関する情報を情報管理サーバ30から取得する処理部である。
送信依頼・添付ファイル送信部15cは、ファイル送信依頼および添付ファイルの送信に関する処理を行う処理部である。具体的には、この送信依頼・添付ファイル送信部15cは、要求受付・応答部13を介してファイル送信依頼の送信要求を受け付けた場合は、ユーザ情報取得部15bを制御して、ゲストエージェントに関する情報を取得し、さらに、ファイル暗号化部15aを制御して、ホストユーザによって指定されたファイルをゲストエージェントの公開鍵を利用して暗号化し、暗号化したファイルを添付したファイル送信依頼を転送サーバ20に対して送信する。
新着有無確認部15dは、返信メッセージの有無を確認する処理部である。具体的には、この新着有無確認部15dは、ホストユーザから返信メッセージの確認要求を受け付けた場合に、転送サーバ20に対して、新たに着信した返信メッセージがあるか否かを確認するための確認要求を送信することによって、新たな返信メッセージの有無を確認する。
ファイル復号部15eは、後述する返信ファイル取得部15fによる制御のもと、ファイルの復号化を行う処理部である。
返信ファイル取得部15fは、ファイル送信依頼の依頼先から送られた返信ファイルを取得する処理部である。具体的には、この返信ファイル取得部15fは、ホストユーザから返信ファイルの取得要求を受け付けた場合に、転送サーバ20に対して返信ファイル取得要求を送信することによって返信ファイルを取得し、さらに、ファイル復号部15eを制御して、取得した返信ファイルを返信先ユーザの秘密鍵で復号化する。
また、転送サーバ20は、図6に示すように、要求受付・応答部21と、問い合わせ情報転送部22と、メッセージ・添付ファイル転送部23と、送受信メッセージ・添付ファイル管理部24とを有する。
要求受付・応答部21は、ネットワークを介して装置間でやり取りされる各種情報の送受信を制御する処理部である。
問い合わせ情報転送部22は、ネットワークを介して装置間でやり取りされる問合せ情報の転送を制御する処理部である。具体的には、この問い合わせ情報転送部22は、転送サーバ20から情報取得要求を受信した場合は、情報取得要求に含まれているアドレスに基づいて、後述する情報管理サーバ位置情報管理部24aによって管理されている情報を検索して情報管理サーバ30の位置を取得し、その情報管理サーバ30に対して情報取得要求を転送する。また、問い合わせ情報転送部22は、情報管理サーバ30から各種ユーザに関する情報を受信した場合には、その情報を要求元に転送する。
メッセージ・添付ファイル転送部23は、ネットワークを介して装置間でやり取りされるメッセージおよび添付ファイルの転送を制御する処理部である。具体的には、このメッセージ・添付ファイル転送部23は、ファイル送信依頼および添付ファイル、あるいは、ファイル返信応答および返信ファイルを受信した場合には、それらを後述するメッセージ・添付ファイル転送完了判定部24bに引き渡す。
また、メッセージ・添付ファイル転送部23は、メッセージ・添付ファイル転送完了判定部24bからファイル送信依頼および添付ファイル、あるいは、ファイル返信応答および返信ファイルが返却された場合には、ファイル送信依頼あるいはファイル返信応答に含まれているルーティング情報に基づいてルーティングを行って、受信したファイル送信依頼および添付ファイル、あるいは、ファイル返信応答および返信ファイルを宛先のユーザを収容する転送サーバ20に転送する。
送受信メッセージ・添付ファイル管理部24は、装置間で送受信されるメッセージおよび添付ファイルに関する情報を管理する処理部であり、情報管理サーバ位置情報管理部24aと、メッセージ・添付ファイル転送完了判定部24bと、ゲストフラグ判定部24cと、送信依頼到着通知部24dと、暗号化添付ファイルダウンロード部24eと、新着問い合わせ部24fと、状態変化情報管理部24gとを有する。
情報管理サーバ位置情報管理部24aは、情報管理サーバの位置情報を管理する処理部である。ここでいう情報管理サーバの位置情報は、図示していない記憶部により、ユーザが所属するグループごとに記憶されている。
メッセージ・添付ファイル転送完了判定部24bは、メッセージおよび添付ファイルが自装置宛であるか否かを判定する処理部である。具体的には、このメッセージ・添付ファイル転送完了判定部24bは、ファイル送信依頼および添付ファイル、あるいは、ファイル返信応答および返信ファイルが渡されると、それらの宛先が自装置であるか否かを確認し、自装置であった場合には、ファイル送信依頼に含まれていた依頼メッセージおよび添付ファイル、あるいは、ファイル返信応答に含まれていた返信メッセージおよび返信ファイルを、それぞれ宛先のアドレスに対応付けて保持しておく。
一方、メッセージ・添付ファイル転送完了判定部24bは、ファイル送信依頼および添付ファイル、あるいは、ファイル返信応答および返信ファイルの宛先が自装置でなかった場合には、それらをメッセージ・添付ファイル転送部23に返却する。
ゲストフラグ判定部24cは、ファイル送信依頼に含まれているゲストフラグに基づいて、ファイル送信依頼の依頼先がホストユーザであるかゲストユーザであるか否かを判定する処理部である。具体的には、このゲストフラグ判定部24cは、メッセージ・添付ファイル転送完了判定部24bからファイル送信依頼が渡されると、そのファイル送信依頼に含まれているゲスト送信フラグが「true」であるか否かを確認し、「true」であった場合には、依頼先がゲストユーザであると判定して、当該ファイル送信依頼を後述する送信依頼到着通知部24dに引き渡す。
送信依頼到着通知部24dは、ゲストユーザ宛のファイル送信依頼が到着した場合に、依頼到着通知を送信する処理部である。具体的には、この送信依頼到着通知部24dは、ゲストフラグ判定部24cからファイル送信依頼が渡されると、ファイル送信依頼が到着したことを通知するための依頼到着通知を生成し、ゲストサーバ40に対して送信する。
暗号化添付ファイルダウンロード部24eは、ネットワークを介して転送されるファイルの転送を制御する処理部である。具体的には、この暗号化添付ファイルダウンロード部24eは、ゲストサーバ40から添付ファイル取得要求を受信した場合には、その時点で保持されているファイルの中から、要求されたファイルを取得してゲストサーバ40に送信する。また、暗号化添付ファイルダウンロード部24eは、ホストクライアント10から返信ファイル取得要求を受信した場合には、その時点で保持されているファイルの中から、当該返信先ユーザのアドレスに対応付けられている返信ファイルを取得して、ホストクライアント10に送信する。
新着問い合わせ部24fは、ホストクライアント10から新着メッセージの確認要求を受信すると、その時点で保持されている返信メッセージの中から、確認要求に含まれていた返信先ユーザのアドレスに対応付けられている新着の返信メッセージを取得して、ホストクライアント10に送信する。状態変化情報管理部24gは、送受信の状態に関する情報を管理する処理部である。ここでいう送受信の状態に関する情報は、図示していない記憶部により記憶されており、ホストクライアント10からの要求に応じて、ホストクライアント10に通知される。
また、情報管理サーバ30は、図7に示すように、要求受信部31と、要求転送部32と、情報管理部33とを有する。
要求受信部31は、ネットワークを介して他の装置から送られる情報の受信を制御する処理部であり、要求転送部32は、ネットワークを介して他の装置へ送られる情報の送信を制御する処理部である。
情報管理部33は、各種情報を管理し、管理している情報の中から、他の装置から要求された各種情報を取得して応答する処理部であり、ルーティング情報管理部33aと、グループ情報管理部33bと、送受信可否情報管理部33fとを有し、このうち、グループ情報管理部33bは、ユーザ情報管理部33cと、ゲストエージェント情報管理部33dと、公開鍵情報管理部33eとを有する。
ルーティング情報管理部33aは、転送サーバ20間のルーティング情報を管理する処理部である。ここでいう転送サーバ20間のルーティング情報は、図示していない記憶部により記憶されている。
グループ情報管理部33bは、グループに関する情報を管理する処理部である。ここでいうグループに関する情報は、グループのアドレスや、グループ管理者情報などを含んでおり、図示していない記憶部によりグループごとに記憶されている。
ユーザ情報管理部33cは、グループに属するホストユーザに関する情報を管理する処理部である。ここでいうグループに属するユーザに関する情報は、ホストユーザの専用アドレスや、収容されている転送サーバに関する情報などを含んでおり、図示していない記憶部によりホストユーザごとに記憶されている。
ゲストエージェント情報管理部33dは、グループに属するゲストエージェントに関する情報を管理する処理部である。ここでいうグループに属するゲストエージェント関する情報は、ゲストエージェントの専用アドレスや、収容されている転送サーバ、収容されているゲストサーバに関する情報などを含んでおり、図示していない記憶部によりゲストエージェントごとに記憶されている。
公開鍵情報管理部33eは、ファイルの暗号化を行うための公開鍵を管理する処理部である。ここでいう転送サーバ20間のルーティング情報は、図示していない記憶部によりユーザごとに記憶されている。
送受信可否情報管理部33fは、ユーザまたはグループ間における送受信の可否に関する情報を管理する処理部である。なお、ここでいうユーザまたはグループ間における送受信の可否に関する情報は、図示していない記憶部により記憶されている。
また、ゲストサーバ40は、図8に示すように、要求受付・応答部41と、要求受付・応答部42と、ワンタイムURL/ワンタイムパスワード生成部43と、メール送信部44と、ログイン認証部45と、情報管理・状態通知部46と、画面制御部47と、添付ファイル復号部48と、メッセージ・添付ファイル送信部49とを有する。
要求受付・応答部41および42は、ネットワークを介して装置間でやり取りされる情報の送受信を制御する処理部である。
ワンタイムURL/ワンタイムパスワード生成部43は、ゲストユーザに送信するURLおよびパスワードを生成する処理部である。具体的には、このワンタイムURL/ワンタイムパスワード生成部43は、依頼到着通知を受信した場合は、送信依頼メッセージおよび添付ファイルを取得するための取得用URLおよび取得用パスワード、ならびに、ファイルを返信するための返信用URLおよび返信用パスワードをそれぞれ生成し、後述するメール送信部に引き渡す。
なお、ここで、ワンタイムURL/ワンタイムパスワード生成部43は、取得用URLおよび取得用パスワード、ならびに、返信用URLおよび返信用パスワードとして、一回のみ指定が可能なURL(ワンタイムURL)およびパスワード(ワンタイムパスワード)をそれぞれ生成して送信する。
メール送信部44は、ゲストユーザに依頼到着通知メールを送信する処理部である。具体的には、このメール送信部44は、ワンタイムURL/ワンタイムパスワード生成部43から取得用URLおよび取得用パスワード、ならびに、返信用URLおよび返信用パスワードが渡されると、それらを含めた依頼到着通知メールを生成して、メールサーバ50に送信する。
ここで、メール送信部44は、取得用URLおよび取得用パスワード、ならびに、返信用URLおよび返信用パスワードの全てを同一の依頼到着通知メールで送信してもよいし、取得用URLおよび取得用パスワードの組と、返信用URLおよび返信用パスワードの組とをそれぞれ別の依頼到着通知メールで送信するようにしてもよい。または、取得用URL、取得用パスワード、返信用URL、返信用パスワードをそれぞれ個別の依頼到着通知メールで送信するようにしてもよい。依頼到着通知メールを分割することによって、利便性やセキュリティをより高めることが可能になる。
ログイン認証部45は、ゲストユーザのログインに関する処理を行う処理部である。具体的には、このログイン認証部45は、ゲストユーザ端末60からログイン要求を受信した場合に、ログイン要求に含まれるパスワードに基づいて認証処理を行う。そして、ログイン認証部45は、ログイン要求が認証できた場合には、受信したログイン要求を後述する情報管理・状態通知部46に引き渡す。
情報管理・状態通知部46は、ログイン要求に応じて処理を振り分ける処理部である。具体的には、この情報管理・状態通知部46は、ログイン認証部45からログイン要求が渡されると、そのログイン要求が取得用URLおよび取得用パスワードによるものであった場合には、ゲストユーザ端末60に備えられたブラウザに送信依頼メッセージを表示し、さらに、添付ファイル取得用のボタンを表示するよう、後述する画面制御部47を制御する。
一方、ログイン認証部45は、ログイン認証部45から渡されたログイン要求が返信用URLおよび返信用パスワードによるものであった場合には、ゲストユーザ端末60に備えられたブラウザにファイル返信用画面を表示するよう後述する画面制御部47に指示する。
画面制御部47は、情報管理・状態通知部46による制御のもと、ゲストユーザ端末60に備えられたブラウザに各種メッセージや各種画面などを表示させる処理部である。具体的には、この画面制御部47は、ログイン認証部45からの指示に応じて、返信メッセージの入力および返信ファイルの添付を行うためのファイル返信用画面をゲストユーザ端末60のブラウザに表示する。
このとき、画面制御部47は、ファイル返信用画面上に返信用アドレスを表示しないようにする。これにより、ゲストユーザによって勝手に返信先が変えられてしまうことを防ぐことが可能になる。または、画面制御部47は、返信用アドレスを表示するが編集は不可としてもよい。もちろん、ゲストユーザに返信アドレスの変更を許可する場合には、返信用アドレスを表示して編集も可能としてもよい。
添付ファイル復号部48は、ファイル送信依頼に添付されていた添付ファイルの復号化を行う処理部である。具体的には、添付ファイル復号部48は、添付ファイル取得要求を受信した場合には、その添付ファイル取得要求を転送サーバ20に転送する。そして、転送サーバ20から添付ファイルが応答されると、添付ファイル復号部48は、ゲストエージェントの秘密鍵を用いて添付ファイルを復号化し、復号化した添付ファイルをゲストユーザ端末60に送信する。
メッセージ・添付ファイル送信部49は、添付ファイル暗号化部49aと、受信者情報問い合わせ部49bとを有する。
添付ファイル暗号化部49aは、受信者情報問い合わせ部49bによる制御のもと、ファイルを暗号化する処理部である。
受信者情報問い合わせ部49bは、各種ユーザに関する情報を情報管理サーバ30から取得する処理部である。具体的には、この受信者情報問い合わせ部49bは、返信メッセージおよび返信ファイルを受信した場合は、返信先ユーザに関する情報を情報管理サーバ30から取得するための情報取得要求を転送サーバ20に送信する。
そして、受信者情報問い合わせ部49bは、返信先ユーザに関する情報が応答されると、添付ファイル暗号化部49aを制御して、ゲストユーザ端末60から送信された返信ファイルを暗号化し、暗号化した返信ファイルおよびファイル返信応答を転送サーバ20に送信する。
上述してきたように、本実施例では、ホストクライアント10が、ホストユーザからの要求に応じて、他のユーザに対してファイル送信を依頼するためのファイル送信依頼をゲストユーザに対して送信する場合に、そのファイル送信依頼に応じてゲストユーザがファイルを送信する際の送信先となる返信先アドレスと、当該ゲストユーザのメールアドレスとをそれぞれファイル送信依頼に含めて転送サーバ20に送信する。また、転送サーバ20が、ホストクライアント10からファイル送信依頼を受信した場合に、当該ファイル送信依頼によるファイル送信の依頼先がゲストユーザであるか否かを判定し、依頼先がゲストユーザであると判定した場合に、受信したファイル送信依頼をゲストサーバ40まで転送する。そして、ゲストサーバ40が、そのゲストユーザに対してファイル送信依頼に応じたファイル送信を許可するための返信用URLおよび返信用パスワードを含めた依頼到着通知メールを、ファイル送信依頼に含まれていたゲストユーザのメールアドレスに送信し、その後、送信した依頼到着通知メールに含めていた返信用URLおよび返信用パスワードをゲストユーザから受け付けた場合に、当該返信用認証情報とともに受け付けたファイルをファイル送信依頼に含まれていた返信アドレスに転送する。これにより、本実施例では、ファイル転送用の専用アドレスが付与されていないユーザとの間でもファイルを転送することが可能になる。
また、本実施例では、ホストクライアント10が、ホストユーザから受け付けたファイルをファイル送信依頼に添付して送信する。また、ゲストサーバ40が、依頼到着通知メールを送信する際に、ゲストユーザに対してファイル送信依頼に添付されていたファイルの取得を許可するための取得用URLおよび取得用パスワードを依頼到着通知メールにさらに含めて送信する。そして、ゲストサーバ40が、依頼到着通知メールに含めていた取得用URLおよび取得用パスワードをゲストユーザから受け付けた場合に、ファイル送信依頼に添付されていたファイルを当該ゲストユーザに転送する。これにより、本実施例では、組織内のホストユーザから組織外のゲストユーザに対してファイルを転送することが可能になる。また、ファイル送信を依頼されたゲストユーザのみがファイルの送信を行うことが可能となるので、専用アドレスが付与されていないユーザから無作為に大量のメールが送信されるのを防ぐことが可能になる。
また、本実施例では、ホストクライアント10が、ホストユーザから受け付けた送信依頼メッセージをファイル送信依頼にさらに含めて送信する。また、ゲストサーバ40が、送信した依頼到着通知メールに含めていた取得用認証情報をゲストユーザから受け付けた場合に、ファイル送信依頼に含まれていた送信依頼メッセージを当該ゲストユーザに通知するとともに、当該ゲストユーザからファイルの取得要求を受け付ける。そして、ゲストサーバ40が、ゲストユーザからファイルの取得要求を受け付けた場合に、ファイル送信依頼に添付されていたファイルを当該ゲストユーザに転送する。これにより、本実施例では、ゲストユーザが、ホストユーザから送られたメッセージに基づいて、返信すべきファイルを選択したり、ファイルを返信するか否かを判断したりすることができるようになる。
また、本実施例では、ゲストサーバ40が、依頼到着通知メールを送信する際に、一回のみ使用可能なワンタイムURLおよびワンタイムパスワードを返信用URLおよび返信用パスワード認証情報として含めて依頼到着通知メールを送信する。これにより、本実施例では、専用アドレスが付与されていないユーザによって何度もファイルが送信されるのを防ぐことが可能になる。
また、本実施例では、ゲストサーバ40が、依頼到着通知メールを送信する際に、ファイル送信依頼により送信を依頼されたファイルを指定するファイル返信用画面をゲストユーザに提供するためのURLを依頼到着通知メールに含めて送信するので、ゲストユーザが使用するゲストユーザ端末60に専用のクライアントソフトウェアをインストールすることなく、汎用的なブラウザを用いてファイルの転送を行うことが可能になる。
また、本実施例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。
この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。