JP2014032610A - オンラインストレージシステム、管理サーバプログラム及びファイル制御プログラム - Google Patents

オンラインストレージシステム、管理サーバプログラム及びファイル制御プログラム Download PDF

Info

Publication number
JP2014032610A
JP2014032610A JP2012174128A JP2012174128A JP2014032610A JP 2014032610 A JP2014032610 A JP 2014032610A JP 2012174128 A JP2012174128 A JP 2012174128A JP 2012174128 A JP2012174128 A JP 2012174128A JP 2014032610 A JP2014032610 A JP 2014032610A
Authority
JP
Japan
Prior art keywords
metafile
data file
file
client terminal
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012174128A
Other languages
English (en)
Inventor
Mikiya Hamada
幹也 濱田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ASRISE CO Ltd
BOOSTVISION CORP
Original Assignee
ASRISE CO Ltd
BOOSTVISION CORP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ASRISE CO Ltd, BOOSTVISION CORP filed Critical ASRISE CO Ltd
Priority to JP2012174128A priority Critical patent/JP2014032610A/ja
Publication of JP2014032610A publication Critical patent/JP2014032610A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】一括コピーを防ぐオンラインストレージシステムを提供する。
【解決手段】記憶装置300に記憶された複数のデータファイルのロケーションを管理する管理サーバ100と、ネットワーク50を介して管理サーバ100との間でデータを送受信する複数のクライアント端末200とを備えるオンラインストレージシステム10を提供する。上記の管理サーバ100は、データファイルが記憶されているロケーションを示すロケーション情報を管理するロケーション管理部111と、データファイルが記憶装置300に記憶されると、ロケーション情報とデータファイルへのアクセス権限情報とを含むメタファイルを生成するメタファイル生成部112と、メタファイルを、データファイルへのアクセス権限を有するクライアント端末200に送信するクライアント通信部113とを有する。
【選択図】図2

Description

