(57)【要約】【課題】安全な通信、安全なファイルへのアクセス、および不正操作の監視・制御を効率的かつ強力に実現する。【解決手段】本発明に係るファイル管理システムは、サーバ装置及びクライアント装置を備え、サーバ装置は、ファイルサーバ、ファイル情報データベース、権限データベース、ファイル及び利用権限情報をクライアント装置に送信するサーバ側通信部を備え、クライアント装置は、クライアント側通信部、クライアント側通信部が受信したファイルをユーザに利用させるアプリケーションソフト、クライアント側通信部が受信した利用権限情報に基づいて、クライアント側通信部が受信したファイルをユーザに利用させる場合に、ユーザが利用可能なアプリケーションの機能を制限するアプリケーション制御部を備える。【選択図】図１
2007115192.tif 000002
【特許請求の範囲】
【請求項１】
サーバ装置が格納しているファイルをクライアント装置でユーザに利用させるファイル管理システムであって、
前記サーバ装置は、
ファイル名に対応づけてファイル位置を格納するファイル情報データベースと、
前記ファイル情報データベースに格納されているファイル位置にファイルを格納するファイルサーバと、
前記ファイル情報データベースに格納されている複数のファイル名に対応づけて、ユーザ毎のファイルの利用権限を示す利用権限情報を格納する権限データベースと、
前記ファイルサーバが格納しているファイル、および前記権限データベースが格納している利用権限情報を前記クライアント装置に送信するサーバ側通信部と
を備え、
前記クライアント装置は、
前記サーバ側通信部が送信したファイルおよび利用権限情報を受信するクライアント側通信部と、
前記クライアント側通信部が受信したファイルをユーザに利用させるアプリケーションソフトと、
前記クライアント側通信部が受信した利用権限情報に基づいて、前記クライアント側通信部が受信したファイルをユーザに利用させる場合に、前記ユーザが利用可能なアプリケーションの機能を制限するアプリケーション制御部と
を備えるファイル管理システム。
【請求項２】
前記クライアント装置は、
前記アプリケーションソフトの動作を制御するオペレーティングシステム
をさらに備え、
前記アプリケーション制御部は、前記オペレーティングシステムを制御することなく、アプリケーションソフトを制御することによって、利用可能なアプリケーションソフトの機能を制限する
請求項１に記載のファイル管理システム。
【請求項３】
前記アプリケーション制御部は、前記クライアント側通信部が受信した利用権限情報に基づいて、前記アプリケーションソフトが表示する機能メニューの少なくとも一部が選択できないように制御することによって、利用可能なアプリケーションソフトの機能を制限する
請求項１に記載のファイル管理システム。
【請求項４】
前記アプリケーション制御部は、前記クライアント側通信部が受信した利用権限情報に基づいて、前記アプリケーションソフトが表示する機能メニューの少なくとも一部をグレーアウトさせることによって、利用可能なアプリケーションソフトの機能を制限する
請求項３に記載のファイル管理システム。
【請求項５】
前記クライアント装置は、
前記クライアント装置が備えるハードウェアを識別するハードウェアＩＤを取得するハードウェアＩＤ取得部と、
前記ハードウェアＩＤ取得部が取得したハードウェアＩＤから認証ＩＤを生成する認証ＩＤ生成部と、
前記認証ＩＤ生成部が生成した認証ＩＤを含む認証データを生成するクライアント側認証データ生成部と
をさらに備え、
前記クライアント側通信部は、前記クライアント側認証データ生成部が生成した認証データを前記サーバ装置に送信し、
前記サーバ側通信部は、前記クライアント側通信部が送信した認証データを受信し、
前記サーバ装置は、
ユーザ毎の認証ＩＤを予め格納する認証データベースと、
前記認証データベースが格納している認証ＩＤを含む認証データを生成するサーバ側認証データ生成部と、
前記サーバ側通信部が受信した認証データと前記サーバ側認証データ生成部が生成した認証データとが一致するか否かを判断して認証する認証部と
をさらに備え、
前記サーバ側通信部は、前記認証部による認証が成立した場合に、前記ファイルサーバが格納しているファイル、および前記権限データベースが格納している利用権限情報を前記クライアント装置に送信する
請求項１に記載のファイル管理システム。
【請求項６】
前記認証データベースは、ユーザを識別するユーザ識別情報に対応づけて認証ＩＤを格納しており、
前記クライアント側通信部は、前記クライアント側認証データ生成部が生成した認証データを前記サーバ装置に送信し、
前記サーバ側通信部は、前記クライアント側通信部が送信した認証データを受信し、
前記サーバ側認証データ生成部は、前記サーバ側通信部が受信した前記認証データに含まれるユーザ識別情報に対応づけて前記認証データベースが格納している認証ＩＤを含む認証データを生成する
請求項５に記載のファイル管理システム。
【請求項７】
前記クライアント側認証データ生成部は、前記認証ＩＤ生成部が生成した認証ＩＤ、およびユーザから入力されたパスワードを含む認証データを生成し、
前記クライアント側通信部は、前記クライアント側認証データ生成部が生成した認証データを前記サーバ装置に送信し、
前記サーバ側通信部は、前記クライアント側通信部が送信した認証データを受信し、
前記サーバ側認証データ生成部は、前記認証データベースが格納している認証ＩＤおよびパスワードを含む認証データを生成する
請求項６に記載のファイル管理システム。
【請求項８】
前記クライアント装置は、
前記アプリケーション制御部として機能するソフトウェアがインストールされた時刻を格納するインストール時刻格納部
をさらに備え、
前記認証ＩＤ生成部は、前記インストール時刻格納部が格納しているインストール時刻、および前記ハードウェアＩＤ取得部が取得したハードウェアＩＤから認証ＩＤを生成する
請求項５に記載のファイル管理システム。
【請求項９】
前記クライアント装置は、
前記アプリケーションソフトの動作を制御するオペレーティングシステムと、
前記オペレーティングシステムにログインする場合にユーザから入力されるログイン情報を取得するログイン情報取得部と
をさらに備え、
前記認証ＩＤ生成部は、前記ログイン情報取得部が取得したログイン情報、前記インストール時刻格納部が格納しているインストール時刻、および前記ハードウェアＩＤ取得部が取得したハードウェアＩＤから認証ＩＤを生成する
請求項８に記載のファイル管理システム。
【請求項１０】
前記クライアント装置は、
前記クライアント側認証データ生成部が生成した認証データから暗号鍵および復号鍵を生成するクライアント側鍵生成部と、
前記クライアント側鍵生成部が生成した暗号鍵を用いて、前記クライアント側通信部が前記サーバ装置に送信すべきデータを暗号化するクライアント側暗号化部と
前記クライアント側鍵生成部が生成した復号鍵を用いて、前記クライアント側通信部が前記サーバ装置から受信したデータを復号化するクライアント側復号化部と
を備え、
前記サーバ装置は、
前記サーバ側認証データ生成部が生成した認証データから暗号鍵および復号鍵を生成するサーバ側鍵生成部と、
前記サーバ側鍵生成部が生成した暗号鍵を用いて、前記サーバ側通信部が前記クライアント装置に送信すべきデータを暗号化するサーバ側暗号化部と
前記サーバ側鍵生成部が生成した復号鍵を用いて、前記サーバ側通信部が前記クライアント装置から受信したデータを復号化するサーバ側復号化部と
を備える請求項５に記載のファイル管理システム。
【請求項１１】
前記アプリケーション制御部は、前記クライアント側通信部が受信したファイルをテンポラリファイルとして展開して、前記アプリケーションソフトに利用させる
請求項１に記載のファイル管理システム。
【請求項１２】
前記アプリケーション制御部は、テンポラリファイルとして展開されているファイルの保存をユーザから要求された場合、前記ファイルを前記クライアント側通信部から前記サーバ装置に送信して前記ファイルサーバに保存した後、テンポラリファイルとして展開されているファイルを新規ファイルで上書きする
請求項１１に記載のファイル管理システム。
【請求項１３】
前記クライアント装置は、
前記権限データベースが格納しているファイルの利用権限をユーザに入力させる権限入力制御部と、
ユーザから入力された利用権限を示す利用権限情報を前記クライアント側通信部から前記サーバ装置に送信して前記権限データベースに記録させる権限設定部と
をさらに備える請求項１に記載のファイル管理システム。
【請求項１４】
前記クライアント装置または前記サーバ装置は、
所定の利用権限が与えられているユーザに対して、前記所定の利用権限より制限された利用権限を他のユーザに与えることを許可する権限設定許可部
をさらに備える請求項１３に記載のファイル管理システム。
【請求項１５】
前記ファイルサーバは、フォルダに分類されたファイルを格納しており、
前記権限設定許可部は、フォルダの管理者であるフォルダ管理者に対して、前記フォルダの内のファイルの利用権限を他のユーザに与えることを許可する
請求項１４に記載のファイル管理システム。
【請求項１６】
前記権限設定許可部は、ファイルの作成者であるファイル作成者に対して、前記ファイルの利用権限を他のユーザに与えることを許可する
請求項１４に記載のファイル管理システム。
【請求項１７】
前記権限設定許可部は、前記サーバ装置の管理者であるサーバ管理者に対して、前記権限データベースが格納しているファイルの利用権限を他のユーザに与えることを許可する
請求項１４に記載のファイル管理システム。
【請求項１８】
ファイルサーバが格納しているファイル、および権限データベースが前記ファイルに対応づけて格納している前記ファイルの利用権限を示す利用権限情報を受信する通信部と、
前記通信部が受信したファイルをユーザに利用させるアプリケーションソフトと、
前記通信部が受信した利用権限情報に基づいて、前記通信部が受信したファイルをユーザに利用させる場合に、前記ユーザが利用可能なアプリケーションの機能を制限するアプリケーション制御部と
を備える情報処理装置。
【請求項１９】
クライアント装置にインストールされたソフトウェアのユーザをサーバ装置で認証する認証システムであって、
前記クライアント装置が備えるハードウェアを識別するハードウェアＩＤを取得するハードウェアＩＤ取得部と、
前記クライアント装置に前記ソフトウェアがインストールされた時刻を格納するインストール時刻格納部と、
前記ハードウェアＩＤ取得部が取得したハードウェアＩＤ、および前記インストール時刻格納部が格納しているインストール時刻から認証ＩＤを生成する認証ＩＤ生成部と、
前記認証ＩＤ生成部が生成した認証ＩＤから、認証データを生成する第一認証データ生成部と、
ユーザ毎の認証ＩＤを予め格納する認証データベースと、
前記認証データベースが格納している認証ＩＤから、認証データを生成する第二認証データ生成部と、
前記第一認証データ生成部が生成した認証データと前記第二認証データ生成部が生成した認証データとが一致するか否かを判断して認証する認証部と
を備える認証システム。
【請求項２０】
ファイル名に対応づけてファイル位置を格納するファイル情報データベースと、
前記ファイル情報データベースに格納されているファイル位置にファイルを格納するファイルサーバと、
前記ファイル情報データベースに格納されている複数のファイル名に対応づけて、ユーザ毎のファイルの利用権限を示す利用権限情報を格納する権限データベースと、
前記ファイルサーバが格納しているファイルの利用権限をユーザに入力させる権限入力制御部と、
ユーザから入力された利用権限を示す利用権限情報を前記権限データベースに記録させる権限設定部と、
前記権限データベースが格納している利用権限情報によって所定の利用権限が与えられているユーザに対して、前記所定の利用権限より制限された利用権限を他のユーザに与えることを許可する権限設定許可部と
を備えるファイル利用権限設定システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイル管理システム、情報処理装置、認証システム、およびファイル利用権限設定システムに関する。特に、本発明は、サーバ装置が格納しているファイルをクライアント装置でユーザに利用させるファイル管理システムおよび情報処理装置、並びにクライアント装置にインストールされたソフトウェアのユーザをサーバ装置で認証する認証システム、並びにファイル利用権限設定システムに関する。
【背景技術】
【０００２】
ＩＣカードを用いてアプリケーション実行時の安全性の向上を目的とした、アプリケーション制御装置およびアプリケーション制御方法が提案されている（例えば、特許文献１参照。）。特許文献１に記載の発明は、ユーザが保有するＩＣカードにおいて暗証番号の認証をした後にユーザを認証する。続いて、特許文献１に記載の発明は、ユーザ認証が成功した後に、ユーザがアプリケーションの利用ができる状態において、所定の条件（例えば、一定期間、アプリケーションに対する動作がなかった場合等の条件）が満たされているか否かを判定する。そして、特許文献１に記載の発明は、所定の条件が満たされた場合に、アプリケーションの利用を規制する。
【特許文献１】特開２００５−９２４９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、特許文献１に記載に発明においては、アプリケーションの利用は規制できるものの、アプリケーションで利用をするフォルダおよびファイル等のデータについては何ら利用の制限がなされていない。したがって、アプリケーションの利用ができる者ならば、何人もアプリケーションで利用するファイルが機密情報であるか否かにかかわらず、自由にファイルの編集、保存、および削除等することができる。すなわち、特許文献１に記載の発明においては、機密情報ファイルの取り扱いを監視および制御することが困難であり、機密情報ファイルへの不正アクセスおよび不正操作等を未然に防止することができない場合がある。
【０００４】
そこでこの発明は、上記課題を解決することができるファイル管理システム、情報処理装置、認証システム、およびファイル利用権限設定システムを提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成されまた従属項はこの発明の更なる有利な具体例を規定する。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明の第１の形態においては、サーバ装置が格納しているファイルをクライアント装置でユーザに利用させるファイル管理システムであって、サーバ装置は、ファイル名に対応づけてファイル位置を格納するファイル情報データベースと、ファイル情報データベースに格納されているファイル位置にファイルを格納するファイルサーバと、ファイル情報データベースに格納されている複数のファイル名に対応づけて、ユーザ毎のファイルの利用権限を示す利用権限情報を格納する権限データベースと、ファイルサーバが格納しているファイル、および権限データベースが格納している利用権限情報をクライアント装置に送信するサーバ側通信部とを備え、クライアント装置は、サーバ側通信部が送信したファイルおよび利用権限情報を受信するクライアント側通信部と、クライアント側通信部が受信したファイルをユーザに利用させるアプリケーションソフトと、クライアント側通信部が受信した利用権限情報に基づいて、クライアント側通信部が受信したファイルをユーザに利用させる場合に、ユーザが利用可能なアプリケーションの機能を制限するアプリケーション制御部とを備える。
【０００６】
また、クライアント装置は、アプリケーションソフトの動作を制御するオペレーティングシステムをさらに備え、アプリケーション制御部は、オペレーティングシステムを制御することなく、アプリケーションソフトを制御することによって、利用可能なアプリケーションソフトの機能を制限してよい。また、アプリケーション制御部は、クライアント側通信部が受信した利用権限情報に基づいて、アプリケーションソフトが表示する機能メニューの少なくとも一部が選択できないように制御することによって、利用可能なアプリケーションソフトの機能を制限してもよく、更には、アプリケーション制御部は、クライアント側通信部が受信した利用権限情報に基づいて、アプリケーションソフトが表示する機能メニューの少なくとも一部をグレーアウトさせることによって、利用可能なアプリケーションソフトの機能を制限してもよい。
【０００７】
そして、クライアント装置は、クライアント装置が備えるハードウェアを識別するハードウェアＩＤを取得するハードウェアＩＤ取得部と、ハードウェアＩＤ取得部が取得したハードウェアＩＤから認証ＩＤを生成する認証ＩＤ生成部と、認証ＩＤ生成部が生成した認証ＩＤを含む認証データを生成するクライアント側認証データ生成部とをさらに備え、クライアント側通信部は、クライアント側認証データ生成部が生成した認証データをサーバ装置に送信し、サーバ側通信部は、クライアント側通信部が送信した認証データを受信し、サーバ装置は、ユーザ毎の認証ＩＤを予め格納する認証データベースと、認証データベースが格納している認証ＩＤを含む認証データを生成するサーバ側認証データ生成部と、サーバ側通信部が受信した認証データとサーバ側認証データ生成部が生成した認証データとが一致するか否かを判断して認証する認証部とをさらに備え、サーバ側通信部は、認証部による認証が成立した場合に、ファイルサーバが格納しているファイル、および権限データベースが格納している利用権限情報を前記クライアント装置に送信してもよい。
【０００８】
更に、認証データベースは、ユーザを識別するユーザ識別情報に対応づけて認証ＩＤを格納しており、クライアント側通信部は、クライアント側認証データ生成部が生成した認証データをサーバ装置に送信し、サーバ側通信部は、クライアント側通信部が送信した認証データを受信し、サーバ側認証データ生成部は、サーバ側通信部が受信した認証データに含まれるユーザ識別情報に対応づけて認証データベースが格納している認証ＩＤを含む認証データを生成してもよい。また、クライアント側認証データ生成部は、認証ＩＤ生成部が生成した認証ＩＤ、およびユーザから入力されたパスワードを含む認証データを生成し、クライアント側通信部は、クライアント側認証データ生成部が生成した認証データを前記サーバ装置に送信し、サーバ側通信部は、クライアント側通信部が送信した認証データを受信し、サーバ側認証データ生成部は、認証データベースが格納している認証ＩＤおよびパスワードを含む認証データを生成してもよい。
【０００９】
また、クライアント装置は、アプリケーション制御部として機能するソフトウェアがインストールされた時刻を格納するインストール時刻格納部をさらに備え、認証ＩＤ生成部は、インストール時刻格納部が格納しているインストール時刻、およびハードウェアＩＤ取得部が取得したハードウェアＩＤから認証ＩＤを生成してもよく、更には、クライアント装置は、アプリケーションソフトの動作を制御するオペレーティングシステムと、オペレーティングシステムにログインする場合にユーザから入力されるログイン情報を取得するログイン情報取得部とをさらに備え、認証ＩＤ生成部は、ログイン情報取得部が取得したログイン情報、インストール時刻格納部が格納しているインストール時刻、およびハードウェアＩＤ取得部が取得したハードウェアＩＤから認証ＩＤを生成してもよい。
【００１０】
そして、クライアント装置は、クライアント側認証データ生成部が生成した認証データから暗号鍵および復号鍵を生成するクライアント側鍵生成部と、クライアント側鍵生成部が生成した暗号鍵を用いて、クライアント側通信部がサーバ装置に送信すべきデータを暗号化するクライアント側暗号化部とクライアント側鍵生成部が生成した復号鍵を用いて、クライアント側通信部がサーバ装置から受信したデータを復号化するクライアント側復号化部とを備え、サーバ装置は、サーバ側認証データ生成部が生成した認証データから暗号鍵および復号鍵を生成するサーバ側鍵生成部と、サーバ側鍵生成部が生成した暗号鍵を用いて、サーバ側通信部がクライアント装置に送信すべきデータを暗号化するサーバ側暗号化部とサーバ側鍵生成部が生成した復号鍵を用いて、サーバ側通信部がクライアント装置から受信したデータを復号化するサーバ側復号化部とを備えてもよい。
【００１１】
また、アプリケーション制御部は、クライアント側通信部が受信したファイルをテンポラリファイルとして展開して、アプリケーションソフトに利用させてもよい。更に、アプリケーション制御部は、テンポラリファイルとして展開されているファイルの保存をユーザから要求された場合、ファイルをクライアント側通信部からサーバ装置に送信してファイルサーバに保存した後、テンポラリファイルとして展開されているファイルを新規ファイルで上書きしてもよい。また、クライアント装置は、権限データベースが格納しているファイルの利用権限をユーザに入力させる権限入力制御部と、ユーザから入力された利用権限を示す利用権限情報をクライアント側通信部からサーバ装置に送信して権限データベースに記録させる権限設定部とをさらに備えてもよい。
【００１２】
更に、クライアント装置またはサーバ装置は、所定の利用権限が与えられているユーザに対して、所定の利用権限より制限された利用権限を他のユーザに与えることを許可する権限設定許可部をさらに備えてもよく、ファイルサーバは、フォルダに分類されたファイルを格納しており、権限設定許可部は、フォルダの管理者であるフォルダ管理者に対して、フォルダの内のファイルの利用権限を他のユーザに与えることを許可してもよい。そして、権限設定許可部は、ファイルの作成者であるファイル作成者に対して、ファイルの利用権限を他のユーザに与えることを許可してもよい。また、権限設定許可部は、サーバ装置の管理者であるサーバ管理者に対して、権限データベースが格納しているファイルの利用権限を他のユーザに与えることを許可してもよい。
【００１３】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【発明の効果】
【００１４】
この発明は、サーバ装置において、クライアント装置のハードウェアＩＤに基づいてユーザ認証できるので、ユーザ認証できないユーザのサーバ装置へのアクセスを強力に防止できる。また、クライアント装置を利用するユーザ毎およびフォルダ・ファイル毎に個別の利用権限を設定できる。そして、設定した利用権限に基づいてアプリケーションソフトを制御してユーザのファイル操作を制御および監視できるので、ファイルの利用を許可されたユーザにだけファイルを利用させることができるとともに、ファイルの利用に制限を設けてユーザに利用させることができる。これにより、ファイルへのアクセスの適切な制御、および不正操作の監視・制御を効率的かつ強力に実現できる。
【発明を実施するための最良の形態】
【００１５】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１６】
図１は、本発明の一実施形態に係るファイル管理システム１０の概要を示す。ファイル管理システム１０は、サーバ装置２０、並びにクライアント装置３０、クライアント装置３２、およびクライアント装置３４を備える。サーバ装置２０とクライアント装置３０等とは通信網４０により通信接続されている。なお、ファイル管理システム１０は、請求項に記載の認証システムおよびファイル利用権限設定システムの一例である。
【００１７】
本実施形態に係るファイル管理システム１０は、サーバ装置２０において、クライアント装置３０等を利用するユーザ毎およびフォルダ・ファイル毎に個別の利用権限を設定して、更に、クライアント装置３０等のハードウェアに関する情報に基づいてユーザを認証する。そして、ファイル管理システム１０は、設定した利用権限に基づいてアプリケーションソフトを制御して、ユーザのファイル操作を制御および監視して、ファイルの利用を許可されたユーザにだけファイルを利用させるとともに、ファイルの利用権限に制限を設けてユーザに利用させる。これにより、ファイル管理システム１０は、安全な通信、適切なファイルへのアクセス制御、および不正操作の効率的な監視・制御を実現することを目的とする。
【００１８】
サーバ装置２０が格納しているファイルを、例えば、クライアント装置３０でユーザに利用させる場合を考える。係る場合において、ファイル管理システム１０が備えるサーバ装置２０は、ユーザを、ユーザが利用するクライアント装置３０のハードウェアおよびユーザを特定する情報に基づいて認証する。ハードウェアは、例えば、マザーボード、ハードディスク、およびメモリ等であってよく、サーバ装置２０はユーザを識別する情報およびハードウェアを識別する情報に基づいてユーザを認証する。
【００１９】
具体的には、サーバ装置２０は認証ＩＤを予め格納する。認証ＩＤは、クライアント装置３０において、ハードウェアを識別するハードウェアＩＤから生成される。そして、ユーザがクライアント装置３０において所望のファイルの操作を要求するたびに、クライアント装置３０は、ユーザが使用しているクライアント装置３０のハードウェアＩＤから生成した認証ＩＤおよびユーザが入力したパスワードを含む認証データを生成して、当該認証データとユーザＩＤとをサーバ装置２０に送信する。そして、サーバ装置２０は、クライアント装置３０から受信したユーザＩＤに基づいて、当該ユーザに対応する認証ＩＤおよびパスワードをサーバ装置２０が予め格納していたデータベースから抽出する。そして、サーバ装置２０は、抽出した認証ＩＤおよびパスワードからクライアント装置３０と同じアルゴリズムを用いて認証データを生成する。サーバ装置２０は、サーバ装置２０が生成した認証データと、クライアント装置３０から受信した認証データとを照合して、ユーザ認証をする。
【００２０】
サーバ装置２０は、ユーザを認証した場合には、認証データから暗号鍵を生成して、サーバ装置２０とクライアント装置３０との間の通信を、暗号化通信として確立する。そして、サーバ装置２０は、ユーザが要求するファイルおよび当該ユーザが当該ファイルに対して操作することのできる利用権限に関する情報の双方を暗号化して、通信網４０を介してクライアント装置３０に送信する。係る場合において、サーバ装置２０およびクライアント装置３０等は暗号化通信を用いて通信する。なお、通信網４０は、ＬＡＮ、ＷＡＮ、およびインターネット等のネットワークであってよい。
【００２１】
クライアント装置３０は、サーバ装置２０から受け取った暗号化ファイルおよび暗号化利用権限情報を復号化する。そして、クライアント装置３０は、サーバ装置２０から受け取った利用権限に関する情報に基づいて、ユーザが利用するファイルを操作するアプリケーションの動作を制御する。サーバ装置２０は、ユーザに対してファイル毎に当該ファイルに対して操作できる権限を細かく設定してよい。例えば、サーバ装置２０は、当該ファイルに対する当該ユーザの利用権限を、当該ファイルの閲覧だけに設定できる。なお、ファイルの利用権限は、ファイルの閲覧、印刷、編集、保存、削除およびコピー等であってよい。そして、当該ユーザの利用権限が当該ファイルの閲覧だけである場合には、クライアント装置３０はアプリケーションソフトを制御して、当該ユーザが当該ファイルの編集、印刷、および保存等の操作をできないように制御する。例えば、アプリケーションソフトのプルダウンメニューにおいて、当該ユーザの利用権限のない操作に対応するメニューを選択できないように制御する。また、クライアント装置３０は、ユーザの操作をユーザを識別する情報および時刻と共にサーバ装置２０に送信する。
【００２２】
また、クライアント装置３０は、ユーザがサーバ装置２０から送信されたファイルの利用をする場合には、当該ファイルをテンポラリファイルとして展開してユーザに利用させる。そして、ユーザがファイルの利用を終了した場合には、クライアント装置３０は、テンポラリファイルとして展開されていたファイルを暗号化してサーバ装置２０に送信して、サーバ装置２０において当該ファイルを保存する。一方、クライアント装置３０は、テンポラリファイルに展開されていたファイルを、当該ファイルを新規ファイルで上書きして消去する。
【００２３】
本実施形態に係るファイル管理システム１０によれば、クライアント装置３０のハードウェアＩＤに基づいてユーザ認証をすることができるので、不正ユーザが正規ユーザを識別する情報を用いてデータにアクセスを試みた場合でも、不正アクセスを強力に防止できる。
【００２４】
また、本実施形態に係るファイル管理システム１０によれば、ユーザに対してファイル毎の利用権限を細かく設定できるので、ユーザに応じてファイルの利用態様を適切に設定してファイルの不正使用等を未然に効率的に防止できる。
【００２５】
更に、本実施形態に係るファイル管理システム１０によれば、クライアント装置３０はユーザが利用したファイルを、ユーザの利用が終了した後に新規ファイルを上書きしてユーザが利用したファイルを消去するので、クライアント装置３０においてユーザが利用したファイルを呼び出すことを防止できる。
【００２６】
図２は、本実施形態に係るサーバ装置２０の機能構成の一例を示す。サーバ装置２０は、サーバ側通信部２００、サーバ側制御部２１０、認証部２２０、サーバ側認証データ生成部２２２、データベース群２３０、サーバ側鍵生成部２４０、サーバ側暗号化部２４２、サーバ側復号化部２４４、およびファイルサーバ２５０を有する。また、データベース群２３０は、認証データベース２３２、権限データベース２３４、ファイル情報データベース２３６、およびログデータベース２３８を含む。
【００２７】
ファイル情報データベース２３６は、ファイル名に対応づけて、ファイルサーバ２５０が格納するファイルのファイル位置を一意に識別できるアドレスを格納する。ファイル情報データベース２３６は、サーバ側制御部２１０の制御に基づいて、格納しているファイル位置をファイルサーバ２５０に供給する。また、ファイルサーバ２５０は、ファイル情報データベース２３６に格納されているファイル位置にファイルを格納する。そして、ファイルサーバ２５０は、サーバ側制御部２１０の制御に基づいて、格納しているファイルをサーバ側暗号化部２４２に供給する。具体的には、ファイルサーバ２５０は、ファイル情報データベース２３６からファイル位置を受け取り、当該ファイル位置に格納しているファイルを、サーバ側暗号化部２４２に供給する。また、ファイルサーバ２５０は、サーバ側復号化部２４４が復号化したファイルを、サーバ側制御部２１０の制御に基づいて格納してもよい。具体的には、ファイルサーバ２５０は、サーバ側復号化部２４４が復号化したファイルを格納する。そして、ファイルサーバ２５０は、ファイルを格納したファイル位置をファイル情報データベース２３６に供給して、ファイル情報データベース２３６に格納する。
【００２８】
権限データベース２３４は、ファイル情報データベース２３６に格納されている複数のファイル名に対応づけて、ユーザ毎のファイルの利用権限を示す利用権限情報を格納する。具体的には、権限データベース２３４は、ファイルを一意に識別できる識別子に対応づけて、ファイルの利用権限を格納する。なお、ファイルの利用権限は、ファイルの閲覧、ファイルの印刷、ファイルの編集、ファイルの別名保存、ファイルの上書き保存、ファイルのメール送信、ファイルの削除、およびファイルの持ち出し等をユーザがすることができるか否かを示す情報であってよい。権限データベース２３４は、サーバ側制御部２１０の制御に基づいて、格納している利用権限をサーバ側制御部２１０に供給する。
【００２９】
認証データベース２３２は、ユーザ毎の認証ＩＤを予め格納する。また、認証データベース２３２は、ユーザを識別するユーザ識別情報に対応づけて認証ＩＤを格納してよい。ユーザ識別情報は、具体的には、ユーザを一意に識別できる識別情報であってよく、例えば、ユーザＩＤおよびパスワード等であってよい。なお、認証データベース２３２は、ユーザが本実施形態に係るファイル管理システム１０を最初に使用を開始するときに生成された認証ＩＤを、予め格納してよい。認証データベース２３２は、サーバ側制御部２１０の制御に基づいて、認証ＩＤをサーバ側認証データ生成部２２２に供給する。
【００３０】
ログデータベース２３８は、サーバ側通信部２００が受信した、ユーザがファイルに対して操作した履歴の情報であるログデータを格納する。ログデータベース２３８は、ファイルを一意に識別できる識別子に対応づけてユーザがファイルに対して操作した履歴を、操作をした時刻と共に格納する。具体的には、まず、サーバ側通信部２００が、クライアント装置３０からサーバ装置２０に送信された暗号化されたログデータを受信する。そして、サーバ側通信部２００は受信したログデータを、サーバ側制御部２１０の制御に基づいて、サーバ側復号化部２４４に供給して、暗号化されたログデータを復号化させる。続いて、サーバ側制御部２１０は、ファイルサーバ２５０に働きかけて、復号化されたログデータをログデータベース２３８に格納させる。
【００３１】
サーバ側通信部２００は、クライアント装置３０等とファイル、認証データ、およびユーザＩＤ等のデータの送受信をする。具体的には、サーバ側通信部２００は、クライアント装置３０等が送信した認証データを受信する。サーバ側通信部２００は、受信したデータをサーバ側制御部２１０に供給する。また、サーバ側通信部２００は、ファイルサーバ２５０が格納しているファイル、および権限データベース２３４が格納している利用権限情報を、サーバ側制御部２１０の制御に基づいてクライアント装置３０等に送信する。そして、サーバ側通信部２００は、サーバ装置２０においてユーザ認証が成立した場合に、ファイルサーバ２５０が格納しているファイルを暗号化した暗号化ファイル、および権限データベース２３４が格納している利用権限情報を暗号化した暗号化利用権限情報を、当該ユーザ認証が成立したクライアント装置に送信する。なお、サーバ装置２０とクライアント装置３０等との間は、ＬＡＮ、ＷＡＮ、およびインターネット等のネットワークで通信してよい。
【００３２】
サーバ側認証データ生成部２２２は、認証データベース２３２が格納している認証ＩＤを含む認証データを生成する。具体的には、サーバ側認証データ生成部２２２は、サーバ側通信部２００が受信した認証データに含まれるユーザ識別情報を抽出して、抽出したユーザ識別情報に対応づけて認証データベース２３２が格納している認証ＩＤを抽出する。そして、サーバ側認証データ生成部２２２は、抽出した認証ＩＤおよびユーザ識別情報を含む認証データを生成する。なお、ユーザ識別情報は、例えば、ユーザＩＤおよびユーザに対応付けられたパスワード等であってよい。サーバ側認証データ生成部２２２は、生成した認証データを認証部２２０およびサーバ側鍵生成部２４０に供給する。
【００３３】
サーバ側鍵生成部２４０は、サーバ側認証データ生成部２２２から受け取った認証データからサーバ側制御部２１０の制御に基づいて、ファイル等のデータを暗号化する暗号鍵および暗号化されたデータを復号化する復号鍵を生成する。なお、サーバ側鍵生成部２４０は、暗号方式として、例えば、ＡＥＳおよびＲＣ４等の共通鍵暗号方式を採用してよい。サーバ側鍵生成部２４０は、生成した暗号鍵をサーバ側暗号化部２４２に供給する。また、サーバ側鍵生成部２４０は、生成した復号鍵をサーバ側復号化部２４４に供給する。
【００３４】
サーバ側暗号化部２４２は、サーバ側鍵生成部２４０が生成した暗号鍵を用いて、サーバ側通信部２００がクライアント装置に送信すべきデータを暗号化する。例えば、サーバ側制御部２１０はファイルサーバ２５０に働きかけて、ファイルサーバ２５０が格納しているファイルをサーバ側暗号化部２４２に供給させる。そして、サーバ側暗号化部２４２は、受け取ったファイルを暗号化する。また、サーバ側暗号化部２４２は、サーバ側通信部２００を介してクライアント装置に送信すべき情報である、権限データベース２３４に格納されている利用権限情報を、サーバ側制御部２１０の制御に基づいて暗号化してもよい。サーバ側暗号化部２４２は暗号化したデータを、サーバ側制御部２１０を介して、サーバ側通信部２００からクライアント装置に送信する。
【００３５】
サーバ側復号化部２４４は、サーバ側鍵生成部２４０が生成した復号鍵を用いて、サーバ側通信部２００がクライアント装置から受信したデータを復号化する。例えば、サーバ側復号化部２４４は、サーバ側通信部２００がクライアント装置から受信した暗号化ファイルを復号化する。サーバ側復号化部２４４は、復号化したファイルをファイルサーバ２５０に供給する。また、サーバ側復号化部２４４は、サーバ側通信部２００がクライアント装置から受信した暗号化された認証データを復号化する。サーバ側復号化部２４４は、復号化した認証データを認証部２２０に供給する。
【００３６】
認証部２２０は、サーバ側通信部２００がクライアント装置から受信した認証データと、サーバ側認証データ生成部２２２が生成した認証データとが一致するか否かを判断して認証する。具体的には、認証部２２０は、サーバ側制御部２１０から受け取った、クライアント装置において暗号化された認証データをサーバ側復号化部２４４に供給して復号化させる。そして、認証部２２０は、復号化した認証データをサーバ側復号化部２４４から受け取る。続いて、サーバ側認証データ生成部２２２において生成された認証データと、復号化された認証データとを照合する。認証部２２０は、認証結果をサーバ側制御部２１０に供給する。
【００３７】
サーバ側制御部２１０は、サーバ装置２０が有する各部材の動作を制御する。具体的には、サーバ側制御部２１０は、サーバ側通信部２００がクライアント装置から受信したデータを、サーバ装置２０が有する適切な部材に供給する。例えば、サーバ側制御部２１０はファイルサーバ２５０に働きかけて、ファイルサーバ２５０が格納しているファイルをサーバ側暗号化部２４２に供給する。また、サーバ側制御部２１０はサーバ側復号化部２４４に働きかけて、復号化されたファイルをファイルサーバ２５０に供給させてもよい。また、サーバ側制御部２１０は、サーバ装置２０からクライアント装置に送信すべき暗号化データを、サーバ側通信部２００からクライアント装置の送信させる。そして、サーバ側制御部２１０は、サーバ装置２０の各部材に働きかけて、所定のデータを所定の部材に供給させると共に、当該データに対して当該部材に適切な処理をさせる。
【００３８】
図３は、本実施形態に係る権限データベース２３４の一例を示す図である。権限データベース２３４は、ファイル情報データベース２３６に格納されている複数のファイル名に対応づけて、ファイルサーバ２５０が格納しているファイル毎およびフォルダ毎に、ユーザ毎のファイルおよびフォルダの利用権限情報を格納する。具体的には、権限データベース２３４は、ユーザを一意に示すユーザＩＤに対応づけて、ユーザが利用できるフォルダおよびファイルを識別する情報、例えばファイル名を格納する。そして、権限データベース２３４は、フォルダおよびファイルに対してユーザが操作できる権限を格納する。
【００３９】
例えば、ユーザＩＤがＡに対応する人物がサーバ装置２０の管理者である場合には、権限データベース２３４は、ユーザＩＤがＡに対応する人物が、サーバ内に格納されている全てのフォルダおよび全てのファイルに対して全ての操作（例えば、閲覧、印刷、編集、削除、保存、コピー、メール送信、および持ち出し等）をすることができる旨を示す利用権限を格納する。また、権限データベース２３４は、フォルダ毎に当該フォルダを管理するフォルダ管理者の利用権限を格納してもよい。例えば、ユーザＩＤがＢに対応する人物がフォルダ８００のフォルダ管理者である場合には、権限データベース２３４は、ユーザＩＤがＢに対応する人物が、フォルダ８００に分類されたファイルに対して全ての操作をすることができる旨を示す利用権限を格納する。
【００４０】
また、権限データベース２３４は、ファイル毎に当該ファイルに対してユーザが操作できる利用権限を格納する。例えば、権限データベース２３４は、ユーザＩＤがＥに対応する人物については、ファイル８０２の閲覧だけできる利用権限を格納している。また、権限データベース２３４は、ユーザＩＤがＦに対応する人物については、ファイル８０２の閲覧および印刷ができる利用権限を格納している。一方、権限データベース２３４は、ユーザＩＤがＧに対応する人物については、ファイル８０２に対して全ての操作ができる旨を示す利用権限を格納している。このように、権限データベース２３４は、ユーザ毎に、当該ユーザが利用できるフォルダおよびファイルを示す情報、並びに当該ユーザが当該フォルダおよび当該ファイルに対して操作することができる利用権限を格納する。
【００４１】
図４は、本実施形態に係るファイル利用権限の階層構造の概念を示す。また、図４には、概念的なサーバ装置２５の一例を示す。概念的なサーバ装置２５は、フォルダ８００、フォルダ８１０、およびフォルダ８２０等を格納している。そして、フォルダ８００は、ファイル８０２、ファイル８０４、およびフォルダ８０６等を含む。また、フォルダ８１０は、フォルダ８１２およびフォルダ８１４等を含む。更に、フォルダ８２０は、ファイル８２２およびファイル８２４等を含む。
【００４２】
サーバ管理者７００である、ユーザＩＤがＡに対応する人物は、概念的なサーバ装置２５内の全てのフォルダおよびファイルに対して全ての利用権限を有する。そして、サーバ管理者７００は、フォルダを管理するフォルダ管理者７１０として複数の人物を設定できる。例えば、サーバ管理者７００は、ユーザＩＤがＢ、Ｃ、およびＤに対応する人物をフォルダ管理者７１０として設定できる。そして、サーバ管理者７００は、フォルダ管理者７１０に対して、当該フォルダ管理者７１０が利用できるフォルダおよびファイルを設定できる。フォルダ管理者７１０は、サーバ管理者７００に設定されたフォルダについての全ての利用権限を有していてよい。また、サーバ管理者７００は、フォルダの利用権限を制限したフォルダ管理者７１０を設定してもよい。サーバ管理者７００が設定した利用権限は、権限データベース２３４に格納される。
【００４３】
例えば、サーバ管理者７００は、フォルダ８００、フォルダ８１０、およびフォルダ８２０に対してそれぞれ異なる人物を指定して、フォルダ管理者７１０を設定できる。例えば、サーバ管理者７００は、フォルダ８００に対してはユーザＩＤがＢに対応する人物を、フォルダ８１０に対してはユーザＩＤがＣに対応する人物を、およびフォルダ８２０に対してはユーザＩＤがＤに対応する人物をフォルダ管理者７１０として設定してよい。なお、サーバ管理者７００は、フォルダ管理者７１０に対して複数のフォルダを管理させる旨を設定してもよい。また、サーバ管理者７００は、フォルダおよびファイルに対する利用権限を制限して、フォルダ管理者７１０を設定してもよい。例えば、サーバ管理者７００は、所定のフォルダ管理者７１０に対しては、当該フォルダ管理者７１０が管理するフォルダに分類されているファイルの削除等、所定の権限を制限してもよい。
【００４４】
フォルダ管理者７１０は、サーバ管理者７００に設定されたフォルダおよび利用権限の範囲内で、更に、ファイルユーザ７２０に当該フォルダ管理者７１０が管理しているフォルダに分類されているファイルに対して利用権限を設定できる。例えば、ユーザＩＤがＢに対応するフォルダ管理者７１０は、ユーザＩＤがＥ、Ｆ、およびＧに対応する人物に、フォルダ管理者７１０が管理しているフォルダ８００に分類されているファイル８０２、ファイル８０４、およびフォルダ８０６等に対して利用権限を設定できる。係る場合においてフォルダ管理者７１０は、それぞれのユーザごとにファイルの利用権限を設定できる。例えば、フォルダ管理者７１０は、ユーザＩＤがＥの人物に対してはファイル８０２の閲覧だけできる利用権限を設定する。また、フォルダ管理者７１０は、ユーザＩＤがＦの人物に対してはファイル８０２の閲覧および印刷ができる利用権限を設定してよい。フォルダ管理者７１０が設定した利用権限は、権限データベース２３４に格納される。
【００４５】
更に、ユーザＩＤがＧに対応する人物が、ファイル８０２を作成したファイル作成者７３０である場合には、ユーザＩＤがＧに対応する人物は、自らが作成したファイル８０２については、他のファイルユーザ７４０（例えば、ユーザＩＤがＨおよびＩの人物等）に利用権限を自由に設定できる。ファイル作成者７３０が設定した利用権限は、権限データベース２３４に格納される。
【００４６】
本実施形態に係るファイル管理システム１０は、サーバ管理者７００が、ユーザ毎に当該ユーザが操作できるフォルダおよびファイルを特定して、特定したフォルダおよびファイルに対して設定した利用権限を格納できる。すなわち、ファイル管理システム１０によれば、ユーザ毎に当該ユーザが使用できるファイルおよび当該ファイルに対して操作できる権限を設定した利用権限を格納できるので、一度フォルダおよびファイルの管理条件を設定した後はサーバ管理者不在でファイル管理システム１０を運用しても、フォルダおよびファイルについて適切な管理ができる。
【００４７】
また、本実施形態に係るファイル管理システム１０は、管理者およびユーザを、サーバ管理者７００、フォルダ管理者７１０、およびファイルユーザ７２０等に階層的に分類して、各階層毎にファイルの利用権限を設定できる。すなわち、ファイル管理システム１０によれば、階層的に上位の管理者が、当該管理者の利用権限の範囲内で下位の管理者を設定できるので、各ユーザが無制限にファイルの利用権限を拡大することを防止できる。
【００４８】
図５は、本実施形態に係る認証データベース２３２の一例を示す。認証データベース２３２は、ユーザを一意に識別できるユーザＩＤに対応づけて、ユーザのパスワードおよび認証ＩＤを格納する。また、認証データベース２３２は、ユーザＩＤに対応づけて、ユーザの個人情報、例えば、氏名、部署名、および役職等を格納してもよい。
【００４９】
図６は、本実施形態に係るファイル情報データベース２３６の一例を示す。ファイル情報データベース２３６は、ファイルを一意に識別できるファイルＩＤ及びファイル名に対応づけて、当該ファイル名に対応するファイルのファイルサーバ２５０におけるファイル位置を格納する。
【００５０】
図７は、本実施形態に係るログデータベース２３８の一例を示す。ログデータベース２３８は、ファイルＩＤに対応づけて、当該ファイルＩＤに対応するファイルデータに対してした、ユーザの作業履歴を格納する。具体的には、ログデータベース２３８は、ファイルＩＤに対応づけてユーザＩＤ、ユーザが当該ファイルに対して所定の作業をした時刻、および作業内容を示す履歴等を格納する。また、ログデータベース２３８は、ユーザがファイルに対する作業をしたクライアント装置のＩＰアドレスおよびユーザの氏名等を格納してもよい。例えば、ログデータベース２３８は、ユーザＩＤがＥに該当する人物が、ファイルＩＤが＃８０２に該当するファイル８０２に対して行った「閲覧」操作を示す情報を、当該操作を行った時刻と共に格納する。
【００５１】
本実施形態に係るファイル管理システム１０によれば、ユーザのファイルに対する操作の全てをログデータベース２３８に格納できるので、サーバ管理者７００はいつでもユーザのファイルに対する操作の全てを、監視および管理できる。
【００５２】
図８は、本実施形態に係るクライアント装置３０の機能構成の一例を示す。クライアント装置３０は、クライアント側通信部３００、クライアント側制御部３１０、オペレーティングシステム制御部３１２、クライアント側認証部３２０、ハードウェアＩＤ取得部３３０、インストール時刻格納部３３２、ログイン情報取得部３３４、ユーザ識別情報取得部３３６、クライアント側鍵生成部３４０、クライアント側暗号化部３４２、クライアント側復号化部３４４、権限入力制御部３５０、権限設定部３５２、権限設定許可部３５４、テンポラリファイル格納部３６０、権限展開部３７０、アプリケーション制御部３８０、アプリケーションソフト３９０、およびオペレーティングシステム３９２を有する。また、クライアント側認証部３２０は、クライアント側認証データ生成部３２２および認証ＩＤ生成部３２４を含む。なお、クライアント装置３０は、請求項に記載の情報処理装置の一例である。
【００５３】
ハードウェアＩＤ取得部３３０は、クライアント側制御部３１０の制御に基づいて、クライアント装置３０が備えるハードウェアを識別するハードウェアＩＤを取得する。ハードウェアＩＤは、例えば、クライアント装置３０が備えるハードディスク装置の製造メーカの型番およびシリアル番号、並びにクライアント装置３０のマザーボードのシリアル番号等であってよく、当該ハードウェアＩＤはクライアント装置毎にそれぞれ異なる。そして、ハードウェアＩＤはクライアント装置毎に一意に決定できる。ハードウェアＩＤ取得部３３０は、クライアント側制御部３１０の制御の基づいて、取得したハードウェアＩＤを認証ＩＤ生成部３２４に供給する。
【００５４】
ログイン情報取得部３３４は、オペレーティングシステムにログインする場合にユーザから入力されるログイン情報を取得する。ログイン情報は、例えば、ユーザ毎のログインアカウントおよびパスワード等であってよい。ログイン情報取得部３３４は、クライアント側制御部３１０の制御に基づいて、取得したログイン情報を認証ＩＤ生成部３２４に供給する。インストール時刻格納部３３２は、クライアント装置３０においてアプリケーション制御部３８０として機能するソフトウェアがインストールされた時刻を格納する。インストール時刻格納部３３２は、クライアント側制御部３１０の制御に基づいて、格納したインストール時刻を認証ＩＤ生成部３２４に供給する。
【００５５】
認証ＩＤ生成部３２４は、クライアント側制御部３１０の制御に基づいて、ハードウェアＩＤ取得部３３０が取得したハードウェアＩＤ、インストール時刻格納部３３２が格納しているインストール時刻、およびログイン情報取得部３３４が取得したログイン情報から認証ＩＤを生成する。具体的には、認証ＩＤ生成部３２４は、ハードウェアＩＤ取得部３３０から受け取ったハードウェアＩＤ、インストール時刻、およびユーザのログインアカウント等からユーザごとに一意に対応する認証ＩＤを生成する。なお、認証ＩＤ生成部３２４は、ハードウェアＩＤおよびインストール時刻から認証ＩＤを生成してもよい。認証ＩＤ生成部３２４は、認証ＩＤを、ユーザが本実施形態に係るクライアント装置３０においてファイル作業をする場合に、アプリケーション制御部３８０として機能するソフトウェアを起動するたびに、毎回生成してよい。認証ＩＤ生成部３２４は、クライアント側制御部３１０の制御に基づいて、生成した認証ＩＤをクライアント側認証データ生成部３２２に供給する。
【００５６】
ユーザ識別情報取得部３３６は、ユーザを一意に識別する情報であるユーザ識別情報を取得する。ユーザ識別情報は、例えば、ユーザＩＤおよびパスワードであってよい。ユーザ識別情報取得部３３６は、クライアント側制御部３１０の制御に基づいて、クライアント側認証データ生成部３２２にユーザ識別情報を供給する。クライアント側認証データ生成部３２２は、認証ＩＤ生成部３２４が生成した認証ＩＤを含む認証データを生成する。また、クライアント側認証データ生成部３２２は、認証ＩＤ生成部３２４から受け取った認証ＩＤおよびユーザ識別情報取得部３３６から受け取ったユーザ識別情報を含む認証データを生成してもよい。クライアント側認証データ生成部３２２は、クライアント側制御部３１０の制御に基づいて、生成した認証データをクライアント側鍵生成部３４０およびクライアント側暗号化部３４２に供給する。
【００５７】
クライアント側鍵生成部３４０は、クライアント側制御部３１０の制御に基づいて、クライアント側認証データ生成部３２２から受け取った認証データから暗号鍵および復号鍵を生成する。なお、クライアント側鍵生成部３４０は、暗号方式として、例えば、ＡＥＳおよびＲＣ４等の共通鍵暗号方式を採用してよい。クライアント側鍵生成部３４０は、生成した暗号鍵をクライアント側暗号化部３４２に供給する。また、クライアント側鍵生成部３４０は、生成した復号鍵をクライアント側復号化部３４４に供給する。
【００５８】
クライアント側暗号化部３４２は、クライアント側制御部３１０の制御に基づいて、クライアント側鍵生成部３４０から受け取った暗号鍵を用いてクライアント装置３０がサーバ装置２０に送信すべきデータを暗号化する。例えば、クライアント側暗号化部３４２は、サーバ装置２０から受信したファイルに対してユーザが所定の操作をして更新した後に、更新されたファイルを暗号化する。クライアント側暗号化部３４２は、暗号化したデータをクライアント側制御部３１０に供給する。
【００５９】
クライアント側復号化部３４４は、クライアント側制御部３１０の制御に基づいて、クライアント側鍵生成部３４０から受け取った復号鍵を用いてクライアント装置３０がサーバ装置２０から受信したデータを復号化する。具体的には、クライアント側復号化部３４４は、サーバ装置２０からクライアント側通信部３００を介してクライアント側制御部３１０が受け取った、暗号化された利用権限情報、および暗号化されたファイルデータ等の暗号化された各データを復号化する。クライアント側復号化部３４４は、クライアント側制御部３１０の制御に基づいて、復号化した利用権限情報を権限展開部３７０に供給する。また、クライアント側復号化部３４４は、クライアント側制御部３１０の制御に基づいて、復号化したファイルデータをテンポラリファイル格納部３６０に供給する。
【００６０】
クライアント側通信部３００は、サーバ側通信部２００が送信したファイルサーバ２５０が格納しているファイルおよび権限データベース２３４がファイルに対応づけて格納しているファイルの利用権限を示す利用権限情報を受信する。また、クライアント側通信部３００は、クライアント側認証データ生成部３２２が生成した認証データを、クライアント側制御部３１０の制御に基づいて、サーバ装置２０に送信する。クライアント側通信部３００は、サーバ装置２０から受信したファイルおよび利用権限情報を、クライアント側制御部３１０の供給する。なお、サーバ装置２０から受信するファイルおよび利用権限情報は、両方とも暗号化されていてよい。
【００６１】
テンポラリファイル格納部３６０は、アプリケーション制御部３８０の制御に基づいて、クライアント側復号化部３４４から受け取った復号化済のファイルをテンポラリファイルとして展開して、アプリケーションソフト３９０に利用させる。テンポラリファイル格納部３６０は、ユーザがファイルの利用を終了した場合には、クライアント側暗号化部３４２に当該ファイルを供給する。また、テンポラリファイル格納部３６０は、ユーザがファイルの利用を終了した場合には、アプリケーション制御部３８０の制御に基づいて、格納していたファイルの痕跡を消去する。権限展開部３７０は、クライアント側復号化部３４４から受け取った利用権限情報を展開する。そして、権限展開部３７０はアプリケーション制御部３８０に、利用権限情報を供給する。
【００６２】
アプリケーションソフト３９０は、クライアント側通信部３００が受信したファイルをユーザに利用させる。具体的には、クライアント側制御部３１０の制御に基づいて、オペレーティングシステム３９２によりテンポラリファイル格納部３６０に展開されたテンポラリファイルに対応するアプリケーションソフト３９０が呼び出される。そして、呼び出されたアプリケーションソフト３９０は、クライアント側通信部３００が受信したファイルをユーザに利用させる。アプリケーションソフト３９０は、例えば、ＭＳ−Ｏｆｆｉｃｅ（登録商標）等のソフトウェアであってよい。また、Ａｃｒｏｂａｔ  Ｒｅａｄｅｒ（登録商標）等のソフトウェアであってもよい。オペレーティングシステム３９２は、アプリケーションソフト３９０の動作を制御する。オペレーティングシステム３９２は、例えば、Ｗｉｎｄｏｗｓ（登録商標）であってよい。
【００６３】
オペレーティングシステム制御部３１２は、クライアント側制御部３１０に働きかけて、クライアント装置３０が有する入力装置（キーボードおよびマウス等）の制御、ログイン制御、クリップボードの定期監視、およびシステムロック制御等をする。具体的には、オペレーティングシステム制御部３１２は、ユーザがキーボード操作によりファイルのコピー等の操作をすることを制御する。例えば、ユーザがファイルのコピーの利用権限がない場合には、オペレーティングシステム制御部３１２はクライアント側制御部３１０に働きかけて、ユーザがキーボードを用いてファイルのコピーをする操作を禁止する。
【００６４】
また、オペレーティングシステム制御部３１２は、サーバ装置２０から送信されたファイルがテンポラリファイル格納部３６０に展開された場合には、キーボードのコントロールキーを利用した操作を無効にすべく、所定のキーボード操作に関する情報をオペレーティングシステムに供給させない制御をする、キーボード制御モジュールを起動して常駐させてもよい。また、オペレーティングシステム制御部３１２は、コントロールキーを用いた情報の持ち出しができるキーボード操作およびクリップボードをコールするＡＰＩの監視等をする、定期監視モジュールを含んでいてもよい。定期監視モジュールは、ユーザのキーボード操作に関する情報をキーボード制御モジュールに供給する。キーボード制御モジュールは、定期監視モジュールから供給された情報に基づいて、キーボードの操作を制御する。
【００６５】
アプリケーション制御部３８０は、クライアント側通信部３００が受信した利用権限情報に基づいて、クライアント側通信部３００が受信したファイルをユーザに利用させる場合に、ユーザが利用可能なアプリケーションの機能を制限する。係る場合において、アプリケーション制御部３８０は、オペレーティングシステムを制御することなく、アプリケーションを制御することによって、利用可能なアプリケーションソフトの機能を制限する。アプリケーション制御部３８０は、オペレーティングシステムを制御しない、すなわち、オペレーティングシステムの動作に割り込むことがないので、オペレーティングシステムの他の機能とバッティングすることがなく、安定した動作を確保できる。
【００６６】
また、アプリケーション制御部３８０は、クライアント側通信部３００が受信した利用権限情報に基づいて、アプリケーションソフトが表示する機能メニューの少なくとも一部を選択できないように制御することによって、利用可能なアプリケーションソフトの機能を制限してよい。例えば、アプリケーション制御部３８０は、所定のファイルに対する所定のユーザの利用権限がファイルの閲覧だけの場合には、ファイルを閉じる等の機能メニューだけを選択可能として、他の機能メニュー（コピー、保存、および送信等）をグレーアウトして選択できないように制限してよい。また、アプリケーション制御部３８０は、ユーザの利用権限のないアプリケーションソフトの機能メニューを非表示にして、ユーザが選択できないようにしてもよい。
【００６７】
更に、アプリケーション制御部３８０は、クライアント側通信部３００が受信したファイルをテンポラリファイルとしてテンポラリファイル格納部３６０に展開して、アプリケーションソフト３９０に利用させる。そして、アプリケーション制御部３８０は、テンポラリファイル格納部３６０に展開されているファイルの保存をユーザから要求された場合には、当該ファイルをクライアント側通信部３００からサーバ装置２０に送信させてファイルサーバ２５０に格納させる。具体的には、アプリケーション制御部３８０は、当該ファイルをテンポラリファイル格納部３６０からクライアント側暗号化部３４２に供給させる。そして、クライアント側暗号化部３４２は受け取ったファイルを暗号化してクライアント側制御部３１０に供給する。続いて、クライアント側制御部３１０は受け取った暗号化されたファイルを、クライアント側通信部３００を介してサーバ装置２０に送信する。そして、アプリケーション制御部３８０は、テンポラリファイル格納部３６０に展開されているファイルを、新規ファイルで上書きする。また、アプリケーション制御部３８０は、新規ファイルで上書きしたファイルを、その後、削除してもよい。
【００６８】
本実施形態に係るクライアント装置３０は、サーバ装置２０から受信したファイルをテンポラリファイルとして展開する。そして、ユーザがファイルに対する操作を終了した場合には、テンポラリファイルに新規ファイルを上書きして保存する。これにより、テンポラリファイルのインデックス情報の全てが書き換えられて空白となるので、悪意のあるユーザがクライアント装置３０に格納されているファイルデータにアクセスすることを防止できる。
【００６９】
クライアント側制御部３１０は、クライアント装置３０が有する各部材の動作を制御する。具体的には、クライアント側制御部３１０は、クライアント側通信部３００がサーバ装置２０から受信したデータを、クライアント装置３０が有する適切な部材に供給する。また、クライアント側制御部３１０は、クライアント装置３０からサーバ装置２０に送信すべき暗号化データを、クライアント側通信部３００にサーバ装置２０へ送信させる。そして、クライアント側制御部３１０は、クライアント装置３０の各部材に働きかけて、所定のデータを所定の部材に供給させると共に、当該データに対して当該部材に所定の処理をさせる。
【００７０】
権限入力制御部３５０は、権限データベース２３４が格納しているファイルの利用権限をユーザに入力させる。権限入力制御部３５０は、入力されたファイルの利用権限を権限設定部３５２に供給する。権限設定部３５２は、ユーザから入力された利用権限を示す利用権限情報を、クライアント側通信部３００からサーバ装置２０に送信して、権限データベースに記録させる。
【００７１】
権限設定許可部３５４は、所定の利用権限が与えられているユーザに対して、所定の利用権限より制限された利用権限を他のユーザに与えることを許可する。例えば、権限設定許可部３５４は、所定のファイルに対する利用権限として閲覧、印刷、および消去が認められているユーザに対して、閲覧、印刷、および消去の利用権限の範囲内で、少なくとも一部の利用権限を他のユーザに与えることを許可する。また、権限設定許可部３５４は、フォルダの管理者であるフォルダ管理者に対して、フォルダ内のファイルの利用権限を他のユーザに与えることを許可する。具体的には、権限設定許可部３５４は、フォルダ管理者に対して、当該フォルダ管理者が管理しているフォルダに分類されているファイルに対する利用権限を、他のユーザに与えることを許可する。例えば、権限設定許可部３５４は、当該フォルダ管理者に、複数のファイルごとに異なるユーザに利用権限を与えることを許可することができ、また、複数のファイルごとに異なる利用権限を与えることを許可することができる。
【００７２】
更に、権限設定許可部３５４は、ファイルの作成者であるファイル作成者に対して、ファイルの利用権限を他のユーザに与えることを許可する。具体的には、権限設定許可部３５４は、ファイル作成者に対して、当該ファイル作成者が作成したファイルに限って、他のユーザに当該ファイルの利用権限を与えることを許可する。係る場合において権限設定許可部３５４は、ファイル作成者がファイルの利用権限を制限して、他のユーザにファイルの利用権限を与えることを許可してもよい。そして、権限設定許可部３５４は、サーバ装置２０の管理者であるサーバ管理者に対して、権限データベース２３４が格納しているファイルの利用権限を他のユーザに与えることを許可する。サーバ管理者はサーバ装置２０が格納する全てのフォルダおよびファイルについて利用権限を有しているので、権限設定許可部３５４は、サーバ管理者が、フォルダおよびファイルごとに異なる利用権限を設定して他のユーザに利用権限を与えることを許可してもよい。なお、権限設定許可部３５４は、サーバ装置２０が有していてもよい。
【００７３】
本実施形態に係るファイル管理システム１０によれば、ユーザが使用するクライアント装置３０のハードウェアＩＤ、アプリケーション制御部３８０として機能するソフトウェアがインストールされた時刻、およびログイン情報（例えば、ユーザアカウント）から認証ＩＤを生成できる。そして、生成された認証ＩＤおよびユーザ識別情報（例えば、パスワード）から認証データを生成して、サーバ装置２０に送信することによりユーザ認証をすることができる。係る認証ＩＤは、当該ユーザおよび当該ユーザが使用するハードウェアから一意に生成されるので、第三者が当該ユーザが使用するクライアント装置３０とは異なるクライアント装置において当該ユーザのユーザ識別情報を用いてユーザ認証を試みても、ユーザ認証をすることはできない。また、第三者が当該ユーザが使用するクライアント装置３０においてユーザ認証を試みても、当該ユーザのユーザ識別情報とは異なるユーザ識別情報ではユーザ認証することはできない。これにより、本実施形態に係るファイル管理システム１０によれば、ユーザがクライアント装置３０からサーバ装置２０にアクセスするときにハードウェアＩＤの基づいてユーザ認証をするので、アクセスが許可されていないユーザがなりすましによりアクセスすることを強力に防止できる。
【００７４】
また、本実施形態に係るファイル管理システム１０によれば、サーバ装置２０においてファイルの利用権限を、サーバ管理者、フォルダ管理者、およびユーザ毎、並びにフォルダ毎およびファイル毎に細かく設定できるので、利用権限の設定後はサーバ管理者が不在であっても、ファイルの取り扱いについてその漏洩の防止および不正利用の防止を、効率的かつ強力に実現できる。
【００７５】
更に、本実施形態に係るファイル管理システム１０によれば、クライアント装置３０においてユーザが使用したファイルは、ユーザが使用した後にサーバ装置２０に送信してサーバ装置２０で一元管理する。そして、クライアント装置３０がテンポラリファイルとして展開したファイルは、ユーザが使用した後にユーザのアクセスを防止することを目的として、新規ファイルが上書き保存される。これにより、データをローカルに格納しないサーバ一元管理を実現することができ、機密ファイルが分散することを防止できる。
【００７６】
図９は、本実施形態に係るクライアント装置３０の表示画面の一例である。ユーザがアプリケーション制御部３８０として機能するソフトウェアを起動すると、クライアント装置３０が有するモニタ等の表示装置にクライアント画面４００が表示される。クライアント画面４００には、当該ユーザに少なくとも「閲覧」の利用権限が与えられているサーバのサーバ情報、各フォルダ、および各ファイルが表示される。更に、クライアント画面４００には各フォルダおよび各ファイル毎に、当該ユーザに与えられている利用権限が表示される。
【００７７】
例えば、ユーザがファイル４０２を選択した場合を考える。ユーザに与えられているファイル４０２に対する利用権限が、閲覧、印刷、および削除である場合には、クライアント画面４００には、ファイル４０２に関する情報と共に、当該ユーザの利用権限を示す欄において、利用権限が与えられている作業名に対応する、チェックボックス４０４、チェックボックス４０６、およびチェックボックス４０８にチェックが付されて表示される。なお、ファイル４０２に関する情報として、クライアント画面４００には、ファイル４０２の作成者および管理者等の情報を表示してもよい。
【００７８】
続いて、ユーザがファイル４０２をダブルクリック等してファイル４０２を操作するアプリケーションが起動した場合を考える。係る場合には、アプリケーション制御部３８０は、当該ユーザの利用権限に基づいてアプリケーションソフトを制御して、機能メニューの少なくとも一部を選択できないように制御する。例えば、起動したアプリケーションソフトのアプリケーション利用画面４１０において、ユーザがポインタ４３０で「ファイル」メニューをクリックした場合を考える。係る場合においては、「ファイル」メニューに含まれる複数の機能メニューが、プルダウンメニュー４１２として表示される。そして、アプリケーション制御部３８０は、ユーザに利用権限が与えられていない作業に対応する機能メニューをグレーアウト表示して、ユーザが選択できないようにアプリケーションを制御する。一方、アプリケーション制御部３８０は、ユーザに利用権限が与えられている作業に対応する機能メニューおよびユーザに利用権限が与えられていなくてもユーザが利用できる機能メニューは、ユーザが選択できるように表示する。例えば、アプリケーション制御部３８０は、機能メニュー４１４、機能メニュー４１６、機能メニュー４１８、機能メニュー４２０、および機能メニュー４２２を、ユーザが選択できるように表示する。
【００７９】
本実施形態に係るクライアント装置３０によれば、ユーザがファイルを所定のアプリケーションソフトで開いた場合において、当該ファイルに対して当該ユーザに与えられている利用権限に対応する編集メニューだけが当該ユーザが選択できる編集メニューとして表示される。一方、当該ユーザに与えられていない利用権限に対応する編集メニューは、当該ユーザが選択できないように表示されるので、ユーザが利用権限が与えられていない動作をすることを確実に防止できる。
【００８０】
図１０は、本実施形態に係るファイル管理システム１０の暗号化通信開始までの処理の流れの一例を示す。まずユーザは、クライアント装置３０において、ユーザが利用可能なアプリケーションの機能を制御するソフトウェアを起動して、当該ソフトウェアの使用要求を入力する（Ｓ１０００）。続いて、ハードウェアＩＤ取得部３３０が、ハードウェアＩＤを取得する（Ｓ１００５）。ハードウェアＩＤ取得部３３０は、取得したハードウェアＩＤを認証ＩＤ生成部３２４に供給する。
【００８１】
そして、ログイン情報取得部３３４は、ユーザのオペレーティングシステムへのログイン情報を取得する（Ｓ１０１０）。例えば、ログイン情報取得部３３４は、ユーザがクライアント装置３０にログインした場合に入力した、ユーザアカウントおよびパスワード等のログイン情報を取得する。ログイン情報取得部３３４は、取得したログイン情報を認証ＩＤ生成部３２４に供給する。更に、クライアント側制御部３１０は、インストール時刻格納部３３２に働きかけて、ユーザが利用可能なアプリケーションの機能を制御するソフトウェアが、現在ユーザが使用しているクライアント装置３０にインストールされた時刻を取得する（Ｓ１０１５）。クライアント側制御部３１０は、インストール時刻格納部３３２に、取得したインストール時刻を認証ＩＤ生成部３２４に供給させる。続いて、認証ＩＤ生成部３２４は、受け取ったハードウェアＩＤ、ログイン情報、およびインストール時刻から、認証ＩＤを生成する（Ｓ１０２０）。認証ＩＤ生成部３２４は、生成した認証ＩＤをクライアント側認証データ生成部３２２に供給する。
【００８２】
次に、ユーザは、起動したソフトウェアの利用を可能とすることを目的として、ユーザＩＤおよびパスワードを入力する。ユーザ識別情報取得部３３６は、ユーザが入力したユーザＩＤおよびパスワードを取得する（Ｓ１０２５）。なお、ユーザＩＤおよびパスワードは、ユーザ識別情報の一例である。ユーザ識別情報取得部３３６は、取得したユーザＩＤおよびパスワードをクライアント側認証データ生成部３２２に供給する。クライアント側認証データ生成部３２２は、受け取った認証ＩＤおよびパスワードから、認証ＩＤおよびパスワードを含む認証データを、所定のアルゴリズムを用いて生成する（Ｓ１０３０）。クライアント側制御部３１０は、クライアント側認証データ生成部３２２に働きかけて、クライアント側認証データ生成部３２２が生成した認証データおよびユーザＩＤをクライアント側通信部３００からサーバ装置２０へ送信する（Ｓ１０３５）。
【００８３】
サーバ装置２０は、クライアント装置３０が送信した認証ＩＤおよびパスワードを含む認証データ、並びにユーザＩＤをサーバ側通信部２００において受信する。サーバ側通信部２００は受信した認証データおよびユーザＩＤをサーバ側制御部２１０に供給する。サーバ側制御部２１０は受け取ったユーザＩＤと、認証データベース２３２に格納されているユーザＩＤとを比較して、ユーザＩＤに対応する認証ＩＤを取得する（Ｓ１０４０）。サーバ側制御部２１０は取得した認証ＩＤをサーバ側認証データ生成部２２２に供給する。また、サーバ側制御部２１０は、受け取ったユーザＩＤと、認証データベース２３２に格納されているユーザＩＤとを比較して、ユーザＩＤに対応するパスワードを取得する（Ｓ１０４５）。サーバ側制御部２１０は取得したパスワードをサーバ側認証データ生成部２２２に供給する。また、サーバ側制御部２１０は、サーバ側通信部２００から受け取った認証データを、認証部２２０に供給する。
【００８４】
サーバ側認証データ生成部２２２は、受け取った認証ＩＤおよびパスワードからクライアント装置３０と同一のアルゴリズムを用いて、認証データを生成する（Ｓ１０５０）。サーバ側認証データ生成部２２２は、生成した認証データを認証部２２０に供給する。認証部２２０は、サーバ側制御部２１０から受け取ったクライアント装置３０がサーバ装置２０に送信した認証データとサーバ側認証データ生成部２２２から受け取った認証データとを照会してユーザ認証をする（Ｓ１０５５）。認証部２２０においてユーザ認証が否認された場合には（Ｓ１０５５：Ｎｏ）、認証部２２０は、サーバ側制御部２１０にユーザ認証が否認された旨を示すデータである否認データを供給する。サーバ側制御部２１０は、否認データをサーバ側通信部２００からクライアント装置３０に送信する（Ｓ１０６０）。そして、サーバ装置２０は処理を終了する。クライアント装置３０はクライアント側通信部３００において否認データを受信した場合には、否認データをクライアント側制御部３１０に供給する。そして、クライアント側制御部３１０は、ユーザ認証が否認された旨を、例えば、クライアント装置３０が有するモニタ等の表示装置に否認結果として表示する（Ｓ１０６５）。そして、クライアント装置３０は処理を終了する。
【００８５】
一方、認証部２２０においてユーザ認証が承認された場合には（Ｓ１０５５：Ｙｅｓ）、認証部２２０は、サーバ側制御部２１０にユーザ認証が承認された旨を示すデータである承認データを供給する。サーバ側制御部２１０は、承認データをサーバ側通信部２００からクライアント装置３０に送信する（Ｓ１０７０）。また、ユーザ認証が承認された場合には、サーバ側制御部２１０はサーバ側認証データ生成部２２２に、サーバ側認証データ生成部２２２において生成された認証データをサーバ側鍵生成部２４０に供給させる。サーバ側鍵生成部２４０は、受け取った認証データから暗号鍵および復号鍵を生成する（Ｓ１０７５）。サーバ側鍵生成部２４０は生成した暗号鍵をサーバ側暗号化部２４２へ、および生成した復号鍵をサーバ側復号化部２４４へ供給する。そして、サーバ装置２０はクライアント装置３０と暗号化通信を開始する（Ｓ１０９０）。
【００８６】
クライアント装置３０はクライアント側通信部３００において承認データを受信した場合には、承認データをクライアント側制御部３１０に供給する。クライアント側制御部３１０は、ユーザ認証が承認された旨を、例えば、クライアント装置３０が有するモニタ等の表示装置に承認結果として表示する（Ｓ１０７２）。そして、クライアント側制御部３１０は、クライアント側認証データ生成部３２２に働きかけて、クライアント側認証データ生成部３２２が生成した認証データをクライアント側鍵生成部３４０に供給させる。クライアント側鍵生成部３４０は、クライアント側認証データ生成部３２２から受け取った認証データから暗号鍵および復号鍵を生成する（Ｓ１０８０）。クライアント側鍵生成部３４０は生成した暗号鍵をクライアント側暗号化部３４２へ、および生成した復号鍵をクライアント側復号化部３４４へ供給する。そして、クライアント装置３０はサーバ装置２０と暗号化通信を開始する（Ｓ１０８５）。サーバ装置２０とクライアント装置３０との間で暗号化通信が開始された後は、暗号化通信が解除されるまで、サーバ装置２０とクライアント装置３０との間で送受信されるデータは全て暗号化されていてよい。
【００８７】
本実施形態に係るファイル管理システム１０によれば、クライアント装置が有するハードウェアに固有のハードウェアＩＤおよびインストール時刻から認証ＩＤを生成できる。また、クライアント装置においてユーザが入力したパスワードおよび認証ＩＤから認証データを生成して、生成した認証データとサーバ装置があらかじめ格納している認証ＩＤおよびパスワードから生成した認証データとを照合してユーザ認証することができる。これにより、第三者が同一のクライアント装置でユーザ認証を試みても、パスワードが一致しないとユーザ認証されないので、なりすましを強力に防止できる。
【００８８】
図１１は、本実施形態に係るファイル管理システム１０の暗号化通信開始後の処理の流れの一例を示す。ユーザは、クライアント装置３０において、作業を所望するファイルを選択する（Ｓ１１００）。クライアント側制御部３１０は、ユーザに選択されたファイルに対して、当該ユーザに与えられている利用権限をサーバ装置２０に要求する（Ｓ１１０５）。例えば、クライアント側制御部３１０は、ユーザに選択されたファイルに対応するファイルＩＤと共に、当該ユーザが当該ファイルに対して操作できる利用権限を、ファイル要求情報としてサーバ装置２０に送信する。具体的には、クライアント側制御部３１０は、ファイル要求情報を、クライアント側通信部３００からサーバ装置２０に送信する。サーバ側通信部２００は、クライアント装置３０から受信したファイル要求情報に含まれるファイルの利用権限の要求およびファイルＩＤをサーバ側制御部２１０に供給する。サーバ側制御部２１０は、受け取ったファイルＩＤに対応する利用権限を権限データベース２３４から抽出して、ユーザに当該ファイルの利用権限が与えられているか否かを照会する（Ｓ１１１０）。
【００８９】
ユーザに、ユーザが選択したファイルに対する利用権限が一つもない場合には、サーバ側制御部２１０は、当該ユーザが当該ファイルに対して権限がない旨を示す無権限情報をサーバ側通信部２００を介してクライアント装置３０に送信する（Ｓ１１１５）。クライアント装置３０はクライアント側通信部３００において無権限情報を受信する。そして、クライアント側通信部３００は受信した無権限情報をクライアント側制御部３１０に供給する。クライアント側制御部３１０は、無権限情報を受け取った場合には、ユーザに対してユーザが選択したファイルに対して利用権限がない旨を、例えば、クライアント装置３０が有するモニタ等に表示してユーザに通知する（Ｓ１１２０）。
【００９０】
一方、ユーザに、ユーザが選択したファイルに対する利用権限が与えられている場合には（Ｓ１１１０：Ｙｅｓ）、サーバ側制御部２１０は、ユーザが選択したファイルをファイルサーバ２５０から抽出する。そして、サーバ側制御部２１０は、抽出したファイルと当該ファイルに対する利用権限とをサーバ側暗号化部２４２に供給する。サーバ側暗号化部２４２は、受け取ったファイルおよび利用権限を暗号化する（Ｓ１１２５）。サーバ側暗号化部２４２は暗号化されたファイルである暗号化ファイルおよび暗号化された利用権限情報である暗号化利用権限情報をサーバ側制御部２１０に供給する。暗号化ファイルおよび暗号化利用権限情報を受け取ったサーバ側制御部２１０は、サーバ側通信部２００を介して暗号化ファイルおよび暗号化利用権限情報をクライアント装置３０に送信する（Ｓ１１３０）。
【００９１】
クライアント側通信部３００は、サーバ装置２０から暗号化ファイルおよび暗号化利用権限情報を受信する。クライアント側通信部３００は、受信した暗号化ファイルおよび暗号化利用権限情報をクライアント側制御部３１０に供給する。クライアント側制御部３１０は受け取った暗号化ファイルおよび暗号化利用権限情報をクライアント側復号化部３４４に供給する。クライアント側復号化部３４４は、受け取った暗号化ファイルおよび暗号化利用権限情報を復号化する（Ｓ１１３５）。クライアント側制御部３１０は、クライアント側復号化部３４４に、復号化されたファイルをテンポラリファイル格納部３６０へ、復号化された利用権限情報を権限展開部３７０に供給させる。クライアント側制御部３１０は、復号化されたファイルをテンポラリファイル格納部３６０に展開させる（Ｓ１１４０）。そして、クライアント側制御部３１０は、オペレーティングシステム制御部３１２に働きかけて、ユーザが選択したファイルを操作するアプリケーションを呼び出す（Ｓ１１４５）。
【００９２】
図１２は、本実施形態に係るアプリケーション制御における処理の流れの一例を示す。まず、クライアント側制御部３１０は、コピー操作およびカット操作を行なったデータを一時的に保存するクリップボードを初期化する（Ｓ１２００）。そして、クライアント側制御部３１０は、サーバ装置２０から取得したファイルをテンポラリファイル格納部３６０に展開する（Ｓ１２０５）。続いて、クライアント側制御部３１０は、制御対象であるアプリケーションが予め定められたアプリケーションであるか否かを判断する（Ｓ１２１０）。例えば、クライアント側制御部３１０は、ファイルの拡張子に基づいて、当該ファイルを操作するアプリケーションが予め定められたアプリケーションであるか否かを判断してよい。なお、アプリケーションは、例えば、ＭＳ−Ｏｆｆｉｃｅ（登録商標）であってよい。
【００９３】
アプリケーションが予め定められたアプリケーションと判断された場合には（Ｓ１２１０：Ｙｅｓ）、クライアント側制御部３１０は、アプリケーションのテンプレートを標準テンプレートに置き換える（Ｓ１２１５）。例えば、アプリケーションがＭＳ−Ｏｆｆｉｃｅ（登録商標）である場合には、オフィステンプレートを標準テンプレートに置き換える。そして、クライアント側制御部３１０はオペレーティングシステム制御部３１２に働きかけて、キーボードの操作をオペレーティングシステムに渡さない制御をするキーボード制御モジュールを起動してクライアント装置３０に常駐させる（Ｓ１２２５）。また、クライアント側制御部３１０は、オペレーティングシステム制御部３１２に働きかけて、コントロールキーを利用したデータの持ち出しをするキーボード操作およびクリップボードをコールするＡＰＩを定期的に監視させる（Ｓ１２３０）。続いて、クライアント側制御部３１０は、ＯＬＥオブジェクトで指定アプリケーションを起動する（Ｓ１２４０）。具体的には、クライアント側制御部３１０は、ファイルの拡張子等で関連付けられるアプリケーションを、ファイルに対応づけて起動する。
【００９４】
一方、アプリケーションが予め定められたアプリケーションでない場合には（Ｓ１２１０：Ｎｏ）、クライアント側制御部３１０は、オペレーティングシステム制御部３１２に働きかけて、専用Ｖｉｅｗｅｒを起動する（Ｓ１２２０）。予め定められたアプリケーションに対応づけられていないファイルは、例えば、ＰＤＦ形式のファイルおよびテキストファイル等であってよい。そして、クライアント側制御部３１０は、オペレーティングシステム制御部３１２に働きかけて、コントロールキーを利用したデータの持ち出しをするキーボード操作およびクリップボードをコールするＡＰＩを定期的に監視させる（Ｓ１２３５）。
【００９５】
そして、クライアント側制御部３１０は、ユーザが選択したファイルの利用権限を権限展開部３７０に展開させる。続いて、アプリケーション制御部３８０は、権限展開部３７０から展開された利用権限を読み込む（Ｓ１２４５）。アプリケーション制御部３８０は、読み込んだ利用権限に基づいて、アプリケーションソフトの機能メニューを制限する（Ｓ１２５０）。例えば、アプリケーション制御部３８０は、ユーザに与えられている利用権限を除く他の機能メニューをユーザが選択できないようにグレーアウトさせる。また、アプリケーション制御部３８０は、ユーザに与えられていない利用権限に対応する編集メニューをアプリケーションソフトに表示させないように制御してもよい。
【００９６】
図１３は、本実施形態に係るファイル更新フローの一例を示す。まず、クライアント装置３０においてユーザはアプリケーションソフトの使用を終了する（Ｓ１３００）。そして、ユーザが、ユーザが選択したファイルに対して保存および印刷操作をしたか否かを、クライアント側制御部３１０は判断する（Ｓ１３０５）。ユーザがファイルの保存および印刷をした場合には、ユーザがファイルの保存および印刷をした時刻を、ログファイルとして記録する（Ｓ１３１０）。そして、クライアント側制御部３１０は、クライアント側通信部３００を介して、ユーザが編集したファイルおよびログデータをサーバ装置２０にアップロードする（Ｓ１３１５）。クライアント装置３０からファイルおよびログファイルを受信したサーバ装置２０は、サーバ側制御部２１０はファイルサーバ２５０に働きかけて、ログデータをログデータベース２３８に記録させる（Ｓ１３２０）。また、サーバ側制御部２１０は、受信した更新済みのファイルを、ファイルサーバ２５０に格納する。そして、ファイルサーバ２５０は、更新済みファイルを格納したファイル位置を、ファイル情報データベース２３６に供給して格納させる。
【００９７】
そして、ファイルのアップロードをした後およびユーザがファイルの保存・印刷をしなかった場合には（Ｓ１３０５：Ｎｏ）、クライアント側制御部３１０は、テンポラリファイル格納部３６０に展開していたテンポラリファイルを削除する（Ｓ１３３０）。例えば、クライアント側制御部３１０は、テンポラリファイルに新規ファイルを上書きして、ユーザが使用していたテンポラリファイルにアクセス不能とする。また、クライアント側制御部３１０は、テンポラリファイルに新規ファイルを上書きした後に、上書きされたファイルを削除してもよい。続いて、クライアント側制御部３１０はオペレーティングシステム制御部３１２に働きかけて、常駐していたキーボード制御モジュールを解除する（Ｓ１３３５）。
【００９８】
図１４は、本発明の第４の実施形態に係る情報処理装置５０のハードウェア構成の一例を示す。なお、情報処理装置５０は、図２に示したサーバ装置２０および図８に示したクライアント装置３０が有する機能の少なくとも一部として機能する。また、これらの機能構成は、記録媒体に格納されたプログラムによってソフトウェアとして提供されてもよい。
【００９９】
本実施形態に係る情報処理装置５０は、ホスト・コントローラ１５８２により相互に接続されるＣＰＵ１５０５、ＲＡＭ１５２０、グラフィック・コントローラ１５７５、および表示装置１５８０を有するＣＰＵ周辺部と、入出力コントローラ１５８４によりホスト・コントローラ１５８２に接続される通信インターフェイス１５３０、ハードディスクドライブ１５４０、およびＣＤ−ＲＯＭドライブ１５６０を有する入出力部と、入出力コントローラ１５８４に接続されるＲＯＭ１５１０、フレキシブルディスク・ドライブ１５５０、および入出力チップ１５７０を有するレガシー入出力部とを備える。
【０１００】
ホスト・コントローラ１５８２は、ＲＡＭ１５２０と、高い転送レートでＲＡＭ１５２０をアクセスするＣＰＵ１５０５およびグラフィック・コントローラ１５７５とを接続する。ＣＰＵ１５０５は、ＲＯＭ１５１０およびＲＡＭ１５２０に格納されたプログラムに基づいて動作して、各部を制御する。グラフィック・コントローラ１５７５は、ＣＰＵ１５０５等がＲＡＭ１５２０内に設けたフレーム・バッファ上に生成する画像データを取得して、表示装置１５８０上に表示させる。これに代えて、グラフィック・コントローラ１５７５は、ＣＰＵ１５０５等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【０１０１】
入出力コントローラ１５８４は、ホスト・コントローラ１５８２と、比較的高速な入出力装置である通信インターフェイス１５３０、ハードディスクドライブ１５４０、ＣＤ−ＲＯＭドライブ１５６０を接続する。通信インターフェイス１５３０は、ネットワークを介して他の装置と通信する。ハードディスクドライブ１５４０は、情報処理装置５０内のＣＰＵ１５０５が使用するプログラムおよびデータを格納する。ＣＤ−ＲＯＭドライブ１５６０は、ＣＤ−ＲＯＭ１５９５からプログラム又はデータを読み取り、ＲＡＭ１５２０を介してハードディスクドライブ１５４０に提供する。
【０１０２】
また、入出力コントローラ１５８４には、ＲＯＭ１５１０と、フレキシブルディスク・ドライブ１５５０、および入出力チップ１５７０の比較的低速な入出力装置とが接続される。ＲＯＭ１５１０は、情報処理装置５０が起動時に実行するブート・プログラム、情報処理装置５０のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ１５５０は、フレキシブルディスク１５９０からプログラム又はデータを読み取り、ＲＡＭ１５２０を介してハードディスクドライブ１５４０に提供する。入出力チップ１５７０は、フレキシブルディスク・ドライブ１５５０、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を接続する。
【０１０３】
ＲＡＭ１５２０を介してハードディスクドライブ１５４０に提供される情報処理プログラムは、フレキシブルディスク１５９０、ＣＤ−ＲＯＭ１５９５、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。情報処理プログラムは、記録媒体から読み出され、ＲＡＭ１５２０を介して情報処理装置５０内のハードディスクドライブ１５４０にインストールされ、ＣＰＵ１５０５において実行される。情報処理装置５０にインストールされて実行される情報処理プログラムは、ＣＰＵ１５０５等に働きかけて、情報処理装置５０を、図１から図１３にかけて説明したサーバ側通信部２００、サーバ側制御部２１０、認証部２２０、サーバ側認証データ生成部２２２、データベース群２３０、サーバ側鍵生成部２４０、サーバ側暗号化部２４２、サーバ側復号化部２４４、ファイルサーバ２５０、認証データベース２３２、権限データベース２３４、ファイル情報データベース２３６、およびログデータベース２３８として機能させる。また、情報処理装置５０にインストールされて実行される情報処理プログラムは、ＣＰＵ１５０５等に働きかけて、情報処理装置５０を、図１から図１３にかけて説明したクライアント側通信部３００、クライアント側制御部３１０、オペレーティングシステム制御部３１２、クライアント側認証部３２０、ハードウェアＩＤ取得部３３０、インストール時刻格納部３３２、ログイン情報取得部３３４、ユーザ識別情報取得部３３６、クライアント側鍵生成部３４０、クライアント側暗号化部３４２、クライアント側復号化部３４４、権限入力制御部３５０、権限設定部３５２、権限設定許可部３５４、テンポラリファイル格納部３６０、権限展開部３７０、アプリケーション制御部３８０、アプリケーションソフト３９０、オペレーティングシステム３９２、クライアント側認証データ生成部３２２、及び認証ＩＤ生成部３２４として機能させてもよい。
【０１０４】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加え得ることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【図面の簡単な説明】
【０１０５】
【図１】ファイル管理システム１０の概要図である。
【図２】サーバ装置２０の機能構成を示すブロック図である。
【図３】権限データベース２３４を示す図である。
【図４】ファイル利用権限を示す概念図である。
【図５】認証データベース２３２を示す図である。
【図６】ファイル情報データベース２３６を示す図である。
【図７】ログデータベース２３８を示す図である。
【図８】クライアント装置３０の機能構成を示すブロック図である。
【図９】クライアント装置３０の表示画面を示す図である。
【図１０】ファイル管理システム１０の暗号化通信開始までのシーケンス図である。
【図１１】ファイル管理システム１０の暗号化通信開始後のシーケンス図である。
【図１２】アプリケーション制御の処理の流れを示すフローチャートである。
【図１３】ファイル更新フローの流れを示すシーケンス図である。
【図１４】情報処理装置５０のハードウェア構成を示すブロック図である。
【符号の説明】
【０１０６】
１０  ファイル管理システム
２０  サーバ装置
２５  概念的なサーバ装置
３０、３２、３４  クライアント装置
４０  通信網
５０  情報処理装置
２００  サーバ側通信部
２１０  サーバ側制御部
２２０  認証部
２２２  サーバ側認証データ生成部
２３０  データベース群
２３２  認証データベース
２３４  権限データベース
２３６  ファイル情報データベース
２３８  ログデータベース
２４０  サーバ側鍵生成部
２４２  サーバ側暗号化部
２４４  サーバ側復号化部
２５０  ファイルサーバ
３００  クライアント側通信部
３１０  クライアント側制御部
３１２  オペレーティングシステム制御部
３２０  クライアント側認証部
３２２  クライアント側認証データ生成部
３２４  認証ＩＤ生成部
３３０  ハードウェアＩＤ取得部
３３２  インストール時刻格納部
３３４  ログイン情報取得部
３３６  ユーザ識別情報取得部
３４０  クライアント側鍵生成部
３４２  クライアント側暗号化部
３４４  クライアント側復号化部
３５０  権限入力制御部
３５２  権限設定部
３５４  権限設定許可部
３６０  テンポラリファイル格納部
３７０  権限展開部
３８０  アプリケーション制御部
３９０  アプリケーションソフト
３９２  オペレーティングシステム
４００  クライアント画面
４０２  ファイル
４０４、４０６、４０８  チェックボックス
４１０  アプリケーション利用画面
４１２  プルダウンメニュー
４１４、４１６、４１８、４２０、４２２  機能メニュー
４３０  ポインタ
７００  サーバ管理者
７１０  フォルダ管理者
７２０、７４０  ファイルユーザ
７３０  ファイル作成者
８００、８１０、８２０  フォルダ
８０２、８０４  ファイル
８０６、８１２、８１４  フォルダ
８２２、８２４  ファイル
１５０５  ＣＰＵ
１５１０  ＲＯＭ
１５２０  ＲＡＭ
１５３０  通信インターフェイス
１５４０  ハードディスクドライブ
１５５０  フレキシブルディスク・ドライブ
１５６０  ＣＤ−ＲＯＭドライブ
１５７０  入出力チップ
１５７５  グラフィック・コントローラ
１５８０  表示装置
１５８２  ホスト・コントローラ
１５８４  入出力コントローラ
１５９０  フレキシブルディスク
１５９５  ＣＤ−ＲＯＭ
【図１】
2007115192.tif 000003
【図２】
2007115192.tif 000004
【図３】
2007115192.tif 000005
【図４】
2007115192.tif 000006
【図５】
2007115192.tif 000007
【図６】
2007115192.tif 000008
【図７】
2007115192.tif 000009
【図８】
2007115192.tif 000010
【図９】
2007115192.tif 000011
【図１０】
2007115192.tif 000012
【図１１】
2007115192.tif 000013
【図１２】
2007115192.tif 000014
【図１３】
2007115192.tif 000015
【図１４】
2007115192.tif 000016