JP6511161B2 - データファイルの保護 - Google Patents

データファイルの保護 Download PDF

Info

Publication number
JP6511161B2
JP6511161B2 JP2017557316A JP2017557316A JP6511161B2 JP 6511161 B2 JP6511161 B2 JP 6511161B2 JP 2017557316 A JP2017557316 A JP 2017557316A JP 2017557316 A JP2017557316 A JP 2017557316A JP 6511161 B2 JP6511161 B2 JP 6511161B2
Authority
JP
Japan
Prior art keywords
data file
user
file
computer
storage area
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.)
Active
Application number
JP2017557316A
Other languages
English (en)
Other versions
JP2018522320A5 (ja
JP2018522320A (ja
Inventor
リン・チャンシオン
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority claimed from PCT/US2016/033334 external-priority patent/WO2016196030A1/en
Publication of JP2018522320A publication Critical patent/JP2018522320A/ja
Publication of JP2018522320A5 publication Critical patent/JP2018522320A5/ja
Application granted granted Critical
Publication of JP6511161B2 publication Critical patent/JP6511161B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/122File system administration, e.g. details of archiving or snapshots using management policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6272Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database by registering files or documents with a third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105Multiple levels of security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

[他の出願の相互参照]
本出願は、2015年6月2日に出願され名称を「A METHOD,DEVICE,AND TERMINAL EQUIPMENT FOR PROTECTING DATA FILES(データファイルを保護するための方法、デバイス、および端末機器)」とする中国特許出願第201510295401.9号の優先権を主張する。この出願は、あらゆる目的のために、参照によって本明細書に組み込まれる。
本出願は、インターネット技術の分野に関する。特に、本出願は、データフェイルを保護するための技術に関する。
自由で開かれたインターネット環境では、データの使用、格納、及び伝送の全てが漏出のリスクを冒している。従来、データは、透過的なファイル暗号化・復号化の方法によって保護される。具体的には、従来のデータ保護技術の一例として、以下が挙げられる。先ず、クライアントデバイスオペレーティングシステムがベースレベル処理を実施している間に、データファイルが暗号化処理を施される。ユーザがデータファイルを取り出すときに、オペレーティングシステムは、データファイルを復号化し、次いで、ユーザによる使用に備えてメモリに入れる。ユーザがデータファイルを保存する必要があるときに、オペレーティングシステムは、データファイルを暗号化し、磁気ディスクに書き込む。したがって、ユーザは、データファイルに対して実施される暗号化及び復号化の行為に全く気付かない。したがって、従来のやり方では、暗号化されたデータを磁気ディスクに書き込み、メモリの中のデータに対して暗号化を実施することによって、データの漏出が阻止される。しかしながら、これらの従来の技術は、メモリの中のファイルが漏出しないことを保証するものではない。
本発明の各種の実施形態が、以下の詳細な説明及び添付の図面で開示される。
データファイルを保護するためのシステムの一実施形態を示した図である。
データファイルを保護するためのプロセスの一実施形態を示したフローチャートである。
保護されたデータファイルをシェアするためのプロセスの一実施形態を示したフローチャートである。
保護されたデータファイルを使用するためのプロセスの一実施形態を示したフローチャートである。
保護されたデータファイルにアクセスするためのプロセスの一例を示したフローチャートである。
データファイルを保護するためのクライアントデバイスの一例を示した図である。
データファイルを保護するためのクライアントデバイスの一例を示した図である。
データファイルを保護するためのクライアントデバイスの一例を示した図である。
データファイル取り出しデバイスの一例を示した図である。
データファイル取り出しデバイスの一例を示した図である。
データファイルを保護するためのプログラムドコンピュータシステムの一実施形態を示した機能図である。
本発明は、プロセス、装置、システム、合成物、コンピュータ読み取り可能ストレージ媒体に実装されたコンピュータプログラム製品、並びに/又は接続先のメモリに格納された命令及び/若しくは接続先のメモリによって提供される命令を実行するように構成されたプロセッサなどのプロセッサを含む、数々の形態で実現できる。本明細書では、これらの実現形態、又は本発明がとりえるその他のあらゆる形態が、技術と称されてよい。総じて、開示されるプロセスのステップの順番は、発明の範囲内で変更されてよい。別途明記されない限り、タスクを実施するように構成されるものとして説明されるプロセッサ又はメモリなどのコンポーネントは、所定時にタスクを実施するように一時的に構成される汎用コンポーネントとして、又はタスクを実施するように製造された特殊コンポーネントとして実装されてよい。本書で使用される「プロセッサ」という用語は、コンピュータプログラム命令などのデータを処理するように構成された1つ以上のデバイス、回路、及び/又は処理コアを言う。
本発明の原理を例示した添付の図面とともに、以下で、本発明の1つ以上の実施形態の詳細な説明が提供される。本発明は、このような実施形態との関連のもとで説明されるが、いずれの実施形態にも限定されない。本発明の範囲は、特許請求の範囲によってのみ限定され、本発明は、数々の代替形態、変更形態、及び等価物を包含している。以下の説明では、本発明の完全な理解を与えるために、数々の具体的詳細が明記されている。これらの詳細は、例示を目的として提供されるものであり、本発明は、これらの詳細の一部又は全部を伴わずとも特許請求の範囲にしたがって実施されてよい。明瞭を期するために、本発明に関連する技術分野で知られる技工物は、本発明が不必要に不明瞭にならないように、詳細な説明を省略されている。
代表的な実施形態が、本書で詳細に説明される。これらの実施形態の例が、図に提示されている。以下の説明が、図に関するものである場合は、別途記されない限り、異なる図中の同じ番号は、同じ又は類似の要素を表している。以下の代表的な実施形態で説明される実装形態は、本出願との整合性を有する全ての実装形態を表しているのではなく、反対に、これらは、特許請求の範囲で詳細に説明される、本出願の幾つかの態様との整合性を有するデバイス及び方法の例に過ぎない。
本出願で使用される用語は、特定の実施形態の説明に有用であるに過ぎず、本出願を制限することを意図していない。本出願及び添付の特許請求の範囲で使用される単数形の冠詞「a」、「said(前記又は上記)」、及び「the」は、文脈中に別途明記されない限り、複数形も含むことを意図している。また、本文書で使用される用語「and / or(及び/又は)」は、1つ以上の関連要素からなるありとあらゆる組み合わせ候補を指す及びそのような組み合わせ候補を内包すると理解される。
本出願は、様々な情報を説明するために、「first(第1の)」、「second(第2の)」、「third(第3の)」などの用語を用いているが、この情報は、これらの用語によって制限されないことが理解される。これらの用語は、同じカテゴリ内の情報どうしを区別するのに役立つに過ぎない。例えば、これらの情報が本出願の範囲内にとどまる限り、第1の情報が第2の情報と呼ばれてもよい。同様に、第2の情報が第1の情報と呼ばれてもよい。文脈次第では、例えば、本書で使用される「if(もし)」という用語が、「when(〜とき)」又は「upon being confirmed(確認されると)」と解釈されてよい。
データファイルの保護の実施形態が、本書で説明される。クライアントデバイスにおけるデータファイル生成の指示を受けて、データファイルに関係付けられたセキュリティ分類が判断される。データファイルに関係付けられたセキュリティ分類は、分類済みファイルであると判断される。データファイルは、次いで、指定の仮想ストレージエリアに格納される。例えば、指定の仮想ストレージエリアは、クラウドサーバの一部である。各種の実施形態において、「クラウドサーバ」は、1つ以上のサービスを提供するために協働する1つ以上のサーバを言う。データファイルの元のストレージ場所において、スタブ(stub)ファイルが生成される。更に、クライアントデバイスから、データファイルのコピーが除去/削除される。スタブファイルは、データファイルの実際の内容ではなく、データファイルに関係付けられたビュー許可と、指定の仮想ストレージエリアにおけるデータファイルのストレージ場所とを含む。スタブファイルは、データファイル自体からのデータは何も含まないので、クライアントデバイスにおいてスタブファイルに対してユーザによって実施される動作が、クラウドサーバに格納されたデータファイルに影響を及ぼすことはない。
図1は、データファイルを保護するためのシステムの一実施形態を示した図である。この例では、システム100は、クライアントデバイス102と、ネットワーク104と、クラウドサーバ106とを含む。一部の実施形態では、ネットワーク104は、高速ネットワーク及び/又は電気通信ネットワークを含む。
クライアントデバイス102は、データファイルを生成する。クライアントデバイス102の例として、モバイル機器、スマートフォン、ラップトップコンピュータ、デスクトップコンピュータ、タブレット端末、又は任意の計算機器が挙げられる。一部の実施形態では、クライアントデバイス102は、別のクライアントデバイスからデータファイルを受信することによって、データファイルを生成する。一部の実施形態では、クライアントデバイス102は、クライアントデバイス102において受信されたメッセージからの添付としてデータファイルをダウンロードすることによって及び/又はウェブサイトからデータファイルをダウンロードすることによって、データファイルを生成する。データファイルは、任意の適切なやり方でクライアントデバイス102において生成できる。クライアントデバイス102は、受信されたデータファイルに関係付けられたセキュリティ分類を判断する。セキュリティ分類は、データファイルが分類済みファイルであることを示す。データファイルが分類済みファイルであるという判断を受けて、クライアントデバイス102は、指定の仮想ストレージエリアにデータファイルを格納するように構成される。各種の実施形態において、指定のストレージエリアは、クラウドサーバ106におけるディスク(又は固体)ストレージである。クライアントデバイス102は、ネットワーク104を通じてクラウドサーバ106にデータファイルを送信した後、データファイルに関係付けられたスタブファイルを生成し、スタブファイルのコピーを除去し、スタブライフをクライアントデバイス102におけるデータファイルの元のストレージ場所に格納する。このように、クライアントデバイス102は、ひとたびクラウドサーバ106にデータファイルをアップロードすると、データファイルのコピーをこれ以上は保持せず、データファイルに関係付けられたスタブファイルのみを保持する。クラウドサーバ106は、データファイルの格納に成功したら、指定の仮想ストレージエリアにおけるデータファイルのストレージ場所をネットワーク104を通じてクライアントデバイス102に送信するように構成される。各種の実施形態において、スタブファイルは、データファイルに関係付けられたビュー許可及びクラウドサーバ106の指定の仮想ストレージエリアにおけるデータファイルのストレージ場所を含む、データファイルに関係付けられた様々な情報を記録する。データファイルに関係付けられたビュー許可は、どの個別ユーザ及び/又はユーザ役割がデータファイルにアクセス(例えば、読み出し、書き込み、読み書き)してよいかを指定する。
データファイルにアクセスするために、クライアントデバイス102のユーザは、クライアントデバイス102において実行される仮想化された制御・管理アプリケーションを使用してスタブファイルを選択するように構成される。例えば、クライアントデバイス102のユーザは、クライアントデバイス102における仮想化された制御・管理アプリケーションを通じて、クラウドサーバ106に格納されたデータファイルのスタブファイルを閲覧することができる。クライアントデバイス102のユーザは、アクセスしようとしているデータファイルに対応するスタブファイルを選択することができる。スタブファイルをシェアするためのユーザ選択を受けて、仮想化された制御・管理アプリケーションは、クライアントデバイス102のユーザがデータファイルにアクセスする許可を有するかどうかを、選択されたスタブファイルに記録されたビュー許可とユーザの識別情報とを比較することによって判断するように構成される。例えば、もし、選択されたスタブファイルによって、ユーザの識別情報がそのスタブファイルを読み出すことを少なくとも許可されることが指定されているならば、仮想化された制御・管理アプリケーションは、アクセス行為を許可するように構成される。ユーザが、データファイルにアクセス可能であると判断された場合は、仮想アプリケーションが、クライアントデバイス102において起動/実行されてクラウドサーバ106との間に接続を確立するように構成される。クライアントデバイス102のユーザは、データファイルに対してワード処理動作を実施するなどによって、クラウドサーバ106に格納されたデータファイルにアクセスするために、クライアントデバイス102において実行される仮想アプリケーションを使用することができる。仮想アプリケーションは、クライアントデバイス102のオペレーティングシステムから分離され、これは、仮想アプリケーション内で実施される動作がクライアントデバイス102のストレージから及び/又はクライアントデバイス102のメモリから分離されることを意味する。
一部の実施形態では、クライアントデバイス102のユーザは、クライアントデバイス102において実行される仮想化された制御・管理アプリケーションを使用して、別のクライアントデバイス(図には示されていない)とデータファイルをシェアすることができる。クライアントデバイス102のユーザは、別のクライアントデバイスに関係付けられたユーザとシェアしようとしているデータファイルに対応するスタブファイルを選択することができる。スタブファイルをシェアするためのユーザ選択を受けて、仮想化された制御・管理アプリケーションは、データファイルがシェアされようとしている上記別のユーザが、そのデータファイルにアクセスする許可を有するかどうかを、選択されたスタブファイルに記録されたビュー許可と上記別のユーザの識別情報とを比較することによって判断するように構成される。例えば、もし、選択されたスタブファイルによって、ユーザの識別情報がそのスタブファイルを読み出すことを少なくとも許可されることが指定されるならば、仮想化された制御・管理アプリケーションは、シェア行為を許可するように構成される。上記別のユーザが、データファイルにアクセス可能であると判断された場合は、仮想化された制御・管理アプリケーションは、データファイルがシェアされようとしているユーザのクライアントデバイスに命令を送信するように構成される。送信された命令は、データファイルがシェアされようとしているユーザのクライアントデバイスにおいて、その別のユーザがスタブファイルを使用してクラウドサーバ106においてデータファイルにアクセスすることができるように、選択されたスタブファイルのコピーを生成するように構成される。
このように、クライアントデバイス102からのアクセスを提供しつつ、クラウドサーバ106の指定の仮想ストレージエリアに分類済みデータファイルを格納することによって、データファイルに対して実施される動作を仮想環境内に分離することができる。仮想環境の使用は、したがって、適切なアクセス許可を伴わない又はクライアントデバイス102の改ざんを通じたユーザ及び/又はプログラムによる、クライアントデバイス102におけるデータファイルへの悪意あるアクセスを阻止することができる。スタブファイルは、データファイルに対するビュー許可と、指定の仮想ストレージエリアにおけるデータファイルのストレージ場所とを記録し、しかしながら、データファイル自体のデータは何も含まないので、クライアントデバイス102に格納されたスタブファイルに対してユーザによって実施される動作が、クラウドサーバ106に格納されているデータファイルに影響を及ぼすことはない。
図2は、データファイルを保護するためのプロセスの一実施形態を示したフローチャートである。一部の実施形態では、プロセス200は、図1のシステム100において実行に移される。
202では、データファイルがクライアントデバイスによって生成されたという指示を受けて、データファイルに関係付けられたセキュリティ分類が判断される。
例えば、データファイルは、新しいファイルをコピーする、新しいファイルをダウンロードする、又は新しいファイルを作成することを通じてクライアントデバイスにおいて生成できる。
各種の実施形態において、データファイルのセキュリティ分類は、例えばそのファイルを生成したユーザなどのユーザによって設定される。一部の実施形態では、データファイルのセキュリティ分類は、そのデータファイルについての機密性等級を含む。例えば、セキュリティ分類は、レベル0、レベル1、又はレベル2に設定されてよく、各レベルは、そのデータファイルに関わる異なる機密性等級を表す。例えば、レベル0は、ユーザがそのデータファイルのためにセキュリティ対策を用いる必要がないことを示し、レベル1は、ユーザがそのデータファイルのためにセキュリティ対策を用いる必要があることを示す。別の例では、レベル0は、ユーザがそのデータファイルのためにセキュリティ対策を用いる必要がないことを示し、レベル1は、ユーザがそのデータファイルのためにクライアントデバイス上ではセキュリティ対策を用いる必要があることを示し、レベル2は、ユーザがそのデータファイルのためにクライアントデバイス上で及びクラウドサーバ上でセキュリティ対策を用いる必要があることを示す。
一部の実施形態では、先ず、データファイルの内容情報が、そのデータファイルに関係付けられたセキュリティ分類を判断するために判断される。例えば、データファイルの内容情報は、第1の既定の条件に突き合わせでき、データファイルのセキュリティ分類は、この第1の突き合わせ結果にしたがって判断される。例えば、第1の既定の条件は、「暗号化された」、「私的な」、又は「非公開の」などの複数のキーフレーズを含んでいてよい。システムが、データファイルの内容情報が「暗号化された」又は「私的な」などの内容を含むことを検出したときは、第1の突き合わせ結果にしたがったデータファイルのセキュリティ分類は、レベル1であると判断でき、これは、ユーザがデータファイルのためにセキュリティ対策をとる必要があることを示す。もし、内容情報が、上述されたキーフレーズを含まないならば、第1の突き合わせ結果にしたがったデータの分類レベルは、レベル0であると判断でき、これは、ユーザがデータファイルのためにセキュリティ対策をとる必要がないことを示す。第2の例では、データファイルのファイル名が、第2の既定の条件と突き合わせでき、データファイルのセキュリティ分類は、この第2の突き合わせ結果にしたがって判断される。例えば、第2の既定の条件は、「秘密の」又は「暗号化された」などの複数のキーフレーズを含んでいてよい。もし、システムが、データファイルのファイル名が「秘密の」又は「暗号化された」などの内容を含むことを検出したならば、第1の突き合わせ結果にしたがったデータファイルのセキュリティ分類は、レベル1であると判断でき、これは、ユーザがデータファイルのためにセキュリティ対策をとる必要があることを示す。もし、ファイル名が、上記のキーフレーズを含まないならば、第2の突き合わせ結果にしたがったデータの分類レベルをレベル0であると判断することが可能であり、これは、ユーザがデータファイルのためにセキュリティ対策をとる必要がないことを示す。
204では、データファイルに関係付けられたセキュリティ分類が、分類済みファイルを含むことが判断される。
データファイルに関係付けられたセキュリティ分類は、上述された技術などの技術に基づいて判断され、セキュリティ分類に基づいて、データファイルが分類済みファイルであることが判断される。
データファイルが、非分類済みファイル(例えば、セキュリティ対策を必要としないファイル)であると判断された場合は、そのデータファイルは、通常通りに格納できる及び/又は通常通りにユーザに提供できる。非分類済みファイルの格納及び/又は使用は、これ以上詳しく説明されない。
206では、データファイルは、指定の仮想ストレージエリアに格納される。
分類済みファイルであると判断されたデータファイルは、指定の仮想ストレージエリアに格納される。一部の実施形態では、仮想ストレージエリアは、クライアントデバイスの磁気ディスク上にある、セキュリティ対策を必要とするデータファイル(例えば、分類済みファイル)を格納するための特定の磁気ディスクアレイ区域であってよい。ユーザが、仮想ストレージエリアに格納されているデータファイルにアクセスする必要があるときは、クライアントデバイスオペレーティングシステムから分離された(ストレージ分離やメモリ分離なども含んでいてよい)仮想アプリケーションが、クライアントデバイスにおいて起動され、クライアントデバイスの仮想ストレージエリアに格納されたデータファイルは、この仮想アプリケーションを通じてアクセスできる。
一部の実施形態では、仮想ストレージエリアは、(例えば、リモート)クラウドサーバの磁気ディスク上にある、セキュリティ対策を必要とするデータファイル(例えば、分類済みファイル)を格納するための特定の磁気ディスクアレイ区域であってよい。ユーザのクライアントデバイスが、データファイルを格納することができない又はデータファイルのためにセキュリティ対策をとることができないときは、クライアントデバイスオペレーティングシステムから分離された(ストレージ分離やメモリ分離なども含んでいてよい)仮想アプリケーションが、クライアントデバイスにおいて起動され、クライアントデバイスの仮想ストレージエリアに格納されたデータファイルは、この仮想アプリケーションを通じてアクセスできる。したがって、クラウドサーバ上で仮想ストレージエリアに格納されたデータファイルに対して実施されるあらゆる動作を仮想環境内に分離し、そのデータファイルの漏出を阻止することが可能である。
208では、データファイルの元のストレージ場所において、スタブファイルが生成され、該スタブファイルは、データファイルに関係付けられたビュー許可と、指定の仮想ストレージエリアにおけるデータファイルのストレージ場所とを含む。
データファイルは、指定の仮想ストレージエリアにおけるストレージ場所に格納される前に、(例えば、クライアントデバイスに関係付けられたストレージにおける)元のストレージ場所に格納された。各種の実施形態において、データファイルがひとたび指定の仮想ストレージエリアに格納されると、そのデータファイルのコピーが元のストレージ場所から削除され、その代わりに、スタブファイルが元のストレージ場所に格納される。各種の実施形態において、スタブファイルは、データファイルに関係付けられた(1つ又は複数の)ビュー許可と、指定の仮想ストレージエリアにおけるデータファイルのストレージ場所とを記録する。各種の実施形態において、データファイルに関係付けられた(1つ又は複数の)ビュー許可は、データファイルへのアクセス(例えば、読み出し、書き込み、読み書き)を許可される具体的なユーザ及び/又はユーザ役割(例えば、管理者ユーザ、ゲストユーザ、特定のユーザグループのゲスト)を指定する。
各種の実施形態において、ユーザがクライアントデバイスにおいてスタブファイルを選択するときに、この選択しているユーザがビュー許可を有するかどうかを判断するために、データファイルの元のストレージ場所に格納されたスタブファイルが、クライアントデバイス(の例えばオペレーティングシステム)によって読み出される。データファイルは、選択しているユーザがデータファイルにアクセスするビュー許可を有すると判断された場合にのみ、指定の仮想ストレージエリアにおけるストレージ場所から取り出されてよい。その際に、データファイルは、指定の仮想ストレージエリアにおけるストレージ位置からビューされる。以下で更に詳しく説明されるように、指定の仮想ストレージシステムからデータファイルにアクセスすることは、(例えばクラウドサーバの)指定の仮想ストレージエリアにおけるデータファイルへのアクセスを提供する仮想化された環境を走らせることを含む。しかしながら、もし、選択しているユーザがビュー許可を有さないならば、その選択しているユーザは、指定の仮想ストレージエリアの中のデータファイルにアクセスすることを拒絶される。
図3は、保護されたデータファイルをシェアするためのプロセスの一実施形態を示したフローチャートである。一部の実施形態では、プロセス300は、図1のシステム100において実行に移される。
302では、第1のユーザから、第2のユーザとデータファイルをシェアするための第1の命令が受信される。
一部の実施形態では、第1のユーザは、クライアントデバイスアプリケーション又はスタブファイルシェアリングキーを使用し、指定の別のユーザとのスタブファイルのシェアリングを開始させることによって、別のユーザとデータファイルをシェアすることができる。一部の実施形態では、シェアされようとしているデータファイルは、既にクラウドサーバにアップロードされており、データファイルに対応するスタブファイルのみが、別のユーザとデータファイルをシェアすることを希望しているユーザのクライアントデバイスに格納されている。
304では、第2のユーザに関係付けられたユーザ情報が判断される。一部の実施形態では、ユーザ情報は、クライアントアプリケーションにおける別のユーザのアカウント番号を含んでいてよい、又は別のユーザがデータファイルを受信することができるe−mailアドレスを含んでいてよい。要するに、本出願は、データファイルがシェアできるユーザ情報に含まれるアドレスに関して制約を課さない。必要なのは、別のユーザがデータファイルの受信を可能にされることのみである。
306では、第2のユーザがデータファイルにアクセスする許可を有するかどうかが、第2のユーザに関係付けられたユーザ情報に少なくとも部分的に基づいて判断される。第2のユーザが、データファイルにアクセスする許可を有すると判断された場合は、308に制御が移される。そうではなく、第2のユーザが、データファイルにアクセスする許可を有さないと判断された場合は、第2のユーザは、データファイルにアクセスすることを拒絶され(例えば、データファイルがシェアできないというメッセージが第2のユーザに送信され)、プロセス300は、終了する。
第2のユーザに関係付けられたユーザ情報は、第2のユーザがデータファイルにアクセスする許可を有するかどうかを判断するために、データファイルのスタブファイルに含まれる、データファイルに関係付けられたビュー許可と比較される。例えば、第2のユーザに関係付けられたユーザ情報は、第2のユーザに関係付けられた識別情報及び/又は第2のユーザに関係付けられた役割を含むことができる。
308では、データファイルは、クラウドサーバの指定の仮想ストレージエリアにアップロード及び格納される。
一部の実施形態では、もし、データファイルのコピーが、クラウドサーバの指定の仮想ストレージエリアに(例えばバックアップストレージのために)既にアップロード及び格納されていないならば、データファイルのコピーが、クラウドサーバの指定の仮想ストレージエリアにアップロードされる。例えば、第2のユーザとデータファイルをシェアすることを希望している第1のユーザは、クライアントデバイスアプリケーション又はスタブファイルアップロードキーを使用して、クラウドサーバにデータファイルをアップロードしてよい。一部の実施形態では、クライアントアプリケーションは、クライアントデバイスにインストールされた仮想化された制御・管理ソフトウェアであってよい。
310では、第2のユーザに関係付けられたクライアントデバイスに、第2の命令が送信され、該第2の命令は、第2のユーザに関係付けられたクライアントデバイスにおいて、データファイルに対応するスタブファイルを生成するように構成される。
一部の実施形態では、第2のユーザに関係付けられた識別情報が、第2のユーザに関係付けられたユーザ情報から判断される。第2のユーザが、対応するクライアントデバイスを通じて第2の命令を受信した後、該第2の命令に基づいて、第2のユーザのクライアントデバイス上で、データファイルのためのスタブファイルが生成される。例えば、生成されたスタブファイルのコピーは、第2のユーザのクライアントデバイスにおいてデータファイルが格納されただろう元の場所に格納される。第2のユーザのクライアントデバイスは、次いで、クラウドサーバの指定の仮想ストレージエリアからデータファイルを取得するためのベースとしてスタブファイルを使用することができる。上述のように、各種の実施形態において、スタブファイルは、データファイルに関係付けられた(1つ又は複数の)ビュー許可と、指定の仮想ストレージエリアにおけるデータファイルのストレージ場所とを記録する。
プロセス300で説明されたように、データファイルをシェアする必要があるときは、第2の命令が、ユーザ情報にしたがって第2のユーザに送信される。第2のユーザが、それらのクライアントデバイスを通じてデータファイルの受信を確認した後、第2のユーザのクライアントデバイス上で、データファイルスタブファイルが生成される。したがって、機密性が維持される必要があるデータファイルのシェアリングは、スタブファイルをシェアすることによって仮想的にシェアされる。データファイルの下層データは、第2のユーザに送信されず、シェアされているスタブファイルは、仮想ストレージエリアにおけるデータファイルのストレージ場所及びビュー許可を格納しているに過ぎず、データファイル自体のいかなるデータ情報も含まないので、第2のユーザによってそのスタブファイルのコピーに対して実施される動作が、データファイルに影響を及ぼすことはない。これは、シェアリングプロセスでデータファイルから機密情報が漏出しないことを保証する。
図4は、保護されたデータファイルを使用するためのプロセスの一実施形態を示したフローチャートである。一部の実施形態では、プロセス400は、図1のシステム100において実行に移される。
402では、スタブファイルに関係付けられたユーザ選択が、クライアントデバイスにおいて受信される。
スタブファイルに関係付けられたユーザ選択が、クライアントデバイスにおいて受信される。各種の実施形態において、スタブファイルは、クラウドサーバの指定の仮想ストレージエリアに格納されたデータファイルに対応し、図2のプロセス200又は図3のプロセス300などのプロセスに基づいて生成される。例えば、スタブファイルは、クライアントデバイスにおいて実行されるファイルブラウザアプリケーションに表示された。一部の実施形態では、スタブファイルは、クラウドサーバの指定の仮想ストレージエリアの代わりに、関係付けられているデータファイルがもしクライアントデバイスにローカルに格納されたとしたら表示されただろう方式と同じ方式でファイルブラウザアプリケーションに表示される。
一部の実施形態では、クライアントデバイスにインストールされたクライアントアプリケーションが、スタブファイル関連のクリックイベントを監視するために使用されてよい。一部の実施形態では、ユーザは、自身の認証情報を使用して既にクライアントアプリケーションにログインしている。一部の実施形態では、クリックイベントは、スタブファイルに対するダブルクリックイベントであることができる、又は提示されたメニュー上に若しくはファイルブラウザアプリケーション上にスタブファイルが表示されているときのそのスタブファイルに対するクリックイベントであってよい。一部の実施形態では、クライアントアプリケーションは、スタブファイルを記録してよく、したがって、クリックされたファイルがスタブファイルであるか又は通常のデータファイルであるかを判断することができる。
404では、ユーザ選択に関係付けられたユーザが、スタブファイルに関係付けられたデータファイルにアクセスする許可を有するかどうかが、スタブファイルに含まれる、データファイルに関係付けられたビュー許可に少なくとも部分的に基づいて判断される。ユーザ選択に関係付けられたユーザが、データファイルにアクセスする許可を有する場合は、406に制御が移される。そうではなく、ユーザ選択に関係付けられたユーザが、データファイルにアクセスする許可を有さない場合は、ユーザは、データファイルにアクセスすることを拒絶され、プロセス400は、終了する。
上述のように、スタブファイルは、対応するデータファイルのビュー許可と、クラウドサーバの指定の仮想ストレージエリアにおけるデータファイルのストレージ場所とを記録する。スタブファイルの選択を行ったユーザに関係付けられたユーザ情報は、その選択に関係付けられたユーザがデータファイルのビュー許可を有するユーザであるかどうかを判断するために、スタブファイルに含まれるビュー許可と比較される。
406では、データファイルに対応する仮想アプリケーションが、クライアントデバイスにおいて起動される。
408では、指定の仮想ストレージエリアにおけるデータファイルへのアクセスが、仮想アプリケーションを使用して提供される。
各種の実施形態において、仮想アプリケーションは、クライアントデバイスにインストールされた仮想化された制御・管理アプリケーションである。各種の実施形態において、仮想アプリケーションは、クライアントデバイスのオペレーティングシステムから分離される。各種の実施形態において、オペレーティングシステムからの仮想アプリケーションの分離は、オペレーティングシステムからのストレージ分離を含んでいてよく、また、オペレーティングシステムからのメモリ分離も含んでいてよい。したがって、仮想アプリケーションは、データファイルに対してユーザによって実施されるあらゆる動作が、仮想アプリケーションによって提供される仮想環境内に分離されることを保証し、それによって、仮想アプリケーションへのアクセスを与えられていない悪意あるユーザが、仮想アプリケーション内からデータリソースを得ることを阻止することができる。一部の実施形態では、仮想アプリケーションを通じたデータファイルへのユーザアクセスは、例えば、通常の読み出し、編集、及びクリップボードの使用を含んでいてよい。一部の実施形態では、データファイルに対してユーザによって実施される動作は、スタブファイルが格納されるクライアントデバイス上ではなく、データファイルが格納されるクラウドサーバで実行される。各種の実施形態において、仮想アプリケーションは、スタブファイルに含まれるデータファイルのストレージ場所を使用して、クラウドサーバの指定の仮想ストレージエリアに格納されたデータファイルを見つけるように構成される。下記の図5は、クラウドサーバの指定の仮想ストレージエリアに格納されたデータファイルにアクセスするために仮想アプリケーションを使用する一例を示している。
図5は、保護されたデータファイルにアクセスするためのプロセスの一例を示したフローチャートである。一部の実施形態では、プロセス500は、図1のシステム100において実行に移される。
各種の実施形態において、(例えば分類済み)データファイルに対応するスタブファイルが、クライアントデバイス上に格納される一方で、データファイルは、クラウドサーバ上の指定の仮想ストレージエリアに格納される。プロセス500は、(上記の図4のプロセス400で説明されたように、)クライアントデバイスにおいてスタブファイルが選択された後に、仮想アプリケーションを使用してクラウドサーバ上の指定の仮想ストレージエリアからデータファイルを得るためのプロセスの一例である。
502では、クライアントデバイスが、データファイルに関係付けられたスタブファイルに含まれる情報に少なくとも部分的に基づいて、データファイルが格納されるクラウドサーバに接続するためのリモートデスクトッププロトコル(RDP)コンポーネントを起動させる。
(例えば、上記の図4のプロセス400などのプロセスを使用して、)ユーザがクライアントデバイスにおいてスタブファイルを選択したことが検出された後、クライアントデバイスは、スタブファイルに記録された情報にしたがって、リモートデスクトッププロトコル(RDP)コンポーネントを開始させる。RDPコンポーネントは、データファイルがアクセスされるクラウドサーバにおいてデータファイルにアクセスするために使用される仮想アプリケーションの一例である。RDPコンポーネントは、データファイルが格納されるクラウドサーバに接続するために使用される。
504では、クライアントデバイスは、RDPコンポーネントを通じて、スタブファイルに含まれる情報をクラウドサーバに伝送する。
一部の実施形態では、スタブファイルに記録されたデータ情報は、全て、クライアントアプリケーションによって暗号化されている。暗号化されたデータアプリケーションは、例えば、クラウドサーバの指定の仮想ストレージエリアにおけるデータファイルのストレージ場所、データファイルに対するユーザ許可、データファイルシェアリング手続き、及びデータファイルの使用に関する過去の記録のうちの、1つ以上を含む、スタブファイルに対応するデータファイルに関係付けられた情報を記録する。一部の実施形態では、クライアントデバイスからクラウドサーバに伝送されるスタブファイルに含まれる情報は、例えば、データファイルが格納されるクラウドサーバの指定の仮想ストレージエリアにおけるストレージ場所、クライアントアプリケーションユーザ許可、ユーザが検証する必要がある情報、及び開かれようとしているデータファイルのための、サーバ上の仮想ストレージ経路のうちの、1つ以上を含む。
506では、伝送された情報を認証した後、クラウドサーバは、クライアントデバイス上でリモート仮想化プログラムを開始させ、スタブファイルに含まれる指定の仮想ストレージエリアストレージ場所にしたがってクラウドサーバ上でデータファイルを開く。
508では、クラウドサーバは、ドキュメントエディタプログラムをクライアントデバイス上へマッピングする。
一部の実施形態では、クラウドサーバは、ドキュメントエディタプログラム(例えばMicrosoft Word)を使用して新しい編集可能ファイルを確立し、次いで、該編集可能ファイルのための可視ウィンドウ全体をクライアントデバイス上へ伝送してよい。リモートドキュメントエディタは、こうして、クライアントデバイス上へマッピングできる。一部の実施形態では、クライアントデバイス上へのドキュメントエディタのマッピングは、ドキュメントエディタのユーザインターフェースを、クライアントデバイスに提示されるように送信することを含む。
510では、クライアントデバイスは、クラウドサーバ上に格納されたデータファイルに対して動作を実施するために、ドキュメントエディタプログラムを使用する。
一部の実施形態では、クラウドサーバによってクライアントデバイス上へマッピングされるドキュメントエディタプログラムを使用してデータファイルに対して実施するためにユーザからクライアントデバイスにおいて受信される動作は、例えば、データファイル内容を見る又は編集すること、及びデータファイルをコピーすることを含んでいてよい。ドキュメントエディタプログラムユーザインターフェースを通じてクライアントデバイスにおいて実施されるユーザ動作は、クラウドサーバに送信され、次いで、クラウドサーバにおいてデータファイルに対して実行される。本出願は、データファイルに対する具体的な動作についていかなる制約も課さない。
第1の例では、第1のユーザが、(例えば図3のプロセス300などのプロセスを使用して)第2のユーザと(例えば分類済みデータファイルを)シェアした後、第2のユーザは、自身のクライアントデバイスにおいて、データファイル自体ではなくスタブファイルのみを受信する。第2のユーザは、クラウドサーバからデータファイルを得るためのベースとしてスタブファイルを使用する必要があるときに、第2のユーザのクライアントデバイスに格納されたスタブファイルを選択することができ、図4のプロセス400及び図5のプロセス500などのプロセスが、クラウドサーバの指定の仮想ストレージエリアに格納されたデータファイルへのアクセスをユーザに提供するために使用できる。
第2の例では、もし、クライアントデバイス磁気ディスクが、限られたストレージスペースを有するゆえに又は仮想ストレージエリアをセットアップされていないゆえに、データファイルが、クラウドサーバの指定の仮想ストレージエリアに格納されるならば、ユーザが、スタブファイルに基づいてクラウドサーバからデータファイルを得る必要があるときに、図4のプロセス400及び図5のプロセス500などのプロセスが、クラウドサーバの仮想エリアからデータファイルへのアクセスをクライアントデバイスのユーザに提供するために使用できる。
第3の例では、ユーザが、異なるクライアントデバイスを通じてクラウドサーバからデータファイルに対して動作を実施する必要があるときに、図4のプロセス400及び図5のプロセス500が、データファイルにリモートからアクセスを提供するために使用できる。例えば、クライアントデバイスA上のユーザが、データファイルのためのスタブファイルを生成し、該データファイルをクライアントデバイスAの仮想エリアに格納する。ユーザが、スタブファイルをクライアントデバイスAからクライアントデバイスBに送信し、且つクライアントデバイスAが、データファイルをクラウドサーバにアップロードした後、ユーザは、もし、クライアントデバイスBからデータファイルを取り出す必要があるならば、図4のプロセス400及び図5のプロセス500を使用して、クラウドサーバからデータファイルに対して動作を実施することができる。
Citrix XenApp及びその他の類似のアプリケーションなどのアプリケーションは、仮想化コストが極めて高いことがある。したがって、上述のように、本出願は、例えば、RDPをベースにしたアプリケーションによる仮想化スキームを用いることによって、Windowsオペレーティングシステムを使用することができる。RDP制御コンポーネント、メッセージフック、及びウィンドウクリップ技術を使用することによって、リモートアプリケーション仮想化技術が実現でき、そうして、クライアントデバイス自身のオペレーティングシステムへの依存を回避し、クラウドサーバが任意のWindowsオペレーティングシステムを用いることを可能にし、これは、データファイルのユーザにとって、より柔軟性がある。
以下の例は、上述された実施形態に基づく。データファイルが、ユーザによる動作を経るときに、クライアントデバイスにインストールされたクライアントアプリケーションが、データファイルに対してユーザによって実施される動作を監視するために使用されてもよい。一部の実施形態では、データファイルに対してユーザによって実施される動作は、クライアントデバイス上で実施されてよく、又はクラウドサーバからクライアントデバイス上へマッピングされたドキュメントエディタを通じてデータファイルに対してユーザによって実施されてよく、それによって、ユーザによって実施されるデータファイルを開く行為、動作させる行為、流れさせる行為、及びその他のあらゆるデータファイル関連行為の効果的な監視と管理とを可能にしてよい。
図6は、データファイルを保護するためのクライアントデバイスの一例を示した図である。この例に示されるように、クライアントデバイスは、プロセッサと、内部バスと、ネットワークポートと、内部メモリと、不揮発性メモリとを含む。実際は、クライアントデバイスは、ビジネスサービスを実施するために必要とされるその他のハードウェアも含んでいてよい。プロセッサは、対応するコンピュータプログラムを不揮発性メモリから内部メモリへ取得して実行することができる。データファイル保護デバイスは、論理層内に形成される。本出願は、例えば論理デバイス、又はソフトウェアとハードウェアとの組み合わせなどの、ソフトウェア実装形態以外のその他の実装形態を排除しない。要するに、上述のようなプロセスを実行する主体は、各種の論理ユニットに限定される必要はなく、ハードウェア、ソフトウェア、又は両者の組み合わせであることができる。
図7は、データファイルを保護するためのクライアントデバイスの一例を示した図である。この例では、デバイス700は、第1の判断モジュール71と、ストレージモジュール72と、スタブ生成モジュール73とを含む。
モジュール及びユニットは、1つ以上のプロセッサ上で実行されるソフトウェアコンポーネントとして、プログラマブル論理デバイスなどのハードウェアとして、及び/又は特殊用途向け集積回路として実装できる。一部の実施形態では、設計された要素は、本発明の実施形態で説明される方法を(パソコン、サーバ、ネットワーク機器等などの)コンピュータデバイスに実行させるための幾つかの命令を含み且つ(光ディスク、フラッシュストレージデバイス、モバイルハードディスク等などの)不揮発性のストレージ媒体に格納できるソフトウェア製品の形態で具現化できる。これらのモジュール及びユニットは、1つのデバイス上に実装されてよい、又は複数のデバイスに分散されてよい。
第1の判断モジュール71は、クライアントデバイス上でのデータファイルの生成を受けて、データファイルのセキュリティ分類と、データファイルの元のストレージ場所とを判断するように構成される。
ストレージモジュール72は、第1の判断モジュールによって判断されたセキュリティ分類が、データファイルが分類済みファイルであることを示す場合に、データファイルを指定の仮想ストレージエリアに格納するように構成される。
スタブ生成モジュール73は、第1の判断モジュール71によって判断された元のストレージ場所においてスタブファイルを生成するように構成される。スタブファイルは、データファイルに対するビュー許可と、指定の仮想ストレージエリアにおけるデータファイルのストレージ場所とを記録するように構成される。
図8は、データファイルを保護するためのクライアントデバイスの一例を示した図である。一部の実施形態では、デバイス800は、図7のデバイス700の実装形態の一例である。デバイス800の例では、デバイス700の第1の判断モジュール71は、第1の判断ユニット711と、第1の突き合わせユニット712と、第2の判断ユニット713と、第2の突き合わせユニット714とを含む。デバイス800は、更に、監視モジュール78と、ストレージモジュール72と、第2の判断モジュール74と、送信モジュール75と、第3の判断モジュール76と、アップロードモジュール77と、スタブ生成モジュール73とを含む。
第1の判断ユニット711は、データファイルの内容情報を判断するように構成される。
一部の実施形態では、第1の突き合わせユニット712は、第1の判断ユニット711によって判断された内容情報を第1の既定の条件と突き合わせ、第1の突き合わせ結果にしたがってデータファイルのセキュリティ分類を判断するように構成される。
一部の実施形態では、第2の判断ユニット713は、データファイルのファイル名を判断するように構成される。
第2の突き合わせユニット714は、第2の判断ユニット713によって判断されたファイル名を第2の既定の条件と突き合わせ、第2の突き合わせ結果にしたがってデータファイルのセキュリティ分類を判断するように構成される。
第2の判断モジュール74は、第1のユーザが、ストレージモジュール72によって格納されたデータファイルを第1のユーザによって指定された第2のユーザのクライアントデバイスとシェアすることを選択したことを示す、第1の命令の検出を受けて、第2のユーザについてのユーザ情報を判断するように構成される。
送信モジュール75は、第2の判断モジュール74によって判断されたユーザ情報を、データファイルを受信するように第2のユーザに指示するための第2の命令を第2のユーザに送信するためのベースとして使用するように構成される。第2のユーザが、対応するクライアントデバイスを通じてデータファイルを受信した後、一部の実施形態では、送信モジュール75が、第2のユーザのクライアントデバイス上でデータファイルのためのスタブファイルを生成するように構成される。
第3の判断モジュール76は、第2の判断モジュール74によって判断されたユーザ情報を、第2のユーザがデータファイルに関してビュー許可を有するかどうかを判断するためのベースとして使用するように構成される。
アップロードモジュール77は、第2のユーザがデータファイルに関してビュー許可を有するという判断に関係付けられた指示を、第3の判断モジュール76から受信するように構成される。指示を受けて、アップロードモジュール77は、結果として第2のユーザが、クラウドサーバからデータファイルを得るためのベースとしてスタブファイルを使用できるように、データファイルをクラウドサーバにアップロードして格納するように構成される。
監視モジュール78は、データファイルに対してユーザによって実施されるユーザ動作を監視するために、クライアントデバイスにインストールされたクライアントアプリケーションを使用するように構成される。
図9は、データファイル取り出しデバイスの一例を示した図である。この例では、デバイス900は、第4の判断モジュール91と、開始モジュール92と、アクセスモジュール93とを含む。
第4の判断モジュール91は、スタブファイルによって記録されたビュー許可にしたがって、スタブファイルの選択に関係付けられたユーザがデータファイルにアクセスする許可を有するかどうかを判断するように構成される。
第4の判断モジュール91が、ユーザがデータファイルにアクセスする許可を有すると判断した場合に、開始モジュール92は、データファイルに対応する仮想アプリケーションを起動させるように構成される。
アクセスモジュール93は、スタブファイルによって記録されている指定の仮想ストレージエリアストレージ場所に格納されたデータファイルにアクセスするために、開始モジュール92によって開始された仮想アプリケーションを使用するように構成される。
図10は、データファイル取り出しデバイスの一例を示した図である。一部の実施形態では、図9のデバイス900は、デバイス1000の例を使用して実装できる。デバイス1000の例では、アクセスモジュール93は、ネットワーク接続ユニット931と、伝送ユニット932と、動作ユニット933とを含む。
ネットワーク接続ユニット931は、アクセスされようとしているデータファイルに関係付けられたスタブファイルによって記録されている情報に基づいて、リモートデスクトッププロトコルコンポーネントを通じてクラウドサーバに接続するように構成される。
伝送ユニット932は、クラウドサーバが、ストレージファイルによって記録された情報の認証に成功した後に、クライアントデバイス上でリモート仮想化プログラムを起動させ、スタブファイルによって記録されている指定の仮想ストレージ場所をクラウドサーバ上に格納されたデータファイルを編集するためのドキュメントエディタプログラムをクライアントデバイス上へマッピングするためのベースとして使用するように、スタブファイルによって記録された情報をリモートデスクトッププロトコルコンポーネントを通じてクラウドサーバに伝送するように構成される。
動作ユニット933は、クラウドサーバ上に格納されているデータファイルに対してドキュメントエディタを通じて動作を実施するように構成される。
図11は、データファイルを保護するためのプログラムドコンピュータシステムの一実施形態を示した機能図である。データファイルを保護するために、その他のアーキテクチャ及び構成のコンピュータシステムも使用できることが明らかである。後述のような様々なサブシステムを含むコンピュータシステム1100は、少なくとも1つのマイクロプロセッササブシステム(プロセッサ又は中央演算処理装置(CPU)とも呼ばれる)1102を含む。例えば、プロセッサ1102は、シングルチッププロセッサによって又は複数のプロセッサによって実現できる。一部の実施形態では、プロセッサ1102は、コンピュータシステム1100の動作を制御する汎用デジタルプロセッサである。メモリ1110から取り出された命令を使用して、プロセッサ1102は、入力データの受信及び操作、並びに出力デバイス(例えば、ディスプレイ1118)へのデータの出力及び表示を制御する。
プロセッサ1102は、メモリ1110に双方向に接続され、メモリ1110は、通常はランダムアクセスメモリ(RAM)である第1の一次ストレージエリアと、通常は読み出し専用メモリ(ROM)である第2の一次ストレージエリアとを含むことができる。当該分野で周知のように、一次ストレージは、汎用ストレージエリアとして及びスクラッチパッドメモリとして使用でき、入力データ及び処理済みデータを格納するためにも使用できる。一次ストレージは、プログラミング命令及びデータも、プロセッサ1102上で起きるプロセスのためのその他のデータ及び命令に加えてデータオブジェクト及びテキストオブジェクトの形態で格納することができる。やはり当該分野で周知のように、一次ストレージは、通常は、プロセッサ1102がその機能(例えば、プログラムされた命令)を実施するために使用する基本的な動作命令、プログラムコード、データ、及びオブジェクトを含む。例えば、メモリ1110は、例えば、データアクセスが双方向又は単方向のいずれである必要があるかに応じて、後述される任意の適切なコンピュータ読み取り可能ストレージ媒体を含むことができる。例えば、プロセッサ1102は、頻繁に必要とされるデータを直接的に且つ非常に迅速に取り出してキャッシュメモリ(不図示)に格納することもできる。
着脱式大容量ストレージデバイス1112が、コンピュータシステム1100のための追加のデータストレージ容量を提供し、双方向(読み出し/書き込み)又は単方向(読み出しのみ)のいずれかでプロセッサ1102に接続される。例えば、ストレージ1112は、磁気テープ、フラッシュメモリ、PCカード、ポータブル大容量ストレージデバイス、ホログラフィックストレージデバイス、及びその他のストレージデバイスなどの、コンピュータ読み取り可能媒体を含むこともできる。例えば、固定大容量ストレージ1120も、追加のデータストレージ容量を提供することができる。固定大容量ストレージ1120として最も一般的な例は、ハードディスクドライブである。大容量ストレージ1112及び1120は、一般に、プロセッサ1102によって通常は能動的に使用されていない追加のプログラミング命令やデータなどを格納する。大容量ストレージ1112及び1120に保持される情報は、必要に応じて、仮想メモリとしてメモリ1110(例えば、RAM)の一部として標準的に組み込めることがわかる。
バス1114は、プロセッサ1102に、ストレージサブシステムへのアクセスを提供することに加えて、その他のサブシステム及びデバイスへのアクセスを提供するためにも使用できる。図に示されるように、これらとしては、ディスプレイモニタ1118、ネットワークインターフェース1116、キーボード1104、及びポインティングデバイス1108はもちろん、必要に応じて、補助入出力デバイスインターフェース、サウンドカード、スピーカ、及びその他のサブシステムが挙げられる。例えば、ポインティングデバイス1108は、マウス、スタイラス、トラックボール、又はタブレットであることができ、グラフィカルユーザインターフェースとのやり取りに有用である。
ネットワークインターフェース1116は、図に示されるようにネットワーク接続を使用してプロセッサ1102が別のコンピュータ、コンピュータネットワーク、又は電気通信ネットワークに接続されることを可能にする。例えば、ネットワークインターフェース1116を通じて、プロセッサ1102は、方法/プロセスのステップを実施する過程において、別のネットワークから情報(例えば、データオブジェクト若しくはプログラム命令)を受信する又は別のネットワークに情報を出力することができる。情報は、プロセッサ上で実行される一連の命令として表されることが多く、別のネットワークから受信できる又は別のネットワークに出力できる。コンピュータシステム1100を外部ネットワークに接続するために及びデータを標準プロトコルにしたがって転送するために、インターフェースカード又は類似のデバイス、及びプロセッサ1102によって実現される(例えば、プロセッサ1102上で実行される/実施される)適切なソフトウェアが使用できる。例えば、本書で開示される様々なプロセスの実施形態は、プロセッサ1102上で実行できる、又は処理の一部を共有するリモートプロセッサと協働してインターネット、イントラネットネットワーク、若しくはローカルエリアネットワークなどのネットワークで実施できる。プロセッサ1102には、ネットワークインターフェース1116を通じて追加の大容量ストレージデバイス(不図示)も接続できる。
コンピュータシステム1100と協働して、補助入出力デバイスインターフェース(不図示)が使用できる。補助入出力デバイスインターフェースは、プロセッサ1102が、マイク、タッチセンサ式ディスプレイ、トランスデューサカードリーダ、テープリーダ、音声又は手書き認識装置、生体認証リーダ、カメラ、ポータブル大容量ストレージデバイス、及びその他のコンピュータなどの他のデバイスにデータを送信することを、及び更に一般的にはこれらの他のデバイスからデータを受信することを可能にする、汎用並びに専用のインターフェースを含むことができる。
上記の各種の実施形態で説明されたように、データファイルは、分類済みファイルであると判断されると、指定の仮想ストレージエリアに格納される。したがって、指定の仮想ストレージエリアに格納されたデータファイルに対するユーザ動作は、仮想環境内に分離でき、データファイルが悪意あるユーザ及び/又はデータファイルにアクセスしているクライアントデバイスにおける悪意あるプログラムによって改ざんされることを阻止できる。クライアントデバイスにおけるデータファイルの元のストレージ場所において、スタブファイルが生成される。スタブファイルは、データファイルに対するビュー許可及び仮想ストレージエリアにおけるデータファイルのストレージ場所のみを記録し、データファイル自体からのいかなるデータも含まないので、スタブファイルに対してユーザによって実施される動作は、データファイルに対していかなる影響も有さない。
本書で説明の中で及び実際面で開示されている発明を考慮する際に、当業者ならば、当然、本出願を実現するためのその他のやり方を容易に思いつくだろう。本出願は、本出願のあらゆる変形、使用形態、又は適応形態を網羅することを意図し、これらの変形、使用形態、又は適応形態は、本出願の原則に適合し、本出願では開示されていない当該分野における公知の又は慣例の技術的手段を含む。説明及び実施形態は、例示的に過ぎないと見なされる。本出願の真の範囲及び趣旨は、以下の特許請求の範囲によって示される。
また、用語「comprise(を含む)」又は「contain(を内包する)」又はこれらのあらゆる異形語が、非排他的な意味で捉えられることに留意せよ。したがって、一連の要素を含むプロセス、方法、商品、又は機器は、これらの要素を含むのみならず、明確に挙げられていないその他の要素又はこのようなプロセス、方法、商品、若しくは機器に本来備わっているその他の要素も含む。更なる制限がなければ、「comprises a (n) … (a(n) … を含む)」という表現は、上記要素を含むプロセス、方法、商品、又は機器の中に更なる同一要素が存在することを排除しない。
以上は、本出願の好ましい実施形態に過ぎず、本出願を制限する働きをするものではない。実施されるあらゆる変更形態、等価な置換、又は改善が、本出願の保護範囲に内包されるものとする。
以上の実施形態は、理解を明瞭にする目的で幾らか詳細に説明されてきたが、本発明は、提供された詳細に限定されない。本発明を実現するためには、多くの代替的手法がある。開示された実施形態は、例示的なものであり、制限的なものではない。
本発明は以下の適用例としても実現できる。
[適用例1]
方法であって、
データファイルがクライアントデバイスによって生成されたという指示を受けて、前記データファイルに関係付けられたセキュリティ分類を判断することと、
前記データファイルに関係付けられた前記セキュリティ分類が、分類済みファイルを含むことを判断することと、
1つ以上のプロセッサを使用し、前記データファイルを指定の仮想ストレージエリアに格納することと、
前記データファイルの元のストレージ場所において、前記データファイルに関係付けられたビュー許可及び前記指定の仮想ストレージエリアにおける前記データファイルのストレージ場所を含むスタブファイルを生成することと、
を備える方法。
[適用例2]
適用例1に記載の方法であって、
前記指定の仮想ストレージエリアは、クラウドサーバに関係付けられる、方法。
[適用例3]
適用例1に記載の方法であって、
前記データファイルに関係付けられた前記セキュリティ分類を判断することは、
前記データファイルに関係付けられた内容情報を既定の条件と比較することと、
前記比較の結果に少なくとも部分的に基づいて、前記セキュリティ分類を判断することと、を含む、
方法。
[適用例4]
適用例1に記載の方法であって、
前記データファイルに関係付けられた前記セキュリティ分類は、ユーザによって設定される、方法。
[適用例5]
適用例1に記載の方法であって、更に、
前記データファイルに関係付けられた前記元のストレージ場所に前記スタブファイルを格納すること、
を備える方法。
[適用例6]
適用例1に記載の方法であって、更に、
前記データファイルにアクセスするための、前記スタブファイルに関係付けられたユーザ選択を受信することと、
前記ユーザ選択に関係付けられたユーザが、前記データファイルにアクセスするための許可を有するかどうかを判断することと、
前記ユーザが、前記データファイルにアクセスするための許可を有する場合に、前記データファイルに対応する仮想アプリケーションを実行することと、
前記仮想アプリケーションを使用して、前記指定の仮想ストレージエリアにおける前記データファイルへのアクセスを提供することと、
を備える方法。
[適用例7]
適用例1に記載の方法であって、更に、
前記データファイルにアクセスするための、前記スタブファイルに関係付けられたユーザ選択を受信することと、
前記ユーザ選択に関係付けられたユーザが、前記データファイルにアクセスするための許可を有するかどうかを判断することと、
前記ユーザが、前記データファイルにアクセスするための許可を有する場合に、前記データファイルに対応する仮想アプリケーションを実行することと、
前記仮想アプリケーションを使用して、前記指定の仮想ストレージエリアにおける前記データファイルへのアクセスを提供することであって、
前記指定の仮想ストレージエリアに関係付けられたクラウドサーバに、前記スタブファイルに含まれる情報を伝送することと、
前記クラウドサーバから、ドキュメントエディタプログラムに関係付けられたユーザインターフェースを受信することと、を含むことと、
を備える方法。
[適用例8]
適用例1に記載の方法であって、更に、
前記データファイルにアクセスするための、前記スタブファイルに関係付けられたユーザ選択を受信することと、
前記ユーザ選択に関係付けられたユーザが、前記データファイルにアクセスするための許可を有するかどうかを判断することと、
前記ユーザが、前記データファイルにアクセスするための許可を有する場合に、前記データファイルに対応する仮想アプリケーションを実行することと、
前記仮想アプリケーションを使用して、前記指定の仮想ストレージエリアにおける前記データファイルへのアクセスを提供することであって、
前記指定の仮想ストレージエリアに関係付けられたクラウドサーバに、前記スタブファイルに含まれる情報を伝送することと、
前記クラウドサーバから、ドキュメントエディタプログラムに関係付けられたユーザインターフェースを受信することと、
前記ユーザインターフェースを通じて、前記データファイルに対して実施されようとしている動作を受信することと、
前記動作を前記クラウドサーバに送信することと、を含むことと、
を備える方法。
[適用例9]
適用例1に記載の方法であって、
前記スタブファイルは、第1のスタブファイルを含み、前記方法は、更に、
第1のユーザから、前記データファイルを第2のユーザとシェアするための第1の命令を受信することと、
前記第2のユーザに関係付けられたユーザ情報を判断することと、
前記第2のユーザに関係付けられた前記ユーザ情報に少なくとも部分的に基づいて、前記第2のユーザが前記データファイルにアクセスする許可を有することを判断することと、
前記第2のユーザに関係付けられたクライアントデバイスに、前記第2のユーザに関係付けられた前記クライアントデバイスにおいて前記データファイルに対応する第2のスタブファイルを生成するように構成された第2の命令を送信することと、
を備える方法。
[適用例10]
非一時的なコンピュータ読み取り可能ストレージ媒体を含むコンピュータプログラム製品であって、
データファイルがクライアントデバイスによって生成されたという指示を受けて、前記データファイルに関係付けられたセキュリティ分類を判断することと、
前記データファイルに関係付けられた前記セキュリティ分類が、分類済みファイルを含むことを判断することと、
前記データファイルを指定の仮想ストレージエリアに格納することと、
前記データファイルの元のストレージ場所において、前記データファイルに関係付けられたビュー許可及び前記指定の仮想ストレージエリアにおける前記データファイルのストレージ場所を含むスタブファイルを生成することと、
のためのコンピュータ命令を備えるコンピュータプログラム製品。
[適用例11]
適用例10に記載のコンピュータプログラム製品であって、
前記指定の仮想ストレージエリアは、クラウドサーバに関係付けられる、コンピュータプログラム製品。
[適用例12]
適用例10に記載のコンピュータプログラム製品であって、
前記データファイルに関係付けられた前記セキュリティ分類を判断することは、
前記データファイルに関係付けられた内容情報を既定の条件と比較することと、
前記比較の結果に少なくとも部分的に基づいて、前記セキュリティ分類を判断することと、を含む、
コンピュータプログラム製品。
[適用例13]
適用例10に記載のコンピュータプログラム製品であって、
前記データファイルに関係付けられた前記セキュリティ分類は、ユーザによって設定される、コンピュータプログラム製品。
[適用例14]
適用例10に記載のコンピュータプログラム製品であって、更に、
前記データファイルに関係付けられた前記元のストレージ場所に前記スタブファイルを格納すること、
を備えるコンピュータプログラム製品。
[適用例15]
適用例10に記載のコンピュータプログラム製品であって、更に、
前記データファイルにアクセスするための、前記スタブファイルに関係付けられたユーザ選択を受信することと、
前記ユーザ選択に関係付けられたユーザが、前記データファイルにアクセスするための許可を有するかどうかを判断することと、
前記ユーザが、前記データファイルにアクセスするための許可を有する場合に、前記データファイルに対応する仮想アプリケーションを実行することと、
前記仮想アプリケーションを使用して、前記指定の仮想ストレージエリアにおける前記データファイルへのアクセスを提供することと、
ことを備えるコンピュータプログラム製品。
[適用例16]
適用例10に記載のコンピュータプログラム製品であって、更に、
前記データファイルにアクセスするための、前記スタブファイルに関係付けられたユーザ選択を受信することと、
前記ユーザ選択に関係付けられたユーザが、前記データファイルにアクセスするための許可を有するかどうかを判断することと、
前記ユーザが、前記データファイルにアクセスするための許可を有する場合に、前記データファイルに対応する仮想アプリケーションを実行することと、
前記仮想アプリケーションを使用して、前記指定の仮想ストレージエリアにおける前記データファイルへのアクセスを提供することであって、
前記指定の仮想ストレージエリアに関係付けられたクラウドサーバに、前記スタブファイルに含まれる情報を伝送することと、
前記クラウドサーバから、ドキュメントエディタプログラムに関係付けられたユーザインターフェースを受信することと、を含むことと、
を備えるコンピュータプログラム製品。
[適用例17]
適用例10に記載のコンピュータプログラム製品であって、更に、
前記データファイルにアクセスするための、前記スタブファイルに関係付けられたユーザ選択を受信することと、
前記ユーザ選択に関係付けられたユーザが、前記データファイルにアクセスするための許可を有するかどうかを判断することと、
前記ユーザが、前記データファイルにアクセスするための許可を有する場合に、前記データファイルに対応する仮想アプリケーションを実行することと、
前記仮想アプリケーションを使用して、前記指定の仮想ストレージエリアにおける前記データファイルへのアクセスを提供することであって、
前記指定の仮想ストレージエリアに関係付けられたクラウドサーバに、前記スタブファイルに含まれる情報を伝送することと、
前記クラウドサーバから、ドキュメントエディタプログラムに関係付けられたユーザインターフェースを受信することと、
前記ユーザインターフェースを通じて、前記データファイルに対して実施されようとしている動作を受信することと、
前記動作を前記クラウドサーバに送信することと、を含むことと、
備えるコンピュータプログラム製品。
[適用例18]
適用例10に記載のコンピュータプログラム製品であって、
前記スタブファイルは、第1のスタブファイルを含み、前記コンピュータプログラム製品は、更に、
第1のユーザから、前記データファイルを第2のユーザとシェアするための第1の命令を受信することと、
前記第2のユーザに関係付けられたユーザ情報を判断することと、
前記第2のユーザに関係付けられた前記ユーザ情報に少なくとも部分的に基づいて、前記第2のユーザが前記データファイルにアクセスする許可を有することを判断することと、
前記第2のユーザに関係付けられたクライアントデバイスに、前記第2のユーザに関係付けられた前記クライアントデバイスにおいて前記データファイルに対応する第2のスタブファイルを生成するように構成された第2の命令を送信することと、
を備えるコンピュータプログラム製品。
[適用例19]
システムであって、
1つ以上のプロセッサと、
前記1つ以上のプロセッサに結合され、前記1つ以上のプロセッサに命令を提供するように構成された1つ以上のメモリと、
を備え、
前記1つ以上のプロセッサは、
データファイルがクライアントデバイスによって生成されたという指示を受けて、前記データファイルに関係付けられたセキュリティ分類を判断し、
前記データファイルに関係付けられた前記セキュリティ分類が、分類済みファイルを含むことを判断し、
前記データファイルを指定の仮想ストレージエリアに格納し、
前記データファイルの元のストレージ場所において、前記データファイルに関係付けられたビュー許可及び前記指定の仮想ストレージエリアにおける前記データファイルのストレージ場所を含むスタブファイルを生成する、
ように構成される、システム。
[適用例20]
適用例19に記載のシステムであって、
前記指定の仮想ストレージエリアは、クラウドサーバに関係付けられる、システム。

Claims (18)

  1. 方法であって、
    コンピュータが、データファイルが第1のクライアントデバイスによって生成されたという指示を受けて、前記データファイルに関係付けられたセキュリティ分類を判断することと、
    コンピュータが、前記データファイルに関係付けられた前記セキュリティ分類が、分類済みファイルを含むことを判断することと、
    コンピュータが、1つ以上のプロセッサを使用し、前記データファイルを指定の仮想ストレージエリアに格納することと、
    コンピュータが、前記データファイルの元のストレージ場所において、前記データファイルに関係付けられたビュー許可及び前記指定の仮想ストレージエリアにおける前記データファイルのストレージ場所を含む第1のスタブファイルを生成することと、
    コンピュータが、第1のユーザから、前記データファイルを第2のユーザとシェアするための第1の命令を受信することと、
    コンピュータが、前記第2のユーザに関係付けられたユーザ情報を判断することと、
    コンピュータが、前記第2のユーザに関係付けられた前記ユーザ情報に少なくとも部分的に基づいて、前記第2のユーザが前記データファイルにアクセスする許可を有することを判断することと、
    コンピュータが、前記第2のユーザに関係付けられた第2のクライアントデバイスに、前記第2のユーザに関係付けられた前記第2のクライアントデバイスにおいて前記データファイルに対応する、前記指定の仮想ストレージエリアにおける前記データファイルを得るのに使用可能なように構成された第2のスタブファイルを生成するように構成された第2の命令を送信することと、
    を備える方法。
  2. 請求項1に記載の方法であって、
    前記指定の仮想ストレージエリアは、クラウドサーバに関係付けられる、方法。
  3. 請求項1に記載の方法であって、
    前記データファイルに関係付けられた前記セキュリティ分類を判断することは、
    コンピュータが、前記データファイルに関係付けられた内容情報を既定の条件と比較することと、
    コンピュータが、前記比較の結果に少なくとも部分的に基づいて、前記セキュリティ分類を判断することと、を含む、
    方法。
  4. 請求項1に記載の方法であって、
    前記データファイルに関係付けられた前記セキュリティ分類は、第3のユーザによって設定される、方法。
  5. 請求項1に記載の方法であって、更に、
    コンピュータが、前記データファイルに関係付けられた前記元のストレージ場所に前記第1のスタブファイルを格納すること、
    を備える方法。
  6. 請求項1に記載の方法であって、更に、
    コンピュータが、前記データファイルにアクセスするための、前記第1のスタブファイルに関係付けられたユーザ選択を受信することと、
    コンピュータが、前記ユーザ選択に関係付けられた第3のユーザが、前記データファイルにアクセスするための許可を有するかどうかを判断することと、
    コンピュータが、前記第3のユーザが、前記データファイルにアクセスするための許可を有する場合に、前記データファイルに対応する仮想アプリケーションを実行することと、
    コンピュータが、前記仮想アプリケーションを使用して、前記指定の仮想ストレージエリアにおける前記データファイルへのアクセスを提供することと、
    を備える方法。
  7. 請求項1に記載の方法であって、更に、
    コンピュータが、前記データファイルにアクセスするための、前記第1のスタブファイルに関係付けられたユーザ選択を受信することと、
    コンピュータが、前記ユーザ選択に関係付けられた第3のユーザが、前記データファイルにアクセスするための許可を有するかどうかを判断することと、
    コンピュータが、前記第3のユーザが、前記データファイルにアクセスするための許可を有する場合に、前記データファイルに対応する仮想アプリケーションを実行することと、
    コンピュータが、前記仮想アプリケーションを使用して、前記指定の仮想ストレージエリアにおける前記データファイルへのアクセスを提供することであって、
    コンピュータが、前記指定の仮想ストレージエリアに関係付けられたクラウドサーバに、前記第1のスタブファイルに含まれる情報を伝送することと、
    コンピュータが、前記クラウドサーバから、ドキュメントエディタプログラムに関係付けられたユーザインターフェースを受信することと、を含むことと、
    を備える方法。
  8. 請求項1に記載の方法であって、更に、
    コンピュータが、前記データファイルにアクセスするための、前記第1のスタブファイルに関係付けられたユーザ選択を受信することと、
    コンピュータが、前記ユーザ選択に関係付けられた第3のユーザが、前記データファイルにアクセスするための許可を有するかどうかを判断することと、
    コンピュータが、前記第3のユーザが、前記データファイルにアクセスするための許可を有する場合に、前記データファイルに対応する仮想アプリケーションを実行することと、
    コンピュータが、前記仮想アプリケーションを使用して、前記指定の仮想ストレージエリアにおける前記データファイルへのアクセスを提供することであって、
    コンピュータが、前記指定の仮想ストレージエリアに関係付けられたクラウドサーバに、前記第1のスタブファイルに含まれる情報を伝送することと、
    コンピュータが、前記クラウドサーバから、ドキュメントエディタプログラムに関係付けられたユーザインターフェースを受信することと、
    コンピュータが、前記ユーザインターフェースを通じて、前記データファイルに対して実施されようとしている動作を受信することと、
    コンピュータが、前記動作を前記クラウドサーバに送信することと、を含むことと、
    を備える方法。
  9. コンピュータプログラムであって、
    データファイルが第1のクライアントデバイスによって生成されたという指示を受けて、前記データファイルに関係付けられたセキュリティ分類を判断する機能と、
    前記データファイルに関係付けられた前記セキュリティ分類が、分類済みファイルを含むことを判断する機能と、
    前記データファイルを指定の仮想ストレージエリアに格納する機能と、
    前記データファイルの元のストレージ場所において、前記データファイルに関係付けられたビュー許可及び前記指定の仮想ストレージエリアにおける前記データファイルのストレージ場所を含む第1のスタブファイルを生成する機能と、
    第1のユーザから、前記データファイルを第2のユーザとシェアするための第1の命令を受信する機能と、
    前記第2のユーザに関係付けられたユーザ情報を判断する機能と、
    前記第2のユーザに関係付けられた前記ユーザ情報に少なくとも部分的に基づいて、前記第2のユーザが前記データファイルにアクセスする許可を有することを判断する機能と、
    前記第2のユーザに関係付けられた第2のクライアントデバイスに、前記第2のユーザに関係付けられた前記第2のクライアントデバイスにおいて前記データファイルに対応する、前記指定の仮想ストレージエリアにおける前記データファイルを得るのに使用可能なように構成された第2のスタブファイルを生成するように構成された第2の命令を送信する機能と、
    をコンピュータに実現させるコンピュータプログラム。
  10. 請求項9に記載のコンピュータプログラムであって、
    前記指定の仮想ストレージエリアは、クラウドサーバに関係付けられる、コンピュータプログラム。
  11. 請求項9に記載のコンピュータプログラムであって、
    前記データファイルに関係付けられた前記セキュリティ分類を判断する機能は、
    前記データファイルに関係付けられた内容情報を既定の条件と比較する機能と、
    前記比較の結果に少なくとも部分的に基づいて、前記セキュリティ分類を判断する機能と、を含む、
    コンピュータプログラム。
  12. 請求項9に記載のコンピュータプログラムであって、
    前記データファイルに関係付けられた前記セキュリティ分類は、第3のユーザによって設定される、コンピュータプログラム。
  13. 請求項9に記載のコンピュータプログラムであって、更に、
    前記データファイルに関係付けられた前記元のストレージ場所に前記第1のスタブファイルを格納する機能、
    をコンピュータに実現させるコンピュータプログラム。
  14. 請求項9に記載のコンピュータプログラムであって、更に、
    前記データファイルにアクセスするための、前記第1のスタブファイルに関係付けられたユーザ選択を受信する機能と、
    前記ユーザ選択に関係付けられた第3のユーザが、前記データファイルにアクセスするための許可を有するかどうかを判断する機能と、
    前記第3のユーザが、前記データファイルにアクセスするための許可を有する場合に、前記データファイルに対応する仮想アプリケーションを実行する機能と、
    前記仮想アプリケーションを使用して、前記指定の仮想ストレージエリアにおける前記データファイルへのアクセスを提供する機能と、
    をコンピュータに実現させるコンピュータプログラム。
  15. 請求項9に記載のコンピュータプログラムであって、更に、
    前記データファイルにアクセスするための、前記第1のスタブファイルに関係付けられたユーザ選択を受信する機能と、
    前記ユーザ選択に関係付けられた第3のユーザが、前記データファイルにアクセスするための許可を有するかどうかを判断する機能と、
    前記第3のユーザが、前記データファイルにアクセスするための許可を有する場合に、前記データファイルに対応する仮想アプリケーションを実行する機能と、
    前記仮想アプリケーションを使用して、前記指定の仮想ストレージエリアにおける前記データファイルへのアクセスを提供する機能であって、
    前記指定の仮想ストレージエリアに関係付けられたクラウドサーバに、前記第1のスタブファイルに含まれる情報を伝送する機能と、
    前記クラウドサーバから、ドキュメントエディタプログラムに関係付けられたユーザインターフェースを受信する機能と、を含む機能と、
    をコンピュータに実現させるコンピュータプログラム。
  16. 請求項9に記載のコンピュータプログラムであって、更に、
    前記データファイルにアクセスするための、前記第1のスタブファイルに関係付けられたユーザ選択を受信する機能と、
    前記ユーザ選択に関係付けられた第3のユーザが、前記データファイルにアクセスするための許可を有するかどうかを判断する機能と、
    前記第3のユーザが、前記データファイルにアクセスするための許可を有する場合に、前記データファイルに対応する仮想アプリケーションを実行する機能と、
    前記仮想アプリケーションを使用して、前記指定の仮想ストレージエリアにおける前記データファイルへのアクセスを提供する機能であって、
    前記指定の仮想ストレージエリアに関係付けられたクラウドサーバに、前記第1のスタブファイルに含まれる情報を伝送する機能と、
    前記クラウドサーバから、ドキュメントエディタプログラムに関係付けられたユーザインターフェースを受信する機能と、
    前記ユーザインターフェースを通じて、前記データファイルに対して実施されようとしている動作を受信する機能と、
    前記動作を前記クラウドサーバに送信する機能と、を含む機能と、
    をコンピュータに実現させるコンピュータプログラム。
  17. システムであって、
    1つ以上のプロセッサと、
    前記1つ以上のプロセッサに結合され、前記1つ以上のプロセッサに命令を提供するように構成された1つ以上のメモリと、
    を備え、
    前記1つ以上のプロセッサは、
    データファイルが第1のクライアントデバイスによって生成されたという指示を受けて、前記データファイルに関係付けられたセキュリティ分類を判断し、
    前記データファイルに関係付けられた前記セキュリティ分類が、分類済みファイルを含むことを判断し、
    前記データファイルを指定の仮想ストレージエリアに格納し、
    前記データファイルの元のストレージ場所において、前記データファイルに関係付けられたビュー許可及び前記指定の仮想ストレージエリアにおける前記データファイルのストレージ場所を含む第1のスタブファイルを生成し、
    第1のユーザから、前記データファイルを第2のユーザとシェアするための第1の命令を受信し、
    前記第2のユーザに関係付けられたユーザ情報を判断し、
    前記第2のユーザに関係付けられた前記ユーザ情報に少なくとも部分的に基づいて、前記第2のユーザが前記データファイルにアクセスする許可を有することを判断し、
    前記第2のユーザに関係付けられた第2のクライアントデバイスに、前記第2のユーザに関係付けられた前記第2のクライアントデバイスにおいて前記データファイルに対応する、前記指定の仮想ストレージエリアにおける前記データファイルを得るのに使用可能なように構成された第2のスタブファイルを生成するように構成された第2の命令を送信する、
    ように構成される、システム。
  18. 請求項17に記載のシステムであって、
    前記指定の仮想ストレージエリアは、クラウドサーバに関係付けられる、システム。
JP2017557316A 2015-06-02 2016-05-19 データファイルの保護 Active JP6511161B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CN201510295401.9 2015-06-02
CN201510295401.9A CN106295386B (zh) 2015-06-02 2015-06-02 数据文件的保护方法、装置及终端设备
US15/158,423 2016-05-18
US15/158,423 US10114962B2 (en) 2015-06-02 2016-05-18 Generating a stub file corresponding to a classified data file
PCT/US2016/033334 WO2016196030A1 (en) 2015-06-02 2016-05-19 Protecting data files

Publications (3)

Publication Number Publication Date
JP2018522320A JP2018522320A (ja) 2018-08-09
JP2018522320A5 JP2018522320A5 (ja) 2019-01-31
JP6511161B2 true JP6511161B2 (ja) 2019-05-15

Family

ID=57451866

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017557316A Active JP6511161B2 (ja) 2015-06-02 2016-05-19 データファイルの保護

Country Status (6)

Country Link
US (2) US10114962B2 (ja)
EP (1) EP3304275B1 (ja)
JP (1) JP6511161B2 (ja)
KR (1) KR102037656B1 (ja)
CN (1) CN106295386B (ja)
TW (1) TWI690821B (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109726041B (zh) * 2017-10-27 2023-09-08 伊姆西Ip控股有限责任公司 恢复虚拟机磁盘中的文件的方法、设备和计算机可读介质
US11704278B2 (en) 2020-12-04 2023-07-18 International Business Machines Corporation Intelligent management of stub files in hierarchical storage
US11983291B2 (en) * 2020-12-14 2024-05-14 International Business Machines Corporation Policy-driven views of datasets
KR102525655B1 (ko) * 2020-12-31 2023-04-25 (주)나무소프트 문서 저장 제어 방법
CN115086308B (zh) * 2022-04-27 2023-10-20 上海上讯信息技术股份有限公司 一种基于rdp的数据传输的控制方法及设备
CH720073A1 (de) * 2022-09-30 2024-04-15 Supertext Ag Vorrichtung und verfahren zur bearbeitung eines sicheren elektronischen dokuments

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006260176A (ja) * 2005-03-17 2006-09-28 Ex's Annex:Kk 機密文書管理方法及び機密文書管理システム
US7506003B2 (en) * 2005-07-14 2009-03-17 Microsoft Corporation Moving data from file on storage volume to alternate location to free space
CN101187994A (zh) * 2006-11-17 2008-05-28 鸿富锦精密工业(深圳)有限公司 文件打印管控系统及方法
JP2008191838A (ja) * 2007-02-02 2008-08-21 Hitachi Electronics Service Co Ltd 情報管理システム
CA2714961A1 (en) * 2007-02-05 2008-08-14 Moonwalk Universal Pty Ltd Data management system
US20110040812A1 (en) * 2007-12-20 2011-02-17 Virtual Computer, Inc. Layered Virtual File System
JP2010266933A (ja) * 2009-05-12 2010-11-25 Ri Co Ltd ドキュメント管理プログラム、ドキュメント管理システム及びドキュメント管理方法
US20100333116A1 (en) * 2009-06-30 2010-12-30 Anand Prahlad Cloud gateway system for managing data storage to cloud storage sites
US8620879B2 (en) 2009-10-13 2013-12-31 Google Inc. Cloud based file storage service
US9501365B2 (en) 2009-12-28 2016-11-22 Netapp, Inc. Cloud-based disaster recovery of backup data and metadata
WO2011123692A2 (en) 2010-03-31 2011-10-06 Orsini Rick L Systems and methods for securing data in motion
US8707457B2 (en) * 2010-05-09 2014-04-22 Citrix Systems, Inc. Methods and systems for forcing an application to store data in a secure storage location
WO2011150346A2 (en) 2010-05-28 2011-12-01 Laurich Lawrence A Accelerator system for use with secure data storage
WO2012035588A1 (en) * 2010-09-17 2012-03-22 Hitachi, Ltd. Method for managing information processing system and data management computer system
CN102004886B (zh) * 2010-11-15 2012-07-25 上海安纵信息科技有限公司 一种基于操作系统虚拟化原理的数据防泄漏方法
US20120290926A1 (en) * 2011-05-12 2012-11-15 Infinote Corporation Efficient document management and search
CN102254117B (zh) 2011-07-07 2013-10-02 胡建斌 一种基于虚拟化技术的数据防泄密系统
US8626714B1 (en) * 2011-09-07 2014-01-07 Symantec Corporation Automated separation of corporate and private data for backup and archiving
WO2013065084A1 (en) * 2011-11-01 2013-05-10 Hitachi, Ltd. Information system and method for managing data
CN102592102B (zh) 2011-12-31 2014-09-17 深信服网络科技(深圳)有限公司 一种终端防泄密控制方法及终端
US8736551B2 (en) * 2012-07-12 2014-05-27 Atmel Corporation Touch-sensor-controller sensor hub
CN102882923B (zh) * 2012-07-25 2015-04-15 北京亿赛通科技发展有限责任公司 移动终端安全存储系统及方法
US9185114B2 (en) * 2012-12-05 2015-11-10 Symantec Corporation Methods and systems for secure storage segmentation based on security context in a virtual environment
US9319265B2 (en) * 2013-02-22 2016-04-19 Hitachi Data Systems Engineering UK Limited Read ahead caching of data from cloud storage and method thereof
WO2014201650A1 (zh) * 2013-06-20 2014-12-24 华为技术有限公司 存储检测装置、系统及存储检测方法
CN103942492B (zh) 2014-03-04 2016-09-21 中天安泰(北京)信息技术有限公司 单机版数据黑洞处理方法及计算设备

Also Published As

Publication number Publication date
KR102037656B1 (ko) 2019-11-26
KR20170133485A (ko) 2017-12-05
CN106295386B (zh) 2021-04-27
JP2018522320A (ja) 2018-08-09
CN106295386A (zh) 2017-01-04
US10114962B2 (en) 2018-10-30
TW201702925A (zh) 2017-01-16
EP3304275A1 (en) 2018-04-11
EP3304275B1 (en) 2020-07-22
EP3304275A4 (en) 2019-01-09
US20190087596A1 (en) 2019-03-21
US20160357978A1 (en) 2016-12-08
TWI690821B (zh) 2020-04-11

Similar Documents

Publication Publication Date Title
JP6511161B2 (ja) データファイルの保護
US10616194B2 (en) Secure data destruction in a distributed environment using key protection mechanisms
US10178077B2 (en) Preventing persistent storage of cryptographic information using signaling
US10210085B2 (en) Leveraging non-volatile memory for persisting data
US7908476B2 (en) Virtualization of file system encryption
US9172724B1 (en) Licensing and authentication with virtual desktop manager
CN103617399B (zh) 一种数据文件保护方法及装置
US20080052328A1 (en) Abstracted and optimized online backup and digital asset management service
US9405925B2 (en) Content item encryption on mobile devices
EA012863B1 (ru) Устройство и система управления компьютерным сеансом
JP2009518702A (ja) 安全な作業環境を提供する、仮想インターフェースを利用するデバイス
US11032319B1 (en) Systems and methods for preparing honeypot computer files
US20230076870A1 (en) Protections for sensitive content items in a content management system
JP2021504849A (ja) ユーザアカウントを匿名化するためのシステム及び方法
US10223538B1 (en) Preventing persistent storage of cryptographic information
US9887979B1 (en) Systems and methods for enabling users to launch applications without entering authentication credentials
CN106663158A (zh) 为软件服务管理用户数据
US11880482B2 (en) Secure smart containers for controlling access to data
WO2016196030A1 (en) Protecting data files
Raj et al. A survey on data loss prevention techniques
KR102522217B1 (ko) 보안 저장 영역의 데이터를 백업하고 시간 정보를 포함하는 백업된 데이터에 기초하여 복원을 수행하는 장치
KR20210043069A (ko) 복수의 스토리지를 이용한 보안정보 저장 시스템
EP2930607A1 (en) Method and apparatus for increasing available portable memory storage space

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181214

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20181214

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20181218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190308

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190319

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190405

R150 Certificate of patent or registration of utility model

Ref document number: 6511161

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250