本発明は、ネットワークを介して接続された記憶装置にファイルを記憶させるオンラインストレージシステム、当該記憶装置に記憶されたデータファイルのロケーションを管理する管理サーバプログラム、及び、上記のデータファイルにアクセスするためのファイル制御プログラムに関する。
従来、ネットワーク上に設置されたストレージ管理サーバのような記憶装置にファイルを記憶させ、ネットワークを介して接続される複数のクライアント端末から記憶装置に記憶されたファイルにアクセスできるようにするオンラインストレージシステムが知られている(例えば、特許文献1及び特許文献2を参照)。
特開2007−241854号公報 特開2010−170193号公報
従来のオンラインストレージシステムにおいて、クライアント端末は、記憶装置に記憶された実体ファイルをダウンロードすることができた。したがって、ログイン名やパスワードを用いた認証処理によって実体ファイルにアクセスできるクライアント端末を制限したとしても、実体ファイルを容易に一括コピーすることができた。特に、電子商取引等のWebアプリケーションにおいて配付されたコンテンツが容易に一括コピーされて配布されると、コンテンツを供給する業者が大きな損失を被るという問題があった。
また、電子商取引等のWebアプリケーションにおいては、配付するコンテンツの閲覧期限などの閲覧条件を設定することが求められている。例えば、コンテンツの購入料金に応じてコンテンツの閲覧可能期間を切り替えたり、コンテンツを閲覧できる回数を制限したりすることにより、コンテンツの価値の低下を防ぐことが求められている。ところが、実体ファイルが配付されてしまうと閲覧制限をかけることが困難であり、実体ファイルが保存されたクライアント端末においては、いつでも、何度でも実体ファイルを閲覧することができるという問題があった。
さらに、オンラインストレージシステムが電子商取引等のWebアプリケーションと連携して、実体ファイルへのアクセス権限等を動的に変更することも困難であった。例えば、電子商取引のWebアプリケーションの運営者が、Webアプリケーションによって購入されたコンテンツファイルに対するパーミッションや閲覧期間の変更をすることはできなかった。
そこで、本発明はこれらの点を鑑みてなされたものであり、実体ファイルがクライアント端末に一括ダウンロードされることを防ぎつつ、実体ファイルへのアクセスを可能にするオンラインストレージシステムを提供することを目的とする。
上記の課題を解決するために、本発明の第1の態様においては、記憶装置に記憶された複数のデータファイルのロケーションを管理する管理サーバと、ネットワークを介して管理サーバとの間でデータを送受信する複数のクライアント端末とを備えるオンラインストレージシステムを提供する。上記の管理サーバは、データファイルが記憶されているロケーションを示すロケーション情報を管理するロケーション管理部と、データファイルが記憶装置に記憶されると、ロケーション情報とデータファイルへのアクセス権限情報とを含むメタファイルを生成するメタファイル生成部と、メタファイルを、データファイルへのアクセス権限を有するクライアント端末に送信するクライアント通信部とを有する。管理サーバは、Webアプリケーションにおいて生成されたアクセス権限情報を受信するデータ受信部をさらに有してもよい。
上記のクライアント端末は、クライアント端末の属性を示す属性情報を記憶する属性情報記憶部と、メタファイルを受信するファイル受信部と、属性情報記憶部に記憶された属性情報とメタファイルが含むアクセス権限情報とに基づいて、メタファイルに対応するデータファイルへのアクセス権限があるかどうかを判定する判定部と、データファイルへのアクセス権限があると判定部が判定すると、データファイルに対する読み出しアクセスをするファイルアクセス部とを有するオンラインストレージシステムを提供する。
一例として、上記のメタファイル生成部は、Webアプリケーションにおいて生成されたアクセス権限情報を受信するとメタファイルを更新し、クライアント通信部は、更新されたメタファイルをクライアント端末に送信する。クライアント通信部は、データファイルを記憶装置に保存する保存要求メッセージをクライアント端末から受信するとともに、データファイルを保存するロケーションを示すロケーション情報をクライアント端末に送信する。さらに、ロケーション通信部は、ロケーション情報が示すロケーションにデータファイルが保存されたことを通知する通知メッセージを受信すると、ロケーション情報を含むメタファイルをクライアント端末に送信する。
メタファイル生成部は、データファイルにアクセスできるクライアント端末に対応するアクセス可能識別情報を含むメタファイルを生成し、クライアント端末は、アクセス可能識別情報に属性情報が含まれると判定部が判定すると、メタファイルに対応するアイコンを表示部に表示させる表示制御部をさらに有してもよい。ファイルアクセス部は、データファイルの削除アクセス権限があるクライアント端末において当該データファイルに対応するメタファイルが削除されると、データファイルを記憶装置から削除する。
管理サーバは、クライアント端末に対応する暗号情報を生成する暗号情報生成部をさらに有してもよい。この場合において、メタファイル生成部は、暗号情報に対応するメタファイルを生成し、ファイル受信部は、メタファイルに対応する暗号情報を受信する。クライアント端末は、暗号情報を用いて、暗号化されたデータファイルを復号化する暗号処理部をさらに有する。また、メタファイル生成部は、データファイルの種別に対応する拡張子を有するメタファイルを生成し、クライアント端末は、メタファイルの拡張子に応じたアプリケーションソフトウェアからの要求に応じてメタファイルに対応するデータファイルを取得して、アプリケーションソフトウェアに渡すソフトウェア制御部をさらに有してもよい。
クライアント端末は、フォルダを示すアイコンを表示する表示部と、フォルダに対応する処理内容が記述された制御ファイルを記憶する制御ファイル記憶部と、フォルダにデータファイルが格納されると、データファイルに対して、制御ファイルに記述された処理内容を実行させるファイル処理部とをさらに有してもよい。ファイル処理部は、処理内容に応じた少なくとも1つのアプリケーションソフトウェアをクライアント端末に実行させる。
本発明の第2の態様においては、コンピュータに、記憶装置に記憶された複数のデータファイルのロケーションを管理させるための管理サーバプログラムであって、コンピュータに、データファイルが記憶されているロケーションを示すロケーション情報を管理するステップと、データファイルが記憶装置に記憶されると、ロケーション情報とデータファイルへのアクセス権限情報とを含むメタファイルを生成するステップと、メタファイルを、データファイルへのアクセス権限を有するクライアント端末に送信するステップとを実行させるための管理サーバプログラムを提供する。
本発明の第3の態様においては、コンピュータに、記憶装置に記憶された複数のデータファイルにアクセスさせるためのファイル制御プログラムであって、コンピュータに、データファイルに対応するメタファイルを、データファイルのロケーションを管理するデータ管理サーバから受信するステップと、メタファイルが含むアクセス権限情報と記憶媒体に記憶されたコンピュータの属性情報とに基づいて、メタファイルに対応するデータファイルへのアクセス権限があるかどうかを判定するステップと、データファイルへのアクセス権限があると判定すると、データファイルに対する読み出しアクセスをするステップとを実行させるためのファイル制御プログラムを提供する。
本発明によれば、実体ファイルをクライアント端末にキャッシュすることなく実体ファイルへのアクセスを可能にすることができるため、一括コピーを防止できるという効果を奏する。
第1の実施形態のオンラインストレージシステムの構成例を示す。 第1の実施形態の管理サーバの構成例を示す。 第1の実施形態のクライアント端末の構成例を示す。 ファイル制御アプリケーションソフトをクライアント端末にインストールする手順の一例を示す。 クライアント端末がデータファイルを記憶装置に保存する手順の一例を示す。 記憶装置に記憶されているデータファイルを読み出す手順の一例を示す。 記憶装置に記憶されているデータファイルを更新する手順の一例を示す。 記憶装置に記憶されているデータファイルを削除する手順の一例を示す。 Webアプリケーションが管理している電子商取引サイトにおいてコンテンツを売買する手順の一例を示す。 Webアプリケーションが管理しているコンテンツのデータファイルをダウンロードする手順の一例を示す。 複数のクライアント端末をグループ化する手順の一例を示す。 同じグループに属する複数のクライアント端末の間でデータファイルを共有する手順の一例を示す。 第2の実施形態に係る管理サーバの構成例を示す。 第2の実施形態に係るクライアント端末の構成例を示す。 メタファイルを用いてSSL−VPN環境をセットアップする手順の一例を示す。 第4の実施形態に係るクライアント端末の構成例を示す。 表示部に表示されるフォルダの一例を示す。 オンライン保存機能フォルダにデータファイルが格納された場合の処理手順の一例を示す。 クライアントアプリプログラムの動作フローチャートの一例を示す。
<第1の実施形態>
[オンラインストレージシステム10の基本構成]
図1は、第1の実施形態のオンラインストレージシステム10の構成例を示す。オンラインストレージシステム10は、管理サーバ100、複数のクライアント端末200(例えばクライアント端末200−1及びクライアント端末200−2)及び複数の記憶装置300(例えば記憶装置300−1及び記憶装置300−2)を備える。オンラインストレージシステム10は、Webサーバ400及びVPNサーバ500をさらに備えてもよい。
管理サーバ100、クライアント端末200、記憶装置300、Webサーバ400及びVPNサーバ500のそれぞれは、ネットワーク50を介して接続されている。ネットワーク50は、例えばインターネットである。ネットワーク50は、ローカルエリアネットワークであってもよい。
管理サーバ100は、記憶装置300に記憶された複数のデータファイルのロケーションを管理する。記憶装置300は、例えばハードディスクを有するストレージサーバである。一例として、管理サーバ100は、記憶装置300に記憶されたデータファイルのファイル名とデータファイルが記憶されているURI(Uniform Resource Identifier)とを対応づけて記憶し、クライアント端末200からの要求に応じてデータファイルが記憶されているロケーションをクライアント端末200に通知する。
クライアント端末200は、ネットワーク50を介して管理サーバ100との間でデータを送受信する。例えば、クライアント端末200はPC、スマートフォン又は携帯電話である。クライアント端末200は、管理サーバ100から指定された記憶装置300のロケーションに対して、保存するデータファイルを送信したり、管理サーバ100から通知された記憶装置300のロケーションに記憶されているデータファイルを受信したりする。
Webサーバ400は、Webアプリケーションを実行する。Webアプリケーションとは、クライアント端末200のWebブラウザを用いて機能を実行することができるアプリケーションソフトウェアである。例えば、Webアプリケーションは、クライアント端末200との間でHTTP(HyperText Transfer Protocol)によるデータの送受信をすることにより動作する電子商取引、電子掲示板、オンライントレードなどのアプリケーションソフトウェアである。
一例として、Webサーバ400は、クライアント端末200からの指示に応じて電子商取引アプリケーションを実行して、音楽ファイル、動画ファイルなどのコンテンツファイルを記憶装置300に保存する。Webサーバ400は、管理サーバ100と連携することにより、クライアント端末200からの購入要求に応じてコンテンツファイルをクライアント端末200にダウンロードさせてもよい。管理サーバ100とWebサーバ400との連携動作の詳細については後述する。
Webサーバ400は、ワークフローアプリケーションを実行して、ユーザによって作成された文書ファイルを記憶装置300に保存し、管理サーバ100と連携することにより、クライアント端末200からの要求に応じて文書ファイルを複数のクライアント端末200に順次ダウンロードさせてもよい。
VPNサーバ500は、クライアント端末200と管理サーバ100及び記憶装置300との間を接続するSSL−VPNで用いられる暗号情報を管理する。具体的には、VPNサーバ500は、クライアント端末200と管理サーバ100及び記憶装置300との間で伝送されるデータを暗号化する秘密鍵を発行する。
[管理サーバ100の構成]
図2は、管理サーバ100の構成例を示す。管理サーバ100は、制御部110、通信部120及び記憶部130を有する。記憶部130は、例えばROM及びRAMを有する。記憶部130は、CD−ROMなどの取り外し可能な記憶媒体を含んでもよい。制御部110は、例えば、記憶部130に記憶されたプログラムを実行することにより、ロケーション管理部111、メタファイル生成部112、クライアント通信部113及びデータ受信部114として機能するマイクロプロセッサである。制御部110は、ネットワーク50を介してダウンロードしたプログラムを実行してもよい。
通信部120は、ネットワーク50を介してクライアント端末200、記憶装置300、Webサーバ400及びVPNサーバ500との間でデータを送受信するための通信コントローラである。
ロケーション管理部111は、データファイルが記憶されているロケーションを示すロケーション情報を管理する。例えば、ロケーション管理部111は、記憶装置300に記憶されているデータファイルの名称と当該データファイルにアクセスするためのURIとを対応づけたロケーションテーブルを記憶部130に記憶させる。ロケーション管理部111は、新たなデータファイルが記憶装置300に格納されると、ロケーションテーブルを更新する。
メタファイル生成部112は、データファイルが記憶装置300に記憶されると、ロケーション情報とデータファイルへのアクセス権限情報とを含むメタファイルを生成する。メタファイルは、データファイルに関する情報を記述したテキストファイルの一種である。メタファイルは、URL(Uniform Resource Locator)を記述したテキストファイルであってもよい。
例えば、メタファイル生成部112は、データファイルにアクセスするためのURI、及び、当該データファイルにアクセスできるクライアント端末200を特定するためのアクセス可能識別情報をアクセス権限情報として含むXMLファイルを生成する。メタファイル生成部112は、所定の秘密鍵によりメタファイルを暗号化してもよい。メタファイルは、データファイルの種別、データファイル名、データファイルの公開期間、データファイルの登録日、データファイルの更新日、データファイルへのパーミション情報をさらに含んでもよい。
ここで、クライアント端末200を特定するためのアクセス可能識別情報とは、例えば、クライアント端末200のユーザに付与された固有のクライアントID、又は、クライアント端末200のユーザを含む複数のユーザから構成されるグループに付与された固有のグループIDである。アクセス権限情報は、データファイルの読み出し、データファイルへの書き込みのいずれのアクセスを実行できるかを示すパーミッション情報をさらに含んでもよい。アクセス権限情報は、データファイルにアクセスできる期間を示す情報を含んでもよい。
クライアント通信部113は、メタファイル生成部112が生成したメタファイルを、データファイルへのアクセス権限を有するクライアント端末200に送信する。例えば、制御部110は、データファイルに対応づけて記憶部130に記憶されているクライアントID、メールアドレス又はIPアドレスを有するクライアント端末200にメタファイルを送信する。
クライアント通信部113は、HTTP又はFTPのようなファイルを転送できる通信プロトコルを用いてメタファイルをクライアント端末200に送信してもよく、電子メールでメタファイルを送信してもよい。例えば、クライアント通信部113は、Cometアプリケーションを実装している。クライアント通信部113は、クライアント端末200からAjaxリクエストメッセージを受信するとHTTPセッションを開いた状態で待機し、メタファイル生成部112がメタファイルを生成するとクライアント端末200にメタファイルを送信することにより、管理サーバ100とクライアント端末200との間でメタファイルを同期させる。
クライアント通信部113は、メタファイル自体をクライアント端末200に送信する代わりに、メタファイルに固有のメタファイル識別情報をクライアント端末200に送信してもよい。クライアント通信部113は、メタファイル識別情報を含むメタファイル要求メッセージをクライアント端末200から受信すると、メタファイルをクライアント端末200に送信してもよい。
データ受信部114は、ネットワーク50及び通信部120を介して、他のサーバからデータを受信する。例えば、データ受信部114は、Webサーバ400からWebアプリケーションに関連する情報を受信したり、VPNサーバ500からSSL−VPNに関連する情報を受信したりする。
[クライアント端末200の構成]
図3は、クライアント端末200の構成例を示す。クライアント端末200は、制御部210、通信部220、記憶部230及び表示部240を有する。記憶部230は、例えばROM及びRAMを有する。制御部210は、例えば、記憶部230又は外部の記憶媒体に記憶されたプログラムを実行することにより、ファイル受信部211、判定部212、ファイルアクセス部213及び表示制御部214として機能するマイクロプロセッサである。通信部220は、ネットワーク50を介してクライアント端末200、記憶装置300、Webサーバ400及びVPNサーバ500との間でデータを送受信するための通信コントローラである。表示部240は、例えばディスプレイである。表示部240は、ユーザからの指示を取得するタッチパネル等の指示取得デバイスを有してもよい。
記憶部230は、クライアント端末200の属性を示す属性情報を記憶する属性情報記憶部231を有する。属性情報とは、例えば、クライアント端末200のユーザに付与された固有のクライアントID、又は、クライアント端末200のユーザを含む複数のユーザから構成されるグループに付与された固有のグループIDのように、クライアント端末200を特定するための情報である。属性情報記憶部231は、クライアント端末200に固有のMACアドレス、又は、携帯電話番号に固有のSIMカードに格納されたID番号を属性情報として記憶してもよい。
ファイル受信部211は、クライアント通信部113から送信されるメタファイルを、通信部220を介して受信する。ファイル受信部211は、受信したメタファイルを判定部212に入力する。表示制御部214は、ファイル受信部211がクライアント通信部113からメタファイルを受信すると、メタファイルに対応するアイコン画像を表示部240に表示させる。
クライアント端末200は、メタファイルを記憶部230に記憶してもよく、メタファイルに対応するメタファイル識別情報のみを記憶部230に記憶して、メタファイル識別情報を管理サーバ100に送信することにより管理サーバ100又は記憶装置300に格納されたメタファイルを参照してもよい。また、クライアント端末200は、ユーザが複数のクライアント端末200を用いてデータファイルにアクセスできるようにするべく、脱着可能なICカード等の記憶媒体にメタファイルを記憶してもよい。
判定部212は、クライアント端末200のユーザがメタファイルのアイコン画像をクリックすると、属性情報記憶部231に記憶された属性情報とメタファイルが含むアクセス権限情報とに基づいて、メタファイルに対応するデータファイルへのアクセス権限があるかどうかを判定する。例えば、判定部212は、属性情報記憶部231に記憶されている属性情報とメタファイルに含まれているクライアントID等のアクセス可能識別情報とを比較して、属性情報とアクセス可能識別情報とが一致している場合に、メタファイルに対応するデータファイルへのアクセス権限があると判断する。判定部212は、メタファイルに記述されているデータファイルへのアクセス可能期間に含まれている日時において、メタファイルに対応するデータファイルへのアクセス権限があると判断してもよい。
表示制御部214は、メタファイルに対応するデータファイルへのアクセス権限をクライアント端末200のユーザが有する場合にのみメタファイルのアイコン画像を表示してもよい。表示制御部214は、メタファイルに記述されている複数のアクセス権限に関する条件のうち、クライアント端末200が満たしている条件の数に応じて異なる態様でアイコン画像を表示してもよい。例えば、表示制御部214は、属性情報とアクセス可能識別情報とが一致しているにもかかわらず、日時がアクセス可能期間外である場合には、全ての条件が満たされていない場合と異なる色で表示する。ユーザは、アイコンの表示を見てアクセス可能期間を延長する手続をすることにより、データファイルにアクセスできるようになる。
ファイルアクセス部213は、データファイルへのアクセス権限があると判定部212が判定すると、データファイルに対する読み出しアクセスをする。例えば、ファイルアクセス部213は、メタファイルに記述されているロケーション情報が示しているURIとデータファイル名とを含むHTTPリクエストメッセージを記憶装置300に送信する。記憶装置300は、HTTPリクエストメッセージを受信すると、データファイルをクライアント端末200に送信する。ファイルアクセス部213は、FTPのような他のファイル転送プロトコルを用いてデータファイルをダウンロードしてもよい。
ファイルアクセス部213は、記憶装置300から読み出したデータファイルを記憶部230に記憶させてもよい。データファイルのコピーを防ぐために、制御部210は、メタファイルに含まれるアクセス権限情報の内容に応じて、データファイルを記憶部230に記憶させるか否かを判断してもよい。例えば、メタファイルのアクセス権限情報がコピーを禁止することを示している場合には、制御部210は、データファイルを一時的に記憶部230に格納して表示部240に表示した後に、ユーザの閲覧が終了した時点で記憶部230からデータファイルを削除してもよい。
以上の通り、本実施形態に係るオンラインストレージシステム10によれば、データファイルが記憶装置300に格納された場合に、クライアント端末200がアクセス可能なデータファイルの実体ファイルがクライアント端末200に送信されるのではなく、データファイルに対応するメタファイルがクライアント端末200に送信される。クライアント端末200には、データファイルにアクセス可能なクライアント端末200の識別情報を示すアクセス権限情報が含まれているので、クライアント端末200のユーザがメタファイルを一括して他人に送付したとしても、メタファイルを受け取った人は実体ファイルにアクセスすることができない。また、クライアント端末200は、メタファイルの内容に応じて実体ファイルを記憶部230にキャッシュさせないようにすることで、実体ファイルの一括コピーを防ぐこともできる。
[クライアント用ソフトウェアのインストール手順]
以下、通信シーケンス図を参照しながら、オンラインストレージシステム10の動作の詳細について説明する。
図4は、本実施形態に係るファイル制御アプリケーションソフト(以下、クライアントアプリ)をクライアント端末200にインストールする手順の一例を示す。クライアント端末200のユーザは、クライアントアプリをインストールして使用することで、メタファイルを介してデータファイルの実体ファイルにアクセスすることができる。
管理サーバ100は、クライアント端末200からクライアントアプリをダウンロードする要求を受信すると、クライアントアプリのダウンロードリンク先の情報を含む確認メールをクライアント端末200に送信する。確認メールは、管理サーバ100が発行したクライアント端末200に固有のクライアントIDを含んでもよい。
クライアント端末200のユーザが、確認メールに含まれているダウンロードリンクをクリックすると、クライアント端末200は、ダウンロード要求を示すメッセージを管理サーバ100に送信する。管理サーバ100は、ダウンロード要求メッセージに応じてクライアントアプリのファイル及びクライアントIDをクライアント端末200に送信する。
クライアント端末200のユーザがクライアントアプリのインストール操作をすると、制御部210はクライアントアプリを実行形式のプログラムに変換して記憶部230に記憶させる。制御部210は、クライアントアプリのプログラムを記憶部230から読み出して実行する。
クライアントアプリは、クライアント端末200に固有のMACアドレス等の個体識別情報を管理サーバ100に送信する。クライアントアプリは、クライアントIDを属性情報記憶部231に記憶してもよい。管理サーバ100は、個体識別情報をクライアントIDに対応づけて記憶部130に記憶して、クライアントアプリに対してアクティブ化メッセージを送信する。クライアントアプリはアクティブ化メッセージを受信するとアクティブ化して、クライアント端末200のユーザが使用可能な状態になる。
[データファイルの保存手順]
図5は、クライアント端末200がデータファイルを記憶装置300に保存する手順の一例を示す。クライアントアプリは、クライアント端末200のユーザが、クライアントアプリが表示する専用フォルダにデータファイルを保存すると、当該データファイルを記憶装置300に保存する指示を受けたと認識する。データファイルの保存指示を受けたクライアントアプリは、データファイルの保存を要求する保存要求メッセージを管理サーバ100に送信する。
クライアント通信部113は、保存要求メッセージをクライアント端末200から受信すると、データファイルを保存するロケーションを示すロケーション情報をクライアント端末200に送信する。クライアント端末200は、ロケーション情報を受信すると、受信したロケーション情報に対応する記憶装置300上のロケーションにデータファイルを送信する。クライアント端末200は、VPNサーバ400により割り当てられた秘密鍵で暗号化したデータファイルを送信してもよい。クライアントアプリは、データファイルが保存されたロケーションを示すロケーション情報を含む保存完了通知メッセージを記憶装置300から受信すると、管理サーバ100に対して、ロケーション情報が示すロケーションにデータファイルが保存されたことを通知するデータファイル保存通知メッセージを送信する。
管理サーバ100は、データファイル保存通知メッセージを受信すると、クライアント端末200に対応するクライアントIDを記憶部130から検索して、受信したメッセージに含まれているロケーション情報とクライアント端末200のクライアントIDとを含むメタファイルを生成する。管理サーバ100は、生成したメタファイルをクライアント端末200に送信する。
クライアント端末200がメタファイルを受信すると、クライアントアプリは、メタファイル内のアクセス可能識別情報と記憶部230に記憶されているクライアント端末200のクライアントIDとが一致しているか否かを確認する。両者が一致している場合には、クライアントアプリは、クライアント端末200の表示部240にメタファイルのアイコン画像を表示させる。両者が一致していない場合には、クライアントアプリは、クライアント端末200の表示部240にメタファイルのアイコン画像を表示させることなく、管理サーバ100にエラーメッセージを送信してもよい。クライアント端末200のユーザは、メタファイルのアイコン画像をクリックすることにより、記憶装置300に保存されているデータファイルにアクセスすることができる。
クライアントアプリは、データファイルに対応するメタファイルを受信すると、クライアント端末200からデータファイルを削除してもよい。クライアントアプリは、データファイルのアイコン画像に代えて、メタファイルのアイコン画像を表示部240に表示させてもよい。クライアントアプリがデータファイルを削除してメタファイルのアイコン画像を表示することにより、クライアント端末200の記憶部230の空き容量を大きくしつつ、ユーザは、メタファイルを介して記憶装置300に格納されているデータファイルにアクセスすることができる。
[データファイルの読み出しアクセス手順]
図6は、記憶装置300に記憶されているデータファイルを読み出す手順の一例を示す。クライアントアプリは、クライアント端末200のユーザがメタファイルをクリックしたことを検知すると、メタファイルに記述されているアクセス権限情報と属性情報記憶部231に記憶されているクライアントIDとが一致するか否かを確認する。アクセス権限情報とクライアントIDとが一致しない場合には、クライアントアプリは、例えば「データファイルにアクセスする権限がありません」などのようなエラーメッセージを表示部240に表示する。
アクセス権限情報とクライアントIDとが一致している場合には、クライアントアプリは、メタファイルに記述されているロケーション情報に基づいて、記憶装置300に対してファイル要求メッセージを送信する。クライアントアプリは、データファイルを記憶装置300からダウンロードすると、ファイル記憶部232に保存する。クライアントアプリは、データファイルをダウンロードした時点でデータファイルに対応するアイコン画像を表示させてもよく、メタファイルのアイコン画像の色や形状等の表示態様を変化させることにより、データファイルのダウンロードが終了したことをユーザに通知してもよい。
[データファイルの更新手順]
図7は、記憶装置300に記憶されているデータファイルを更新する手順の一例を示す。クライアントアプリは、管理サーバ100から受信済のメタファイルに対応するデータファイルと同一の名称のデータファイルを記憶装置300に保存する指示を受けると、記憶装置300に対してデータファイルの更新要求メッセージを送信する。具体的には、クライアントアプリは、データファイル名とデータファイルが記憶されているロケーション情報を含むメッセージを記憶装置300に送信する。
クライアントアプリは、記憶装置300からデータファイル更新完了通知メッセージを受信すると、管理サーバ100に対してデータファイルの更新通知メッセージを送信する。メタファイル生成部112は、更新通知メッセージを受信すると、当該データファイルに対応するメタファイルに更新履歴情報を追加したメタファイルを生成し、クライアント通信部113は更新後のメタファイルをクライアントアプリに送信する。
クライアントアプリは、更新後のメタファイルを受信すると、メタファイルを更新したことを表示部240に表示させる。例えば、表示部240は、メタファイルを更新したことを示すテキストメッセージを表示してもよく、メタファイルのアイコン画像の表示態様を変化させることによりメタファイルが更新されたことを表示してもよい。
[データファイルの削除手順]
図8は、記憶装置300に記憶されているデータファイルを削除する手順の一例を示す。オンラインストレージシステム10においては、データファイルの削除権限があるクライアント端末200のユーザが、当該データファイルに対応するメタファイルを削除すると、記憶装置300に格納されているデータファイルを自動的に削除する。
具体的には、クライアント端末200に表示されているメタファイルをユーザが削除すると、クライアントアプリは、メタファイルを参照して、クライアント端末200のユーザにデータファイルを削除する権限があるか否かを確認する。クライアントアプリは、クライアント端末200のユーザにデータファイルを削除する権限がない場合には、例えば「データファイルを削除する権限がありません」のようなエラー表示をさせる。
クライアント端末200のユーザにデータファイルを削除する権限がある場合には、クライアントアプリは、メタファイルに記述されているロケーション情報に基づいて、メタファイルに対応するデータファイルを削除する要求メッセージを記憶装置300に送信する。クライアントアプリは、記憶装置300からデータファイルの削除が完了した通知を受信すると、データファイルの削除が完了したことを通知する削除完了通知メッセージを管理サーバ100に送信する。
管理サーバ100は、削除完了通知メッセージを受信すると、当該データファイルの更新履歴情報を登録した上で、メタファイルの解除を指示する解除メッセージをクライアントアプリに送信する。クライアントアプリは、解除メッセージを受信するとメタファイルに対応するアイコン画像を消去して、データファイルの削除手順が完了する。
[Webアプリケーションと連携したデータファイル管理手順]
図9は、Webアプリケーションが管理している電子商取引サイトにおいてコンテンツを売買する手順の一例を示す。図10は、Webアプリケーションが管理しているコンテンツのデータファイルをダウンロードする手順の一例を示す。
まず、図9を参照して、コンテンツを売買する場合の処理手順について説明する。図9におけるクライアント端末200−1は、コンテンツを販売するユーザの端末であり、クライアント端末200−2は、コンテンツを購入するユーザの端末である。
まず、クライアント端末200−1は、販売するコンテンツのデータファイルを記憶装置300に送信する(S901)。さらに、クライアント端末200−1は、記憶装置300に送信したデータファイルにアクセスできる期間などを含む売買条件をWebサーバ400に登録する(S902)。
続いて、クライアント端末200−2において上記のコンテンツを購入する操作が行われると、クライアント端末200−2はコンテンツ購入指示をWebサーバ400に送信する(S903)。Webサーバ400は、コンテンツ購入指示を受けると、購入されたコンテンツのデータファイル名、データファイルのロケーション情報、クライアント端末200−2の個体識別情報又はクライアントID、クライアント端末200−1から受信した売買条件を管理サーバ100に送信する。管理サーバ100は、Webサーバ400から受信した情報を含むメタファイルを生成してクライアント端末200−2に送信する(S904)。
クライアント端末200−2は、メタファイルを受信するとメタファイルのアイコン画像を表示する。ユーザによりアイコン画像がクリックされると、クライアント端末200−2は、メタファイルに対応するデータファイルを記憶装置300から取得する(S905)。
以下、図10を参照して、Webアプリケーションが販売するコンテンツを表示してからクライアント端末200−2がコンテンツを購入するまでの通信シーケンスを説明する。クライアント端末200−2のユーザがWebサーバ400に格納されているWebアプリケーションにアクセスすると、Webアプリケーションは、管理サーバ100を介して、クライアント端末200−2が購入できるコンテンツに関する情報をクライアント端末200−2に送信する。例えば、Webアプリケーションが音楽ファイルを販売する電子商取引サイトで用いられる場合には、Webサーバ400は、音楽ファイルのタイトル及び価格等の情報をクライアント端末200−2に送信する。
クライアント端末200−2においては、Webサーバ400から送信された情報をWebブラウザが表示する。クライアント端末200−2のユーザが購入するコンテンツを選択して購入する指示をすると、Webブラウザは、Webサーバ400に対して購入要求を示すメッセージを送信する。Webサーバ400は、購入要求メッセージを受信すると、コンテンツを購入するクライアント端末200−2のクライアントID等のアクセス権限情報、コンテンツのデータファイル名、及び、当該データファイルが格納されているロケーションを示すロケーション情報等を含む購入情報を管理サーバ100に通知する。
管理サーバ100においては、データ受信部114が、Webサーバ400からアクセス権限情報、データファイル名及びロケーション情報を受信する。メタファイル生成部112は、Webサーバ400から受信したクライアントID及びデータファイル名に基づいて、当該データファイルに対応するメタファイルを生成して、クライアント通信部113及び通信部120を介してクライアント端末200−2に送信する。クライアント端末200−2においては、受信したメタファイルに記述されているクライアントIDが記憶部230に記憶されているクライアントIDに一致すると、購入したコンテンツに対応するアイコン画像を表示する。
ユーザがアイコン画像をクリックすると、クライアントアプリは記憶装置300に対してデータファイルを要求するメッセージを送信する。クライアントアプリは、記憶装置300から受信したデータファイルをファイル記憶部232に格納する。
Webアプリケーションは、1つのコンテンツのデータファイルを分割して、複数のロケーションに保存してもよい。この場合に、管理サーバ100は、複数のロケーション情報を記述したメタファイルを生成する。クライアントアプリは、メタファイルに記述されている複数のロケーションから複数のデータファイルを受信して、受信した複数のデータファイルをメタファイルに記述された順序で結合することにより、ユーザが購入したコンテンツに対応するデータファイルを再生してもよい。
Webアプリケーションは、アクセス権限情報を更新して管理サーバ100に送信してもよい。例えば、Webサーバ400は、既にユーザが購入済みのコンテンツのアクセス可能期間を更新する場合に、更新後のアクセス可能期間を示すアクセス権限情報を管理サーバ100に送信する。管理サーバ100は、アクセス権限情報を受信すると、アクセス可能期間が変更されたデータファイルに対応するメタファイルを更新し、クライアント通信部113は、更新されたメタファイルをクライアント端末200−2に送信する。
管理サーバ100は、Webアプリケーションのデータベースに基づいて動的に書き換えられるコンテンツ、ストリーミングサーバから配信される動画、若しくは、タイル分割された画像又は地図のように、コンテンツを管理するサーバと制御情報をやり取りすることにより再生することができるオンラインコンテンツに対応するメタファイルを生成し、クライアント端末200に送信してもよい。
クライアント端末200のユーザがオンラインコンテンツのメタファイルにアクセスすると、クライアントアプリは、メタファイルに記述されたロケーション情報に基づいて、オンラインコンテンツにアクセスすることができる。オンラインストレージシステム10においては、オンラインコンテンツのURLを記述したメタファイルを用いることにより、他のWebアプリケーションによりURLを提供することなく、ユーザがオンラインコンテンツをダウンロードしないでもオンラインコンテンツにアクセスできる。したがって、オンラインストレージシステム10によれば、DRM(Digital Rights Management)と同様にコンテンツのコピーを防止できるという効果も得ることができる。
Webアプリケーションは、管理サーバ100を介してメタファイル内のパーミッション情報を動的に書き換えることにより、ユーザによるオンラインコンテンツへのアクセス制御をすることもできる。クライアントアプリは、メタファイルがクリックされると、管理サーバ100との間で送受信するデータをSSLにより暗号化することで、不正アクセスを防ぐこともできる。
以上の通り、本実施形態のオンラインストレージシステム10を用いることにより、販売するコンテンツの実体ファイルを送受信することなく、コンテンツの販売をすることができる。さらに、本実施形態のオンラインストレージシステム10によれば、メタファイルを更新することにより、コンテンツへのアクセス条件を動的に変更することもできる。
特に、クライアント端末200が、コンテンツに対応するメタファイルのアイコン画像を表示し、ユーザがアイコン画像をクリックすればコンテンツにアクセスできるようにすることで、VPNアクセスするためのURLをVPNサーバ500がユーザに配布したり、Webサーバ400がコンテンツ一覧情報を表示したり、専用のDRMサーバを設けたりする必要がないのでサービスのコストを低減することができる。また、コンテンツに対するパーミションをユーザごとに切り替えやすくなるという効果も得られる。
Webアプリケーションは、電子商取引のアプリケーション以外のアプリケーションであってもよい。例えば、Webアプリケーションがワークフローアプリケーションである場合には、メタファイル生成部112は、複数の人が単一のデータファイルに順次アクセスできるアクセス権限情報を記述したメタファイルを生成してもよい。具体的には、データファイルを作成した人が承認を受けるべきデータファイルを記憶装置300に保存すると、メタファイル生成部112は、データファイルにアクセスして承認処理をすべき人がデータファイルにアクセスできることを示すメタファイルを動的に生成する。
メタファイル生成部112は、承認処理が進行するごとにメタファイルを更新してもよい。例えば、メタファイル生成部112は、データファイルが記憶装置300に保存されると、一人目の承認者にアクセス権限を付与したメタファイルを生成して、一人目の承認者のクライアント端末200にメタファイルを送信する。一人目の承認者がメタファイルをクリックしてデータファイルを確認して承認が終了すると、メタファイル生成部112は、二人目の承認者にアクセス権限を付与したメタファイルを生成して、二人目の承認者のクライアント端末200にメタファイルを送信する。
以上の通り、管理サーバ100がデータファイルへのアクセス権限情報を含むメタファイルを生成して、データファイルにアクセスすべき人のクライアント端末200にメタファイルを送信することにより、データファイルの実体ファイルを送受信することなく承認処理を実行することができる。
[複数のクライアント端末200によりデータファイルを共有する手順]
図11は、複数のクライアント端末200をグループ化する手順の一例を示す。例えば、クライアント端末200−1のユーザは、クライアント端末200−2を同じグループに登録することにより、クライアント端末200−1とクライアント端末200−2とが同一のデータファイルにアクセスすることができるようになる。
まず、クライアント端末200−1のユーザがクライアント端末200−2のユーザを同じグループに入れるための招待登録指示をすると、クライアントアプリは、同じグループに招待する端末を管理サーバ100に登録する。具体的には、クライアントアプリは、招待メールを送信すべきクライアント端末200−2のメールアドレス及びグループ名を含む招待要求メッセージを管理サーバ100に送信する。
管理サーバ100は、招待要求メッセージを受信すると、受信したメッセージ内のグループ名が既に記憶部130に登録されているか否かを確認する。管理サーバ100は、グループ名に対応するグループIDが既に登録されている場合には、当該グループIDとクライアント端末200−2のメールアドレスとを対応づけて記憶部130に記憶する。管理サーバ100は、グループ名に対応するグループIDが登録されていない場合には新たなグループIDを発行し、グループIDに対応づけてクライアント端末200−1のメールアドレス及びクライアント端末200−2のメールアドレスを記憶部130に記憶する。
続いて、管理サーバ100は、クライアント端末200−2に対して招待メールを送信する。招待メールには、例えば、クライアントアプリをダウンロードするためのダウンロードリンク情報が含まれている。招待メールには、クライアント端末200−1及びクライアント端末200−2を含むグループに固有のグループIDが含まれていてもよい。
クライアント端末200−2が招待メールを受信し、クライアント端末200−2のユーザがダウンロードリンクをクリックすると、クライアント端末200−2は、管理サーバ100にクライアントアプリのダウンロードを要求するメッセージを送信する。管理サーバ100は、ダウンロード要求メッセージに応じてクライアントアプリのファイル及びグループIDをクライアント端末200−2に送信する。
クライアント端末200−2のユーザがクライアントアプリをインストールすると、クライアントアプリは、グループIDをクライアント端末200−2の属性情報記憶部231に記憶させるとともに、クライアント端末200−2に固有のMACアドレス等の個体識別情報を管理サーバ100に送信する。管理サーバ100は、個体識別情報をグループIDに対応づけて記憶部130に記憶する。
続いて、メタファイル生成部112は、クライアント端末200−1及びクライアント端末200−2の間で共有するデータファイルを格納する共有ディレクトリに対応するメタファイルを生成する。例えば、メタファイル生成部112は、共有ディレクトリのロケーション情報とグループIDとを含むメタファイルを生成する。
クライアント端末200−2のクライアントアプリにおいては、メタファイルに含まれているグループIDと属性情報記憶部231に記憶されているグループIDとが一致するか否かを確認する。両者が一致している場合には、表示制御部214は、共有ディレクトリに対応するアイコン画像をクライアント端末200−2の表示部240に表示させる。
[データファイル共有の手順]
図12は、同じグループに属する複数のクライアント端末200の間でデータファイルを共有する手順の一例を示す。クライアント端末200−1のユーザがメタファイルを選択した状態で右クリックをすると、クライアントアプリは、選択されたメタファイルに対応するデータファイルを共有するクライアント端末200−2のメールアドレスを入力する画面を表示部240に表示させる。クライアントアプリは、ユーザがメールアドレスを入力すると、当該メールアドレスを含む共有要求メッセージを管理サーバ100に送信する。
管理サーバ100は、共有要求メッセージを受信すると、受信したメッセージに含まれているメールアドレスのユーザが登録されているか否かを確認する。当該ユーザが未登録である場合には、図11を参照して説明した共有者を招待する手順を実行する。当該ユーザが既に登録されているユーザ(例えばクライアント端末200−2のユーザ)である場合には、クライアント端末200−1及びクライアント端末200−2を含むグループIDを含むメタファイルを生成して、クライアント端末200−2宛に送信する。
クライアント端末200−2のクライアントアプリは、受信したメタファイルに含まれているグループIDと属性情報記憶部231に記憶されているグループIDとを比較する。両者が一致している場合には、クライアントアプリは、受信したメタファイルに対応するアイコン画像を表示部240に表示させる。クライアント端末200−2のユーザがメタファイルのアイコン画像をクリックすると、クライアント端末200−1のユーザがメタファイルのアイコン画像をクリックした場合と同様に、当該メタファイルに対応するデータファイルにアクセスすることができる。
ユーザは、共有したいデータファイルを、共有フォルダのメタファイルにドラッグ&ドロップしてもよい。クライアントアプリは、共有フォルダに対応するメタファイルにデータファイルがドラッグ&ドロップされると、データファイルを記憶装置300に送信するとともに、管理サーバ100に、データファイルを保存したロケーションを示すロケーション情報及び共有フォルダに対応するグループIDを送信する。管理サーバ100は、ロケーション情報及びグループIDを含むメタファイルを生成して、グループIDに対応するクライアント端末200−2にメタファイルを送信する。当該メタファイルを受信したクライアント端末200−2のユーザは、メタファイルをクリックすることによりデータファイルにアクセスすることができる。
オンラインストレージシステム10によれば、メタファイルを介して実体ファイルにアクセスするだけでなく、メタファイルを介してアプリケーションプログラムを実行することもできる。例えば、クライアントアプリは、メタファイルに記述されたロケーション情報等に従って電子書籍のビューワーや専用動画プレーヤーをダウンロードした上で、クライアント端末200のユーザにコンテンツの閲覧をさせることもできる。コンテンツ閲覧用のアプリケーションプログラムがファイルの保存機能を有していなければ、コンテンツの実体ファイルのコピーを防ぐこともできる。メタファイルに対応するデータファイルの閲覧に、メタファイルで指定されたアプリケーションプログラム以外のプログラムの起動を許可しないことによっても、データファイルのコピーを防ぐことができる。
[第1の実施形態の効果]
以上の通り、第1の実施形態のオンラインストレージシステム10によれば、記憶装置300に格納されたデータファイルに対応するメタファイルを介して実体ファイルにアクセスすることができるので、クライアント端末200に実体ファイルを保存する必要がない。その結果、実体ファイルが一括コピーされることなく、複数の人がデータファイルにアクセスできる。オンラインストレージシステム10の上記の特徴を活用することにより、Webアプリケーションと連携してコンテンツを売買したり、データファイルの承認処理を効率化したりすることが容易になる。
<第2の実施形態>
[SSL−VPNの暗号情報の受け渡し]
図13は、第2の実施形態に係る管理サーバ100の構成例を示す。図13に示す管理サーバ100は、暗号情報生成部116をさらに有する点で図2に示した管理サーバ100と異なり、他の点では同じである。図14は、第2の実施形態に係るクライアント端末200の構成例を示す。図14に示すクライアント端末200は、暗号処理部215をさらに有する点で図3に示したクライアント端末200と異なり、他の点では同じである。
クライアント端末200が記憶装置300との間で送受信するデータファイルの秘匿性を高めるために、クライアント端末200はデータファイルを暗号化して送受信してもよい。そこで、管理サーバ100は、暗号情報を管理するVPNサーバ500から暗号情報を取得して、クライアント端末200に送信する暗号情報を暗号情報生成部116において生成する。ここで、暗号情報とは、データを暗号化するための秘密鍵及びクライアント証明書の少なくとも1つを含む。
メタファイル生成部112は、暗号情報に対応するメタファイルを生成し、クライアント通信部113及び通信部120を介してクライアント端末200にメタファイルを送信する。クライアント端末200においては、ファイル受信部211がメタファイルを受信すると、ファイルアクセス部213は、メタファイルに対応する暗号情報をVPNサーバ500から取得する。ファイルアクセス部213は、取得した暗号情報を記憶部230に記憶させてもよい。
暗号処理部215は、VPNサーバ500から取得した暗号情報を用いて、記憶装置300に送信するデータファイルを暗号化する。暗号処理部215は、VPNサーバ500から取得した暗号情報を用いて、記憶装置300から受信するデータファイルを復号化してもよい。以上の手順により、クライアント端末200は、記憶装置300との間で、例えばSSL−VPNにより秘匿性が高いデータ通信を行うことができる。
[SSL−VPN環境のセットアップ手順]
図15は、メタファイルを用いてSSL−VPN環境をセットアップする手順の一例を示す。図15に示す管理者端末250は、管理サーバ100にクライアント端末200を登録するための端末である。管理サーバ100は、クライアント端末200−1を登録することを要求するユーザ登録要求メッセージを管理者端末250から受信すると、当該メッセージに含まれているクライアント端末200−1のメールアドレス宛に登録招待メールを送信する。
クライアント端末200−1のユーザが、登録招待メールに含まれているダウンロードリンクをクリックすると、管理サーバ100はクライアントアプリ及びクライアントIDを送信する。クライアント端末200−1のユーザがダウンロードされたクライアントアプリをインストールすると、クライアントアプリは、クライアント端末200−1の個体識別情報を管理サーバ100に送信する。
管理サーバ100は、受信した個体識別情報をVPNサーバ500に通知する。VPNサーバ500は、個体識別情報に対応するクライアント証明書と当該クライアント証明書に対応する秘密鍵等の暗号情報を生成して、暗号情報のロケーション情報を管理サーバ100に通知する。
管理サーバ100は、暗号情報のロケーション情報とクライアント端末200−1のクライアントIDを含むアクセス権限情報とを含むメタファイルを生成してクライアントアプリに送信する。クライアントアプリにおいては、受信したメタファイルに含まれるクライアントIDを属性情報記憶部231に記憶されている属性情報と比較して、両者が一致している場合にはメタファイルに対応するアイコン画像を表示する。
クライアント端末200−1のユーザがメタファイルのアイコン画像をクリックすると、クライアントアプリはメタファイルに対応する暗号情報を、メタファイルに記述されたロケーションに対して要求する。例えば、ロケーション情報がWebサーバ400のURIを示している場合は、クライアントアプリはWebサーバ400に対して暗号情報を要求する。
クライアントアプリは、暗号情報を受信するとファイル記憶部232に保存する。クライアント端末200−1は、記憶装置300との間でデータファイルの送受信をする場合には、ファイル記憶部232に保存された暗号情報を用いる。具体的には、クライアント端末200が記憶装置300にデータファイルを送信する場合には、暗号処理部215において、ファイル記憶部232に記憶された秘密鍵により送信すべきデータファイルを暗号化してから送信する。クライアント端末200は、記憶装置300からデータファイルを受信すると、暗号処理部215において復号化してからファイル記憶部232に記憶させる。
[第2の実施形態の効果]
以上の通り、本実施形態に係るオンラインストレージシステム10によれば、メタファイルを用いてSSL−VPNで用いる暗号情報をクライアント端末200に送信することができる。メタファイルに対応する暗号情報には、メタファイルに記述されたアクセス権限情報に一致するクライアントIDを有するクライアント端末200しかアクセスできないので、暗号情報をクライアント端末200に電子メールなどにより直接送信する場合に比べて安全に暗号情報を受け渡すことができる。特に、暗号情報に対応するメタファイルを、クライアントアプリによってのみ復号化できる秘密鍵で暗号化しておくことにより、さらに安全性が高まる。
<第3の実施形態>
[拡張子のエミュレーション]
クライアント端末200においてメタファイルに対応するデータファイルを最適なアプリケーションソフトウェアで処理するために、管理サーバ100は、メタファイル生成部112において、データファイルの種別に対応する拡張子を有するメタファイルを生成してもよい。例えば、メタファイル生成部112は、データファイルがJPEGファイルであれば、MetaFile1.jpgというメタファイルを生成し、データファイルがMPEGファイルであれば、MetaFile1.mpgというメタファイルを生成する。
本実施形態に係るクライアント端末200における制御部210は、メタファイルの拡張子に応じたアプリケーションソフトウェアからの要求に応じてメタファイルに対応するデータファイルを取得して、アプリケーションソフトウェアに渡すソフトウェア制御部をさらに有する。例えば、クライアント端末200のユーザが、MetaFile1.jpgをクリックすると、JPEGファイルを再生することができる画像処理アプリケーションソフトウェアが起動する。
ソフトウェア制御部は、画像処理アプリケーションソフトウェアからの要求に応じて、MetaFile1.jpgに対応するJPEGファイルを記憶装置300から取得して、画像処理アプリケーションソフトウェアに渡す。ソフトウェア制御部は、MetaFile1.jpg を開こうとした画像処理アプリケーションソフトウェアからMetaFile1.jpgがJPEGファイルではないという通知を受けることにより、MetaFile1.jpgに対応するデータファイルを記憶装置300から取得してもよい。画像処理アプリケーションソフトウェアは、ソフトウェア制御部から渡されたJPEGファイルを起動して、ユーザはJPEGファイルの編集をすることができる。
[第3の実施形態の効果]
以上の通り、本実施形態に係るオンラインストレージシステム10においては、データファイルの種別に対応する拡張子をメタファイルに付すことにより、クライアント端末200のユーザがメタファイルをクリックするだけで、自動的に最適なアプリケーションソフトを起動することができる。したがって、ユーザは、実体ファイルがクライアント端末200に格納されている場合と同様の操作により、記憶装置300に格納されている実体ファイルを開くことができる。
<第4の実施形態>
[機能別フォルダ]
図16は、第4の実施形態に係るクライアント端末200の構成例を示す。同図に示したクライアント端末200は、ファイル処理部216及び制御ファイル記憶部233をさらに有する点で図3に示したクライアント端末200と異なる。
本実施形態に係るクライアント端末200における表示部240は、機能フォルダを示すアイコンを表示する。機能フォルダとは、格納されたデータファイルに対して所定の処理を実行するフォルダである。制御ファイル記憶部233は、機能フォルダに対応する処理内容が記述された制御ファイルを記憶する。制御ファイルは、上記の実施形態において説明したメタファイルと同様に、機能フォルダへのアクセス権限情報及び機能フォルダの実体フォルダのロケーション情報を含んでもよい。
ファイル処理部216は、機能フォルダにデータファイルが格納されると、データファイルに対して、制御ファイルに記述された処理内容を実行させる。クライアント端末200のユーザは、フォルダのディレクトリを指定することによりデータファイルを機能フォルダに格納してもよく、データファイルのアイコン画像を機能フォルダのアイコン画像上にドラッグ&ドロップすることによりデータファイルを機能フォルダに格納してもよい。
図17は、本実施形態に係る表示部240に表示されるフォルダの一例を示す。同図に示すように、表示部240は、例えば、格納されたデータファイルを符号化処理するエンコーダ機能フォルダ、格納されたデータファイルを暗号化処理する暗号化機能フォルダ、格納されたデータファイルをオンラインストレージに保存するオンライン保存機能フォルダ、格納されたデータファイルを分割するとともに、分割したファイルを複数のロケーションに分散させて保存するファイル分散機能フォルダを表示する。表示部240は、OCR処理及び顔認識などの画像解析処理、PDFファイルの生成処理、データ変換処理などを行う機能フォルダを表示してもよい。
制御ファイル記憶部233は、それぞれのフォルダに対応づけて、それぞれのフォルダに入れられたデータファイルに施す処理の種類又は処理の手順を記述したテキストファイルである制御ファイルを記憶する。例えば、制御ファイル記憶部233は、エンコーダ機能フォルダに対応づけて、符号化種別や符号化パラメータが記述された制御ファイルを記憶する。制御ファイル記憶部233は、オンライン保存機能フォルダに対応づけて、データファイルを保存するロケーション情報及び保存するデータファイルの圧縮率が記述された制御ファイルを記憶する。制御ファイル記憶部233は、ファイル分散機能フォルダに対応づけて、データファイルの分割サイズ、分割数、分割後のファイルを保存するロケーション情報等が記述された制御ファイルを記憶する。
制御ファイルは、データファイルの種別、サイズ等の属性情報に応じて処理内容やパラメータを選定する判断手順の記述を含んでもよい。さらに、制御ファイルは、複数の処理を実行する順序の記述を含んでもよい。例えば、制御ファイル記憶部233は、エンコーダ/ファイル分散機能フォルダに対応づけて、符号化処理を実行した後にファイル分散処理をすること、及び、符号化処理及びファイル分散処理のそれぞれの種別やパラメータを記述した制御ファイルを記憶する。
制御ファイルは、対応する機能フォルダに格納されたファイルの世代管理又はバックアップに関する制御情報を含んでもよい。例えば、制御ファイルは、機能ファイルに格納されたファイルのバックアップファイルの生成数、バックアップファイルの格納場所、ファイルの世代管理数を含む。管理サーバ100は、制御ファイルを更新することにより、バックアップを何重にするか、あるいは、世代管理を何世代まで行うかという制御をすることができる。
ファイル処理部216は、処理内容に応じた少なくとも1つのアプリケーションソフトウェアをクライアント端末200に実行させる。具体的には、ファイル処理部216は、制御ファイルに記述されている処理内容に基づいて、機能フォルダに格納されたデータファイルを符号化したり、暗号化したり、記憶装置300に送信したりする。例えば、ファイル処理部216は、機能フォルダにデータファイルが保存されたことをクライアントソフトが検知したタイミングで制御ファイルを参照し、制御ファイルの内容に基づいて好適なアプリケーションソフトウェアを起動する。
ファイル処理部216は、機能フォルダに格納されたデータファイルが制御ファイルに記述されている処理内容に適合しない場合に、当該データファイルに適合する他の機能フォルダを表示してもよい。例えば、データファイルが音声データのファイルであるにもかかわらず、画像処理をするための機能フォルダに格納された場合には、ファイル処理部216は、音声処理をするための機能フォルダに入れることを推奨する表示をする。
ファイル処理部216は、データファイルに適した機能ファイルを自動的に選択して、データファイルに最適な処理をしてもよい。例えば、ファイル処理部216は、データファイルを圧縮する機能フォルダにデータファイルが入れられた場合に、データファイルが音声データを含む場合には音声データの圧縮に適したADPCMなどの圧縮処理をするとともに、データファイルが画像データを含む場合には画像データの圧縮に適したJPEGなどの圧縮処理をする。
ファイル処理部216は、データファイルが含む画像の解像度を検出し、画像解像度が閾値よりも大きいときにデータファイルを複数の分割ファイルに分割してもよい。ファイル処理部216は、分割したファイルを、制御ファイルに記述された複数の異なるロケーションに送信してもよい。
制御ファイル記憶部233は、外部の記憶媒体に格納された制御ファイル又はネットワーク50を介してサーバから受信した制御ファイルを記憶してもよい。例えば、クライアント端末200のユーザが機能フォルダに対応するサービスを契約すると、クライアント端末200のユーザは契約した機能に対応する制御ファイルを受領する。制御ファイル記憶部233は、ユーザの操作に応じて、ユーザが受領した制御ファイルを記憶してもよい。
制御ファイル記憶部233は、制御ファイルを更新してもよい。例えば、機能フォルダに対応するサービスを提供するWebサーバ400に格納されたWebアプリケーションが、記憶装置300の状況に応じて更新した制御ファイルをクライアント端末200に送信する。制御ファイル記憶部233は、Webサーバ400から受信した最新の制御ファイルに更新することで、記憶装置300の状況に応じた最適な処理内容を実行することができる。
例えば、Webサーバ400は、データファイルを格納する記憶装置300の空き容量が少なくなってくると、オンライン保存機能フォルダに対応する制御ファイルに記述されている圧縮率を大きな値に変更した制御ファイルを生成する。クライアント端末200は、制御ファイルに基づいて、制御ファイルに記述されている送信先である記憶装置300の状況に応じた圧縮比でデータファイルを圧縮して送信先である記憶装置300に送信する。
制御ファイル記憶部233は、制御ファイルの実体ファイルを記憶するのではなく、制御ファイルに対応するメタファイルを記憶してもよい。この場合には、ファイル処理部216は、制御ファイルのメタファイルを参照して記憶装置300等に格納されている制御ファイルにアクセスして、当該制御ファイルに記述された処理内容を実行する。
図18は、オンライン保存機能フォルダにデータファイルが格納された場合の処理手順の一例を示す。図19は、ファイル制御プログラムとして機能するクライアントアプリプログラムの動作フローチャートの一例を示す。制御部210は、記憶媒体に格納されたプログラム又はネットワーク50を介して接続されたサーバ上のプログラムを実行することにより、図19に示す処理ステップを実行する。
クライアントアプリプログラムがインストールされてアクティブ化されると、制御部210は、制御ファイルを制御ファイル記憶部233に記憶させる(S1901)。制御部210は、ユーザ操作に応じて制御ファイルを制御ファイル記憶部233に記憶させてもよく、管理サーバ100から受信した制御ファイルを制御ファイル記憶部233に記憶させてもよい。
また、クライアントアプリプログラムは、機能フォルダのアイコンを表示部240に表示させる(S1902)。例えば、制御部210は、制御ファイルに記述された処理内容に対応する機能フォルダを表示させる。具体的には、制御部210は、制御ファイルに暗号化処理の手順が記述されている場合には、暗号化機能フォルダのアイコン画像を表示させてよく、制御ファイルにオンライン保存手順が記述されている場合には、オンライン保存機能フォルダのアイコン画像を表示させてもよい。
クライアントアプリプログラムは、機能フォルダにデータファイルが格納されることを監視する(S1903)。クライアントアプリプログラムは、機能フォルダにデータファイルが格納されたことを検出すると、機能フォルダに対応する処理を実行する(S1904)。例えば、クライアントアプリプログラムは、データファイルがオンライン保存機能フォルダに格納されたことを認識すると、FTP用ソフトウェア等の通信アプリケーションソフトウェアを起動する。
通信アプリケーションソフトウェアは、データファイルを記憶装置300に送信するとともに、データファイルが保存されたロケーションを示す情報を含む送信完了通知をクライアントアプリに送信する。クライアントアプリは、管理サーバ100に対して、ロケーション情報を含むファイル保存通知を送信する。
管理サーバ100は、ファイル保存通知を受信すると、上記の実施形態で説明したメタファイルを生成してクライアントアプリに送信する。クライアントアプリは、受信したメタファイルに含まれているクライアントIDがクライアント端末200のクライアントIDに一致している場合には、メタファイルに対応するアイコン画像をオンライン保存機能フォルダ内に表示させる。
表示部240は、機能フォルダに格納されたデータファイルに対して機能フォルダに対応する処理を実行すると、データファイルに対応するアイコン画像の表示態様を変化させてもよい。例えば、表示部240は、クライアントアプリがオンライン保存機能フォルダに格納されたデータファイルを記憶装置300に送信すると、データファイルのアイコン画像を削除するとともに、データファイルのアイコン画像と異なる色、形状又は大きさを有するメタファイルのアイコン画像を表示する。
[第4の実施形態の効果]
以上の通り、本実施形態に係るプログラムによれば、ユーザがデータファイルを機能フォルダに格納するだけで、ユーザが機能を実行するために必要な設定をすることなく自動的なデータファイルに対する適切な処理をすることができる。特に、制御ファイルに処理内容や処理手順を詳細に記述することができるので、複数のプログラムを連続して実行することが可能になる。さらに、制御ファイルを更新することにより、データファイルを処理するアプリケーションソフトウェアやサービスを提供するサーバや記憶装置の状況に応じて、最適な処理を実行することもできる。
また、本実施形態に係るプログラムを用いることで、クライアント端末200のユーザはアプリケーションプログラムの有無、操作又は設定を意識することなく、管理サーバ100の管理者が、フォルダに格納されたファイルを処理するアプリケーションプログラム、処理を実行するディレクトリ、実行パレメータ、及び、実行手順を制御することができる。例えば、クライアント端末200に、データの処理に必要なアプリケーションプログラムがインストールされていない場合であっても、クライアントアプリは、制御ファイルに従ってダウンロードサイトにリダイレクトして必要なアプリケーションプログラムをインストールすることにより、フォルダに格納されたファイルに適切な処理を施すことができる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
10・・・オンラインストレージシステム、50・・・ネットワーク、100・・・管理サーバ、110・・・制御部、111・・・ロケーション管理部、112・・・メタファイル生成部、113・・・クライアント通信部、114・・・データ受信部、116・・・暗号情報生成部、120・・・通信部、130・・・記憶部、200・・・クライアント端末、210・・・制御部、211・・・ファイル受信部、212・・・判定部、213・・・ファイルアクセス部、214・・・表示制御部、215・・・暗号処理部、216・・・ファイル処理部、220・・・通信部、230・・・記憶部、231・・・属性情報記憶部、232・・・ファイル記憶部、233・・・制御ファイル記憶部、240・・・表示部、250・・・管理者端末、300・・・記憶装置、400・・・Webサーバ、500・・・VPNサーバ

