(57)【要約】【課題】セキュリティ強度を高く維持しながら、ネットワークに接続されたサーバのデータを共有するシステムを提供することを目的とする。【解決手段】データ管理装置１はファイアーウォールの内側のＬＡＮに配置され、サーバ３は、ファイアーウォールの外側のＷＡＮに配置される。データ管理装置１からサーバ３に対してＴＣＰ接続要求が行われ（Ｓ１０１）、ＴＣＰコネクションが確立されると、データ管理装置１からインデックス情報がサーバ３に送信される（Ｓ１０５）。この後、ＴＣＰコネクションは保持される。クライアント装置４は、サーバ３からインデックス情報を取得し（Ｓ１１２）、インデックス情報に基づいてサーバ３に対してファイルアクセス要求を行う（Ｓ１１３）。サーバ３は、保持しているＴＣＰコネクションを利用してデータ管理装置１からファイルを取得し（Ｓ１１４,１１５）、クライアント装置４にファイルを送信する（Ｓ１１６）。【選択図】図３
2007258806.tif 000002
【特許請求の範囲】
【請求項１】
データ管理装置からのＴＣＰコネクション接続要求を受け付けてＴＣＰコネクションを保持し、保持しているＴＣＰコネクションを用いて前記データ管理装置が管理しているデータのインデックス情報を受信する手段と、
クライアント装置に前記インデックス情報を送信する手段と、
前記クライアント装置から前記インデックス情報に基づいて前記データ管理装置が管理しているデータへのアクセス要求を受信した場合に、接続保持しているＴＣＰコネクションを用いて前記データ管理装置から指定されたデータを取得し、前記クライアント装置に取得したデータを送信する手段と、
を備えることを特徴とするサーバ装置。
【請求項２】
請求項１に記載のサーバ装置であって、さらに、
前記クライアント装置によるアクセス要求を認証する手段、
を備えることを特徴とするサーバ装置。
【請求項３】
請求項１または請求項２に記載のサーバ装置において、さらに、
複数のデータ管理装置との間でＴＣＰコネクションを保持して、複数のデータ管理装置からインデックス情報を受信する手段と、
各データ管理装置あるいはグループ化されたデータ管理装置に対する前記クライアント装置のアクセス権を設定する手段と、
アクセス権が与えられているデータ管理装置のインデックス情報を前記クライアント装置に送信する手段と、
を備えることを特徴とするサーバ装置。
【請求項４】
データ管理装置とサーバ装置とクライアント装置とを備える通信システムであって、
前記データ管理装置は、
データを蓄積管理する手段と、
前記サーバ装置にＴＣＰコネクション接続を要求する手段と、
を備え、
前記サーバ装置は、
前記データ管理装置からのＴＣＰコネクション接続要求を受け付けてＴＣＰコネクションを保持し、保持しているＴＣＰコネクションを用いて前記データ管理装置が管理しているデータのインデックス情報を受信する手段と、
前記クライアント装置に前記インデックス情報を送信する手段と、
を備え、
前記クライアント装置は、
前記インデックス情報に基づいて前記データ管理装置が管理しているデータへのアクセス要求を前記サーバ装置に送信する手段、
を備え、
前記サーバ装置は、さらに、
前記クライアント装置から前記データ管理装置が管理しているデータへのアクセス要求を受信した場合に、接続保持しているＴＣＰコネクションを用いて前記データ管理装置から指定されたデータを取得し、前記クライアント装置に取得したデータを送信する手段、
を備えることを特徴とする通信システム。
【請求項５】
請求項４に記載の通信システムであって、
前記サーバ装置は、さらに、
前記クライアント装置によるアクセス要求を認証する手段、
を備えることを特徴とする通信システム。
【請求項６】
請求項４または請求項５に記載の通信システムにおいて、
前記サーバ装置は、さらに、
複数のデータ管理装置との間でＴＣＰコネクションを保持して、複数のデータ管理装置からインデックス情報を受信する手段と、
各データ管理装置あるいはグループ化されたデータ管理装置に対する前記クライアント装置のアクセス権を設定する手段と、
アクセス権が与えられているデータ管理装置のインデックス情報を前記クライアント装置に送信する手段と、
を備えることを特徴とする通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを利用したデータの共有技術に関する。
【背景技術】
【０００２】
ネットワークに接続されたサーバを利用する様々な通信システムが存在する。たとえば、ネットワークを介してクライアント装置とデータサーバとが接続されており、クライアント装置がデータサーバに蓄積されているデータにアクセスして様々なアプリケーションを実行するのである。
【０００３】
ここで、同じネットワーク内にクライアント装置とデータサーバが存在するシステムであれば、サーバを保護する必要性はそれほど高くない。たとえば、オフィスのＬＡＮに設置されたデータサーバに各社員が利用するパソコンが接続するシステムであれば、一般的には、データサーバは、パソコンからの接続要求を受け付けて問題はない。
【０００４】
これに対して、サーバがインターネットなどの公共のネットワークに接続されている場合には事情が異なる。サーバは、通常ＬＡＮなどのプライベートなネットワークに配置され、インターネットとの間にはファイアーウォールが設けられる。このようにして、外部から自由にサーバにアクセスされることを禁止し、社内ネットワークなどのセキュリティを確保するようにしているのである。
【０００５】
下記特許文献１は、複数の業務サーバを使い分けるネットワークシステムに関するものである。ユーザからのログイン要求は、一旦、ゲートウェイサーバが受信する。ゲートウェイサーバは、ログイン要求の内容から接続先の業務サーバを決定し、ゲートウェイサーバから業務サーバに対してコネクションを確立するようにしている。
【０００６】
【特許文献１】特開２００２−２６９０５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記のように、通常プライベートなネットワークに配置されたサーバを公開するためには、公共ネットワークとの間にファイアーウォールが設けられる。しかし、外部からサーバへの接続を可能とするためには、ファイアーウォールに所定のポートを空けなければならないため、セキュリティの強度が低下するという問題がある。
【０００８】
上記特許文献１のように、クライアント装置とサーバとの間にゲートウェイを介在させる方法がある。しかし、上記特許文献１においても、ゲートウェイサーバから業務サーバに対してコネクションの確立を行う必要がある。したがって、業務サーバがファイアーウォールの内側に存在する場合には、やはり外のネットワークからプライベートなネットワーク内に向けて接続要求を送信する必要があり、ファイアーウォールを通過させる必要がある。
【０００９】
また、クライアント装置がデータサーバに直接接続する形態は、ネットワークに接続されているデータサーバの環境が変化した場合に、クライアント装置においても設定を変更する必要があるため、管理負担も小さくない。
【００１０】
そこで、本発明は前記問題点に鑑み、セキュリティ強度を高く維持しながら、ネットワークに接続されたサーバに対するクライアント装置のアクセスを可能とするシステムを構築することを目的とする。
【課題を解決するための手段】
【００１１】
請求項１記載の発明は、データ管理装置からのＴＣＰコネクション接続要求を受け付けてＴＣＰコネクションを保持し、保持しているＴＣＰコネクションを用いて前記データ管理装置が管理しているデータのインデックス情報を受信する手段と、クライアント装置に前記インデックス情報を送信する手段と、前記クライアント装置から前記インデックス情報に基づいて前記データ管理装置が管理しているデータへのアクセス要求を受信した場合に、接続保持しているＴＣＰコネクションを用いて前記データ管理装置から指定されたデータを取得し、前記クライアント装置に取得したデータを送信する手段と、を備えることを特徴とする。
【００１２】
請求項２記載の発明は、請求項１に記載のサーバ装置であって、さらに、前記クライアント装置によるアクセス要求を認証する手段、を備えることを特徴とする。
【００１３】
請求項３記載の発明は、請求項１または請求項２に記載のサーバ装置において、さらに、複数のデータ管理装置との間でＴＣＰコネクションを保持して、複数のデータ管理装置からインデックス情報を受信する手段と、各データ管理装置あるいはグループ化されたデータ管理装置に対する前記クライアント装置のアクセス権を設定する手段と、アクセス権が与えられているデータ管理装置のインデックス情報を前記クライアント装置に送信する手段と、を備えることを特徴とする。
【００１４】
請求項４記載の発明は、データ管理装置とサーバ装置とクライアン端末とを備える通信システムであって、前記データ管理装置は、データを蓄積管理する手段と、前記サーバ装置にＴＣＰコネクション接続を要求する手段と、を備え、前記サーバ装置は、前記データ管理装置からのＴＣＰコネクション接続要求を受け付けてＴＣＰコネクションを保持し、保持しているＴＣＰコネクションを用いて前記データ管理装置が管理しているデータのインデックス情報を受信する手段と、前記クライアント装置に前記インデックス情報を送信する手段と、を備え、前記クライアント装置は、前記インデックス情報に基づいて前記データ管理装置が管理しているデータへのアクセス要求を前記サーバ装置に送信する手段、を備え、前記サーバ装置は、さらに、前記クライアント装置から前記データ管理装置が管理しているデータへのアクセス要求を受信した場合に、接続保持しているＴＣＰコネクションを用いて前記データ管理装置から指定されたデータを取得し、前記クライアント装置に取得したデータを送信する手段、を備えることを特徴とする。
【００１５】
請求項５記載の発明は、請求項４に記載の通信システムであって、前記サーバ装置は、さらに、前記クライアント装置によるアクセス要求を認証する手段、を備えることを特徴とする。
【００１６】
請求項６記載の発明は、請求項４または請求項５に記載の通信システムにおいて、前記サーバ装置は、さらに、複数のデータ管理装置との間でＴＣＰコネクションを保持して、複数のデータ管理装置からインデックス情報を受信する手段と、各データ管理装置あるいはグループ化されたデータ管理装置に対する前記クライアント装置のアクセス権を設定する手段と、アクセス権が与えられているデータ管理装置のインデックス情報を前記クライアント装置に送信する手段と、を備えることを特徴とする。
【発明の効果】
【００１７】
本発明のサーバ装置は、データ管理装置からのＴＣＰコネクション接続要求を受け付けてＴＣＰコネクションを保持する。そして、クライアント装置からアクセス要求を受信した場合、接続保持しているＴＣＰコネクションを用いてデータ管理装置からデータを取得し、クライアント装置にデータを送信する。したがって、サーバ装置からデータ管理装置に対してＴＣＰの接続要求を行う必要がないので、データ管理装置をセキュリティの高いネットワークの中に置くことが可能である。クライアント装置に対しては、データ管理装置の場所やデータの場所を隠蔽することができ、セキュリティを高く維持することができる。また、データアクセスを拒否するためには、データ管理装置側からＴＣＰコネクションを切断すればよいので、緊急時のアクセス制限を容易に行うことが可能である。また、サーバ装置とデータ管理装置との間でＴＣＰコネクションを保持しておくことで、データ管理装置の障害を即時に検出することが可能であり、従来のようにデータ管理装置へのアクセスが発生したときに接続を試みて失敗してから異常に気付くことがなくなる。
【００１８】
また、本発明のサーバ装置は、クライアント装置によるアクセス要求を認証する手段を備えるので、データ管理装置に認証手段を持たせる必要がない。複数のデータ管理装置が存在する場合には、サーバ装置において、認証情報を一元管理することが可能である。
【発明を実施するための最良の形態】
【００１９】
以下、図面を参照しつつ本発明の実施の形態について説明する。図１は、本実施の形態に係る通信システムの全体概略図である。この通信システムは、ＬＡＮ（Local Area Network）に設置されたデータ管理装置１と、ＷＡＮ（Wide Area Network）に設置されたゲートウェイファイルサーバ３と、クライアント装置４とを備えている。図に示すように、ＷＡＮには複数のＬＡＮが接続されており、それぞれのＬＡＮにデータ管理装置１が配置されている。もちろん、１つのＬＡＮに複数のデータ管理装置１が接続されていてもよい。
【００２０】
ＬＡＮは、プライベートなネットワークであり、ＬＡＮとＷＡＮとの間にはファイアーウォール２が設けられている。したがって、ＷＡＮ側からＬＡＮの中のコンピュータに対するアクセスは制限されている。クライアント装置４は、ユーザが利用する端末である。ユーザは、クライアント装置４を利用してデータ管理装置１に格納されたデータを参照したり、データ管理装置１に対してデータの更新処理をおこなったりする。クライアント装置４は、ＷＡＮに直接あるいは他のネットワークを介して接続されている。
【００２１】
図２は、データ管理装置１およびゲートウェイファイルサーバ３のブロック図である。データ管理装置１は、データ管理部１１、記憶装置１２を備えている。データ管理部１１は、データ管理装置１に格納されているプログラムがＣＰＵ，ＲＡＭなどのハードウェア資源を利用して実行されることにより実現する機能部である。データ管理部１１は、ゲートウェイファイルサーバ３との間でインデックス情報や記憶装置１２に格納されたデータの送受信を行う機能を備えている。
【００２２】
ゲートウェイファイルサーバ３は、アクセス制御部３１、記憶装置３２を備えている。アクセス制御部３１は、ゲートウェイファイルサーバ３に格納されているプログラムがＣＰＵ，ＲＡＭなどのハードウェア資源を利用して実行されることにより実現する機能部である。記憶装置３２には、インデックス情報１０１、データ管理装置データベース（以下、データベースをＤＢと略す。）１０２、クライアント装置ＤＢ１０３、アクセス権限ＤＢ１０４、アクセスログＤＢ１０５を備えている。
【００２３】
インデックス情報１０１は、データ管理装置１から取得した情報である。インデックス情報１０１には、データ管理装置１が記憶装置１２内に蓄積しているデータのインデックスが記録されている。クライアント装置４に対してこのインデックス情報１０１を提供することで、ユーザは、データ管理装置１にどのようなデータが格納されているかを知ることができる。表１は、インデックス情報１０１のレコードの内容を示す表である。
【００２４】
【表１】
2007258806.tif 000003
【００２５】
表１に示すように、インデックス情報１０１には、各データの「ファイル名」、「ファイルサイズ」、「ファイルの種類」、「ファイルの更新日時」が記録されている。また、ゲートウェイファイルサーバ３は、記憶装置３２に、複数のデータ管理装置１のインデックス情報１０１を格納する。たとえば、図１に示すように、３つのデータ管理装置１が蓄積しているデータを利用するシステムであれば、ゲートウェイファイルサーバ３は、３つのデータ管理装置１のインデックス情報１０１を全て保持する。
【００２６】
データ管理装置ＤＢ１０２は、この通信システムで利用可能なデータ管理装置１のデータベースである。表２は、データ管理装置ＤＢ１０２の登録例を示す表である。ここでは、２つのデータ管理装置１（「DataserverA」および「DataserverB」）の登録例を示している。
【００２７】
【表２】
2007258806.tif 000004
【００２８】
表２において、「データ管理装置ＩＤ」は、複数あるデータ管理装置１を識別するＩＤである。「パスワード」は、各データ管理装置１が、ゲートウェイファイルサーバ３にログインするためのパスワードである。「接続状態」とは、現在ゲートウェイファイルサーバ３とＴＣＰコネクションの接続が保持されているかどうかを登録するフィールドである。「インデックス最終更新日時」とは、データ管理装置１がゲートウェイファイルサーバ３にインデックス情報を最後に送信した日時の情報である。
【００２９】
クライアント装置ＤＢ１０３は、この通信システムを利用するクライアント装置４のデータベースである。表３は、クライアント装置ＤＢ１０３の登録例を示す表である。ここでは、２つのクライアント装置４（「ClientA」および「ClientB」）の登録例を示している。
【００３０】
【表３】
2007258806.tif 000005
【００３１】
表３において、「クライアント装置ＩＤ」は、複数あるクライアント装置４を識別するＩＤである。「パスワード」は、各クライアント装置４が、ゲートウェイファイルサーバ３にログインするためのパスワードである。「ログイン状態」とは、現在ゲートウェイファイルサーバ３にログインしているかどうかを設定するフィールドである。
【００３２】
アクセス権限ＤＢ１０４は、クライアント装置４のデータ管理装置１に対するアクセス権を登録するデータベースである。この通信システムは、複数のデータ管理装置１がデータを利用可能に提供するが、全てのクライアント装置４に対して一律にデータアクセスを許可するのではなく、このＤＢ１０４でアクセス権限を管理するようにしている。表４は、アクセス権限ＤＢ１０４の登録例を示す図である。
【００３３】
【表４】
2007258806.tif 000006
【００３４】
表４においては、２つのデータ管理装置１（「DataserverA」および「DataserverB」）に関するアクセス権限が登録されている。つまり、DataserverAに対してはClientA,B,Cがアクセス可能であり、DataserverBに対してはClientAのみがアクセス可能となっている。なお、表４で示したように、個々のデータ管理装置１に対するアクセス権限を設定する以外に、グループ化されたデータ管理装置１に対してアクセス制限を設定してもよい。たとえば、同一のＬＡＮの中に存在する複数のデータ管理装置１に対して、共通のアクセス制限を設定する場合に便利である。この場合、データ管理装置ＩＤには、グループＩＤを設定すればよい。
【００３５】
アクセスログＤＢ１０５は、クライアント装置４がデータ管理装置１に格納されたデータにアクセスしたログを記録したデータベースである。表５は、アクセスログＤＢ１０５の登録例を示す図である。たとえば、ClientAが、2005年11月5日の8時に、「DataserverA」に格納されたファイル「aaaa」を読み出した（R）というログが記録されている。あるいは、ClientBが、2005年11月5日の8時30分に、「DataserverB」にファイル「bbbb」を書き込みした（W）というログが記録されている。
【００３６】
【表５】
2007258806.tif 000007
【００３７】
以上の如く構成されたデータ管理装置１およびゲートウェイファイルサーバ３を利用した通信システムの処理の流れについて図３、図６〜図９のフローチャートを参照しながら説明する。なお、各フローチャートで実行される処理は、データ管理装置１については、データ管理部１１により実行される処理であり、ゲートウェイファイルサーバ３については、アクセス制御部３１により実行される処理である。
【００３８】
図３は、データ管理装置１、ゲートウェイファイルサーバ３、クライアント装置４を含めた全ての装置の間の処理の流れを示す図である。なお、以下において、適宜、ゲートウェイファイルサーバ３をサーバ３と略して説明する。
【００３９】
まず、データ管理装置１がサーバ３に対してＴＣＰ接続要求を行う（ステップＳ１０１）。このＴＣＰ接続要求は、ファイアーウォールの内側（ＬＡＮ側）から外側（ＷＡＮ側）へ向けて送信される要求であるので、ファイアーウォールにセキュリティを低下させるようなポート設定を行う必要はない。
【００４０】
サーバ３から応答があると（ステップＳ１０２）、データ管理装置１とサーバ３との間でＴＣＰコネクションが確立される。次に、データ管理装置１はログイン要求を送信する（ステップＳ１０３）。このログイン要求にはパスワード情報が含まれる。サーバ３は、ログイン要求を受けると、データ管理装置ＤＢ１０２を参照してパスワードの認証を行う。そして、認証に成功すると応答する（ステップＳ１０４）。
【００４１】
データ管理装置１は、認証を受けると、次に、インデックス情報１０１をサーバ３に送信する（ステップＳ１０５）。インデックス情報１０１には、データ管理装置１が蓄積しているデータのインデックスが記録されている。サーバ３は、インデックス情報１０１を受信すると、このインデックス情報１０１を記憶装置３２に格納する。そして、データ管理装置１に対してインデックス情報１０１の登録が完了したことを通知する応答を行う（ステップＳ１０６）。
【００４２】
このようにして、データ管理装置１が蓄積しているデータのインデックス情報１０１がサーバ３の記憶装置３２に格納される。そして、インデックス情報１０１の送信が完了した後も、データ管理装置１は、サーバ３とのＴＣＰコネクションを保持しておくのである。つまり、データ管理装置１からサーバ３に対してＴＣＰコネクションを確立してインデックス情報を送信し、その後、そのＴＣＰコネクションを保持しておくのである。
【００４３】
次に、クライアント装置４が、サーバ３に対してＴＣＰ接続要求を行う（ステップＳ１０７）。サーバ３は、ＷＡＮに接続されるサーバであり、ファイアーウォールの外側に位置しているので、クライアント装置４は、サーバ３に対してアクセスすることが可能である。
【００４４】
サーバ３がＴＣＰ接続要求に対して応答すると（ステップＳ１０８）、クライアント装置４とサーバ３との間でＴＣＰコネクションが確立される。次に、クライアント装置４がログイン要求を送信する（ステップＳ１０９）。このログイン要求には、パスワード情報が含まれる。サーバ３は、クライアント装置ＤＢ１０３を参照して、パスワードの認証を行い、認証に成功するとクライアント装置４に応答する（ステップＳ１１０）。
【００４５】
ログインに成功すると、クライアント装置４は、サーバ３に対してインデックス要求を送信する（ステップＳ１１１）。サーバ３は、記憶装置３２に格納されているインデックス情報１０１をクライアント装置４に送信する（ステップＳ１１２）。ただし、サーバ３は、アクセス権限ＤＢ１０４を参照し、クライアント装置４がアクセス権限のあるデータ管理装置１（あるいはアクセス権限のあるグループに属するデータ管理装置１）のインデックス情報１０１のみを送信する。
【００４６】
このようにして、クライアント装置４では、インデックス情報１０１を受信すると、図４に示すようにクライアント装置４のモニタにインデックス情報１０１に基づいて生成されたユーザインタフェースが表示される。図４の例では、クライアント装置４は、DataserverA,B,Cの３つのデータ管理装置１のインデックス情報１０１を受信し、それら各データ管理装置１に格納されているデータの情報が表示されている。たとえば、図に示すようにデータがフォルダで管理されている場合には、そのフォルダを含めて階層的に表示すればユーザにとって利便性がよい。図では、DataserverAのフォルダが選択されることで、その配下のフォルダやファイルが表示されている。
【００４７】
ユーザは、図４で示したようなユーザインタフェースを参照し、アクセスしたいファイルを選択する。この操作に応答してクライアント装置４が、サーバ３にファイルアクセス要求を行う（ステップＳ１１３）。サーバ３は、ファイルアクセス要求を受信すると、データ管理装置１に対してファイルアクセス要求を転送する（ステップＳ１１４）。なお、このとき、データ管理装置１との間で保持されているＴＣＰコネクション（ステップＳ１０１、１０２で確立されたＴＣＰコネクション）が利用される。
【００４８】
データ管理装置１は、アクセス要求を受けると、該当するファイルをサーバ３に送信する（ステップＳ１１５）。サーバ３は、データ管理装置１から受信したファイルをクライアント装置４に転送する（ステップＳ１１６）。このようにして、クライアント装置４は、所望のファイルにアクセスすることができるのである。
【００４９】
クライアント装置４において、受信したファイルに変更が加えられると、クライアント装置４からサーバ３にファイル書き込み要求が送信される（ステップＳ１１７）。サーバ３は、保持しているＴＣＰコネクションを利用して、データ管理装置１にファイル書き込み要求を転送する（ステップＳ１１８）。
【００５０】
データ管理装置１は、ファイルの書き込みを完了すると、サーバ３に応答する（ステップＳ１１９）。サーバ３は、書き込みが完了したことをクライアント装置４に応答する（ステップＳ１２０）。
【００５１】
ファイルの書き込み処理が実行されたことにより、データ管理装置１に格納されているデータの情報が変更されるので、データ管理装置１は、インデックス情報１０１を再度サーバ３に送信する（ステップＳ１２１）。サーバ３は、インデックス情報１０１を更新してデータ管理装置１に応答する（ステップＳ１２２）。
【００５２】
この後、任意のタイミングで（定期的に実行されることが好ましいが）、クライアント装置４から再びインデックス要求が行われると（ステップＳ１２３）、サーバ３は、更新されたインデックス情報１０１をクライアント装置４に送信する（ステップＳ１２４）。このようにして、クライアント装置４には、最新のインデックス情報１０１が提供される。
【００５３】
また、任意のタイミングで、データ管理装置１からサーバ３にログアウト要求が行われる（ステップＳ１２５）。サーバ３はログアウト処理を実行し、データ管理装置１に応答する（ステップＳ１２６）。これにより、データ管理装置１とサーバ３との間のＴＣＰコネクションが切断される。
【００５４】
このときはまだ、クライアント装置４のモニタに図４で示したようなユーザインタフェースが表示されている。そして、再びクライアント装置４からファイルアクセス要求が送信される（ステップＳ１２７）。このときアクセス要求のあるファイルは、ステップＳ１２５によりログアウトしたデータ管理装置１に格納されているファイルであるとする。この場合、サーバ３は、クライアント装置４にエラー送信を行う（ステップＳ１２８）。つまり、アクセスが不可能となった旨の通知を行う。
【００５５】
これにより、クライアント装置４からサーバ３に対して再びインデックス要求が行われる（ステップＳ１２９）。サーバ３は、クライアント装置４に対して、データ管理装置１のログアウト情報を送信する（ステップＳ１３０）。あるいは、ログアウトしたデータ管理装置１のインデックス情報１０１を除いて最新のインデックス情報１０１を送信する。これにより、クライアント装置４のモニタには図５に示すようなユーザインタフェースが表示される。たとえば、DataserverBはログアウトされており、現在アクセス不可能であることが示されるのである。
【００５６】
ここまでは、本実施の形態の通信システムの処理方法を、データ管理装置１、サーバ３、クライアント装置４を含むシステム全体の処理の流れとして説明した。次に、図６ないし図９を参照しながら、サーバ３の処理に注目して説明する。
【００５７】
図６は、サーバ３が、データ管理装置１から接続要求を受けた後の処理フローチャートである。サーバ３は、データ管理装置１からのＴＣＰ接続要求を監視し（ステップＳ２０１）、接続要求を受けると、データ管理装置１との間でＴＣＰコネクションを確立する。続いて、ログイン要求を監視し（ステップＳ２０２）、ログイン要求を受けると、パスワードの認証を行う。パスワードの認証は、データ管理装置ＤＢ１０２を参照して行う。パスワードが一致すればログインを許可する。
【００５８】
次に、データ管理装置１からインデックス情報１０１を受信するまで待機し（ステップＳ２０３）、インデックス情報１０１を受信すると、記憶装置３２に格納する（ステップＳ２０４）。インデックス情報を受信した後は、ＴＣＰコネクションを保持する（ステップＳ２０５）。
【００５９】
次に、再度インデックス情報１０１を受信したかどうかをチェックし（ステップＳ２０６）、受信した場合には、インデックス情報１０１を更新する（ステップＳ２２０）。インデックス情報１０１を受信している場合は、ステップＳ２２０を繰り返し実行する。
【００６０】
インデックス情報１０１を受信していない場合、クライアント装置４によるイベントが発生したかどうかをチェックする（ステップＳ２０７）。イベントが発生していない場合には、データ管理装置１からのログアウト要求が発生していないかをチェックし（ステップＳ２０８）、ログアウト要求が発生している場合には、ＴＣＰコネクションを切断し（ステップＳ２０９）、ログアウトしたデータ管理装置１に関するインデックス情報１０１を削除する（ステップＳ２１０）。そして、データ管理装置ＤＢ１０２の登録内容を更新する（ステップＳ２１１）。具体的には、「接続状態」フィールドに切断中という情報を登録する。
【００６１】
ステップＳ２０７において、クライアントによるイベントが発生していると判定された場合には、ファイルアクセス要求が発生したかどうかをチェックする（ステップＳ２１２）。そして、ファイルアクセス要求が発生している場合には、データ管理装置１から該当するファイルを取得し（ステップＳ２１３）、当該ファイルをクライアント装置４に送信する（ステップＳ２１４）。ファイルを送信した後は、ファイルアクセスが完了したことを示す応答を送信する（ステップＳ２１５）。
【００６２】
ステップＳ２１２において、ファイルアクセス要求を受信しない場合、ファイル書き込み要求が発生しているかどうかをチェックする（ステップＳ２１６）。ファイル書き込み要求が発生している場合には、クライアント装置４からファイルを受信し（ステップＳ２１７）、データ管理装置１に対して当該ファイルを送信して書き込み要求を行う（ステップＳ２１８）。これにより、データ管理装置１に対するファイル書き込みが完了すると、クライアント装置４に対してファイルの書き込みが完了したこと通知する応答を行う（ステップＳ２１９）。なお、ステップＳ２１６でファイル書き込み要求でないと判定された場合は、他のイベントが発生している場合であり、それに応じた処理が実行されるが、ここでは説明を省略する。
【００６３】
図７は、サーバ３が、クライアント装置４から接続要求を受けた後の処理フローチャートである。
【００６４】
まず、サーバ３は、クライアント装置４からのＴＣＰ接続要求を監視し（ステップＳ３０１）、接続要求を受信した場合には、ＴＣＰコネクションを確立し、続いてログイン要求を監視する（ステップＳ３０２）。
【００６５】
ログイン要求を受信した場合には、クライアント装置ＤＢ１０３を参照して、パスワードの認証を行う。パスワードが一致した場合は、クライアント装置４のログインを許可する。このように、サーバ３においてユーザ認証を行うので、それぞれのデータ管理装置１において認証処理を行う必要がない。続いて、クライアント装置４から、インデックス情報１０１の受信要求が発生したかどうかをチェックする（ステップＳ３０３）。
【００６６】
インデックス情報１０１の受信要求が発生した場合、図８のフローチャートに移行する。まず、クライアント装置４がインデックス情報１０１の取得を希望するデータ管理装置１が現在ログイン中であるかどうかを確認する（ステップＳ４０１）。言い換えると、クライアント装置４がアクセス権限のあるデータ管理装置１がログイン中であるかどうかを確認する。具体的には、データ管理装置ＤＢ１０２を参照し、「接続状態」フィールドが「接続中」と登録されているかどうかをチェックする。
【００６７】
該当するデータ管理装置１が接続中でない場合には、データ管理装置１がログアウト中であることを示す情報をクライアント装置４に送信する（ステップＳ４０３）。該当するデータ管理装置１が接続中である場合には、そのデータ管理装置１に関するインデックス情報１０１をクライアント装置４に送信する（ステップＳ４０２）。
【００６８】
以上の処理が終了すると、再び図７のステップＳ３０３に戻り処理を繰り返す。
【００６９】
ステップＳ３０３において、インデックス情報１０１の受信要求が発生していなかった場合、ファイルアクセス要求が発生しているかどうかをチェックする（ステップＳ３０４）。ファイルアクセス要求が発生した場合、図９のフローチャートに移行する。まず、クライアント装置４がアクセスしたいファイルを蓄積しているデータ管理装置１が現在ログイン中であるかどうかを確認する（ステップＳ５０１）。つまり、データ管理装置ＤＢ１０２を参照し、「接続状態」フィールドが「接続中」と登録されているかどうかをチェックする。
【００７０】
該当するデータ管理装置１が接続中でない場合には、データ管理装置１がログアウト中であることを示す情報をクライアント装置４に送信する（ステップＳ５０４）。該当するデータ管理装置１が接続中である場合には、そのデータ管理装置１から指定されたファイルを読み出し（ステップＳ５０２）、当該ファイルをクライアント装置４に送信する（ステップＳ５０３）。
【００７１】
以上の処理が終了すると、再び図７のステップＳ３０３に戻り処理を繰り返す。
【００７２】
ステップＳ３０４において、ファイルのアクセス要求が発生していなかった場合、ファイル書き込み要求が発生しているかどうかをチェックする（ステップＳ３０５）。ファイル書き込み要求が発生した場合、図１０のフローチャートに移行する。まず、クライアント装置４がファイルを書き込みしたいデータ管理装置１が現在ログイン中であるかどうかを確認する（ステップＳ６０１）。つまり、データ管理装置ＤＢ１０２を参照し、「接続状態」フィールドが「接続中」と登録されているかどうかをチェックする。
【００７３】
該当するデータ管理装置１が接続中でない場合には、データ管理装置１がログアウト中であることを示す情報をクライアント装置４に送信する（ステップＳ６０５）。該当するデータ管理装置１が接続中である場合には、クライアント装置４から書き込みファイルを受信し（ステップＳ６０２）、データ管理装置１に対して当該ファイルを送信し、書き込み処理を実行する（ステップＳ６０３）、書き込み処理が完了すると、クライアント装置４に対して書き込みが完了したことを通知する応答を行う（ステップＳ６０４）。
【００７４】
以上の処理が終了すると、再び図７のステップＳ３０３に戻り処理を繰り返す。
【００７５】
ステップＳ３０５において、ファイル書き込み要求が発生していなかった場合には、クライアント装置４からログアウト要求が発生しているかどうかをチェックし（ステップＳ３０６）、ログアウト要求が発生していない場合には、ステップＳ３０３に戻り処理を繰り返す。ログアウト要求が発生している場合には、ログアウト処理を実行し、クライアント装置ＤＢ１０３の情報を更新する（ステップＳ３０７）。具体的には、「ログイン状態」フィールドに「ログアウト」を設定する。
【００７６】
以上説明したように、本実施の形態の通信システムあるいはゲートウェイファイルサーバ３を利用することで、データ管理装置１あるいはデータ管理装置１が配置されたプライベートネットワークのセキュリティを確保しながら、データ管理装置１が格納しているデータに対するクライアント装置４のアクセスを可能とすることができる。具体的には、ファイアーウォール２に外部からのＴＣＰコネクション接続を許可する設定を行うことなく、データ管理装置１に格納されているデータをアクセス可能とすることができる。
【００７７】
つまり、ファイアーウォール２の内側に存在するデータ管理装置１からゲートウェイファイルサーバ３に対してＴＣＰコネクションの接続要求を行ってＴＣＰコネクションを確立し、その後は、このＴＣＰコネクションを保持するのである。そして、クライアント装置４からファイルへのアクセス要求や書き込み要求が発生した場合には、このＴＣＰコネクションを利用してデータ管理装置１へアクセスするのである。これにより、ファイアーウォールにセキュリティホールが発生することを防止することができる。
【００７８】
また、クライアント装置４に対しては、データ管理装置１の場所（アドレス）は通知されず、クライアント装置４は、あくまでもインデックス情報１０１を参照して、ゲートウェイファイルサーバ３にアクセスするだけである。したがって、データ管理装置１の場所（アドレス）、実体データの格納場所を隠蔽することが可能であり、セキュリティを高く維持することが可能である。
【００７９】
また、クライアント装置４は、ゲートウェイファイルサーバ３にアクセスする設定情報だけを持っていれば良いので、データ管理装置１のアドレスなどが変更されても、クライアント装置４における設定を変更する必要はない。したがって、システムの変更に柔軟に対応できる構成となっている。
【００８０】
さらに、クライアント装置４（ユーザ）の認証は、ゲートウェイファイルサーバ３において行われる。したがって、各データ管理装置１において認証処理を行う必要がなく、認証情報についてもサーバ３において一元管理することが可能である。たとえば、クライアント装置４の情報が変更された場合にも、ゲートウェイファイルサーバ３が保持するクライアント装置ＤＢ１０３を変更すればよいので、管理負担も小さくすることができる。
【００８１】
また、データ管理装置１は、ゲートウェイファイルサーバ３との間で確立されているＴＣＰコネクションを切断するだけで、即座にクライアント装置４からのアクセスを遮断することが可能である。したがって、緊急時のアクセス制限も容易に実行することが可能である。クライアント装置４から見ると、データ管理装置１がアクセス不可能な状態となっていても、ゲートウェイファイルサーバ３にアクセスしてアクセス不可能であることを知ることができるので利便性がよい。たとえば、アクセス不可能なデータサーバにアクセスして、応答が戻ってこないという問題（場合によってはアプリケーションがハングアップする場合もある。）を解消することが可能である。
【図面の簡単な説明】
【００８２】
【図１】本実施の形態における通信システムの全体概略図である。
【図２】データ管理装置およびゲートウェイファイルサーバのブロック図である。
【図３】通信システム全体の処理フローチャートである。
【図４】クライアント装置のモニタに表示されるユーザインタフェースを示す図である。
【図５】クライアント装置のモニタに表示されるユーザインタフェースを示す図である。
【図６】データ管理装置からアクセスを受けたときのゲートウェイファイルサーバにおける処理フローチャートである。
【図７】クライアント装置からアクセスを受けたときのゲートウェイファイルサーバにおける処理フローチャートである。
【図８】クライアント装置からインデックス受信要求を受けたときのゲートウェイファイルサーバにおける処理フローチャートである。
【図９】クライアント装置からファイルアクセス要求を受けたときのゲートウェイファイルサーバにおける処理フローチャートである。
【図１０】クライアント装置からファイル書き込み要求を受けたときのゲートウェイファイルサーバにおける処理フローチャートである。
【符号の説明】
【００８３】
１    データ管理装置
２    ファイアーウォール
３    ゲートウェイファイルサーバ
４    クライアント装置
【図１】
2007258806.tif 000008
【図２】
2007258806.tif 000009
【図３】
2007258806.tif 000010
【図４】
2007258806.tif 000011
【図５】
2007258806.tif 000012
【図６】
2007258806.tif 000013
【図７】
2007258806.tif 000014
【図８】
2007258806.tif 000015
【図９】
2007258806.tif 000016
【図１０】
2007258806.tif 000017