Claims (12)

  1. 記憶装置に記憶された複数のデータファイルのロケーションを管理する管理サーバと、
    ネットワークを介して前記管理サーバとの間でデータを送受信する複数のクライアント端末と
    を備えるオンラインストレージシステムであって、
    前記管理サーバは、
    前記データファイルが記憶されているロケーションを示すロケーション情報を管理するロケーション管理部と、
    前記データファイルが前記記憶装置に記憶されると、前記ロケーション情報と前記データファイルへのアクセス権限情報とを含むメタファイルを生成するメタファイル生成部と、
    前記メタファイルを、前記データファイルへのアクセス権限を有する前記クライアント端末に送信するクライアント通信部と
    を有し、
    前記クライアント端末は、
    前記クライアント端末の属性を示す属性情報を記憶する属性情報記憶部と、
    前記メタファイルを受信するファイル受信部と、
    前記メタファイルが含む前記アクセス権限情報と前記属性情報とに基づいて、前記メタファイルに対応する前記データファイルへのアクセス権限があるかどうかを判定する判定部と、
    前記データファイルへのアクセス権限があると前記判定部が判定すると、前記データファイルに対する読み出しアクセスをするファイルアクセス部と
    を有するオンラインストレージシステム。
  2. 前記管理サーバは、Webアプリケーションにおいて生成された前記アクセス権限情報を受信するデータ受信部をさらに有する請求項1に記載のオンラインストレージシステム。
  3. 前記メタファイル生成部は、前記Webアプリケーションにおいて生成された前記アクセス権限情報を受信すると前記メタファイルを更新し、
    前記クライアント通信部は、更新された前記メタファイルを前記クライアント端末に送信する請求項1又は2に記載のオンラインストレージシステム。
  4. 前記クライアント通信部は、前記データファイルを前記記憶装置に保存する保存要求メッセージを前記クライアント端末から受信するとともに、前記データファイルを保存する前記ロケーションを示す前記ロケーション情報を前記クライアント端末に送信し、前記ロケーション情報が示す前記ロケーションに前記データファイルが保存されたことを通知する通知メッセージを受信すると、前記ロケーション情報を含む前記メタファイルを前記クライアント端末に送信する請求項1から3のいずれか一項に記載のオンラインストレージシステム。
  5. 前記メタファイル生成部は、前記データファイルにアクセスできる前記クライアント端末に対応するアクセス可能識別情報を含む前記メタファイルを生成し、
    前記クライアント端末は、
    前記アクセス可能識別情報に前記属性情報が含まれると前記判定部が判定すると、前記メタファイルに対応するアイコンを表示部に表示させる表示制御部をさらに有する請求項1から4のいずれか一項に記載のオンラインストレージシステム。
  6. 前記ファイルアクセス部は、前記データファイルの削除アクセス権限がある前記クライアント端末において当該データファイルに対応する前記メタファイルが削除されると、前記データファイルを前記記憶装置から削除する請求項1から5のいずれか一項に記載のオンラインストレージシステム。
  7. 前記管理サーバは、前記クライアント端末に対応する暗号情報を生成する暗号情報生成部をさらに有し、
    前記メタファイル生成部は、前記暗号情報に対応する前記メタファイルを生成し、
    前記ファイル受信部は、前記メタファイルに対応する前記暗号情報を受信し、
    前記クライアント端末は、前記暗号情報を用いて、暗号化された前記データファイルを復号化する暗号処理部をさらに有する請求項1から6のいずれか一項に記載のオンラインストレージシステム。
  8. 前記メタファイル生成部は、前記データファイルの種別に対応する拡張子を有する前記メタファイルを生成し、
    前記クライアント端末は、前記メタファイルの拡張子に応じたアプリケーションソフトウェアからの要求に応じて前記メタファイルに対応する前記データファイルを取得して、前記アプリケーションソフトウェアに渡すソフトウェア制御部をさらに有する請求項1から7のいずれか一項に記載のオンラインストレージシステム。
  9. 前記クライアント端末が、
    フォルダを示すアイコンを表示する表示部と、
    前記フォルダに対応する処理内容が記述された制御ファイルを記憶する制御ファイル記憶部と、
    前記フォルダに前記データファイルが格納されると、前記データファイルに対して、前記制御ファイルに記述された前記処理内容を実行させるファイル処理部と
    をさらに有する請求項1から8のいずれか一項に記載のオンラインストレージシステム。
  10. 前記ファイル処理部は、前記処理内容に応じた少なくとも1つのアプリケーションソフトウェアを前記クライアント端末に実行させる請求項9に記載のオンラインストレージシステム。
  11. コンピュータに、記憶装置に記憶された複数のデータファイルのロケーションを管理させるための管理サーバプログラムであって、前記コンピュータに、
    前記データファイルが記憶されているロケーションを示すロケーション情報を管理するステップと、
    前記データファイルが前記記憶装置に記憶されると、前記ロケーション情報と前記データファイルへのアクセス権限情報とを含むメタファイルを生成するステップと、
    前記メタファイルを、前記データファイルへのアクセス権限を有するクライアント端末に送信するステップと
    を実行させるための管理サーバプログラム。
  12. コンピュータに、記憶装置に記憶された複数のデータファイルにアクセスさせるためのファイル制御プログラムであって、前記コンピュータに、
    前記データファイルに対応するメタファイルを、前記データファイルのロケーションを管理するデータ管理サーバから受信するステップと、
    前記メタファイルが含む前記アクセス権限情報と記憶媒体に記憶された前記コンピュータの属性情報とに基づいて、前記メタファイルに対応する前記データファイルへのアクセス権限があるかどうかを判定するステップと、
    前記データファイルへのアクセス権限があると判定すると、前記データファイルに対する読み出しアクセスをするステップと
    を実行させるためのファイル制御プログラム。
JP2012174128A 2012-08-06 2012-08-06 オンラインストレージシステム、管理サーバプログラム及びファイル制御プログラム Pending JP2014032610A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012174128A JP2014032610A (ja) 2012-08-06 2012-08-06 オンラインストレージシステム、管理サーバプログラム及びファイル制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012174128A JP2014032610A (ja) 2012-08-06 2012-08-06 オンラインストレージシステム、管理サーバプログラム及びファイル制御プログラム

Publications (1)

Publication Number Publication Date
JP2014032610A true JP2014032610A (ja) 2014-02-20

Family

ID=50282373

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012174128A Pending JP2014032610A (ja) 2012-08-06 2012-08-06 オンラインストレージシステム、管理サーバプログラム及びファイル制御プログラム

Country Status (1)

Country Link
JP (1) JP2014032610A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015176393A (ja) * 2014-03-17 2015-10-05 日本電気株式会社 ストレージ装置、ストレージシステム、ストレージシステムの制御方法および制御プログラム
WO2018022928A1 (en) * 2016-07-28 2018-02-01 Caringo, Inc. Mounting dynamic endpoints
CN114449047A (zh) * 2022-01-28 2022-05-06 深圳灵动创新信息技术有限公司 一种文件数据的处理方法和装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015176393A (ja) * 2014-03-17 2015-10-05 日本電気株式会社 ストレージ装置、ストレージシステム、ストレージシステムの制御方法および制御プログラム
WO2018022928A1 (en) * 2016-07-28 2018-02-01 Caringo, Inc. Mounting dynamic endpoints
US10762045B2 (en) 2016-07-28 2020-09-01 Caringo, Inc. Mounting dynamic endpoints
CN114449047A (zh) * 2022-01-28 2022-05-06 深圳灵动创新信息技术有限公司 一种文件数据的处理方法和装置

Similar Documents

Publication Publication Date Title
US11716356B2 (en) Application gateway architecture with multi-level security policy and rule promulgations
US9979751B2 (en) Application gateway architecture with multi-level security policy and rule promulgations
US8005904B2 (en) Electronic business card exchange system and method
US11102206B2 (en) Methods and apparatus for establishing shared memory spaces for data access and distribution
JP2015181010A (ja) インターネットサイトにアップロードされるマルチメディアにおけるユーザプライバシを保護するシステム及び方法
US7526548B2 (en) Distributing an information image
US20170230468A1 (en) Systems and Methods for Facilitating Service Provision Between Applications
JP2013527533A (ja) コンテンツを提供するための方法および装置
US20230108366A1 (en) Systems for encryption using blockchain distributed ledgers
KR101623742B1 (ko) 파일 연관 메시지 공유 방법 및 메시지 공유 시스템
TWI230352B (en) Content delivery system and content delivery apparatus
JP2020077347A (ja) 情報処理システム、データ提供方法、および情報処理システムの製造方法
US20150007281A1 (en) Information-processing device, service-providing system, service-providing method, and computer program
US20130312112A1 (en) Licensing protected works within electronic information networks
JP2014032610A (ja) オンラインストレージシステム、管理サーバプログラム及びファイル制御プログラム
JP2005158022A (ja) ファイルのセキュリティー管理システムおよび認証サーバ、クライアント装置ならびにプログラムおよび記録媒体
EP2309390B1 (en) Data distribution system
JP2014032611A (ja) ファイル制御プログラム及びファイル制御装置
JP6194387B1 (ja) 転送装置、転送方法および転送プログラム
JP6122235B1 (ja) 画像管理サーバ、画像管理方法、記録媒体、ならびに、プログラム
JP2006209683A (ja) カプセル化サーバ
JP2018041188A (ja) アドレス管理装置、データ管理システム及びプログラム
WO2021235437A1 (ja) 通信システム、中継処理装置、情報処理方法、及びプログラム
US20230006839A1 (en) Apparatus, system, and method of providing services
JPWO2018134945A1 (ja) 情報制御プログラム、情報制御システム、及び情報制御方法