CN107077576A - 网络上的操作限制实施 - Google Patents

网络上的操作限制实施 Download PDF

Info

Publication number
CN107077576A
CN107077576A CN201580058355.9A CN201580058355A CN107077576A CN 107077576 A CN107077576 A CN 107077576A CN 201580058355 A CN201580058355 A CN 201580058355A CN 107077576 A CN107077576 A CN 107077576A
Authority
CN
China
Prior art keywords
file system
data
system entity
entity
asked
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.)
Granted
Application number
CN201580058355.9A
Other languages
English (en)
Other versions
CN107077576B (zh
Inventor
G·C·普拉姆
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN107077576A publication Critical patent/CN107077576A/zh
Application granted granted Critical
Publication of CN107077576B publication Critical patent/CN107077576B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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/107Network architectures or network communication protocols for network security for controlling access to devices or network resources wherein the security policies are location-dependent, e.g. entities privileges depend on current location or allowing specific operations only from locally connected terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0872Generation of secret information including derivation or calculation of cryptographic keys or passwords using geo-location information, e.g. location data, time, relative position or proximity to other entities
    • 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/2111Location-sensitive, e.g. geographical location, GPS
    • 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/2137Time limited access, e.g. to a computer or data

Landscapes

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

Abstract

在网络上对文件系统实体实施操作限制。文件系统实体存在于服务器(其可以是单个机器、服务器的群集、或者云计算环境)上。服务器促进与客户端建立网络上的会话。作为该促进的一部分,服务器从客户端接收客户端的位置。在从客户端后续接收到对文件系统实体执行操作的请求时,客户端咨询补充数据以确定所要求的操作在文件系统实体上是否被许可。补充数据可以包括位置信息或操作期满数据中的至少一项。

Description

网络上的操作限制实施
背景技术
计算系统和关联的网络已经彻底改革人类工作、玩和沟通的方式。我们的生活的几乎每个方面在某种程度上会受到计算系统影响。网络的扩散已经允许计算系统共享数据和通信,这极大地增加了信息访问。出于该原因,当代常常被称为“信息时代”。
然而,在一些情况下,期望限制对数据的访问。例如,数据常常被限制使得其仅由某些个体可访问。因此,这些个体必须在访问数据之前进行认证。在其他情况下,数据将基于位置被限制。例如,一些数据将被限制在特定某个地理区域内。出于各种原因(诸如法律、规章、税收或者安全原因),可以执行将数据限制到特定地理区域。在一些情况下,数据具有与数据相关联的某个期满日期以便限制何时数据可以被使用。
在此所要求保护的主题不限于解决任何缺点或仅在环境(诸如上文所描述的那些环境)中操作的实施例。相反,该背景仅被提供为图示其中可以实践在此所描述的一些实施例的一个示例性技术。
发明内容
在此所描述的至少一些实施例涉及在网络上对文件系统实体实施操作限制。文件系统实体存在于服务器(其可以是单个机器、服务器的群集或者云计算环境)上。服务器促进与客户端建立网络上的会话。作为该促进的一部分,服务器从客户端接收客户端的位置。在从客户端后续接收到对文件系统实体执行操作的请求时,客户端咨询补充数据以确定所要求的操作在文件系统实体上是否被许可。补充数据可以包括位置信息或操作期满数据中的至少一项。
该概述不旨在标识所要求保护的主题的关键特征或基本特征,其也不旨在用作辅助确定所要求保护的主题的范围。
附图说明
为了描述可以获得上文记载的优点和其他优点和特征的方式,将通过参考附图来提供各种实施例的更特定的描述。理解这些附图仅描述样本实施例并且因此将不被认为限制本发明的范围,将通过使用附图以附加特殊性和细节描述和解释实施例,在附图中:
图1抽象地图示了在其中可以采用在此所描述的一些实施例的计算系统;
图2图示了在其中请求系统通过网络请求对源系统的文件系统内的文件系统实体执行操作的系统;
图3图示了在其中文件系统实体和对应的补充数据以如下方式相关联的文件系统实体环境:如果文件系统实体被复制或被移除,则对应的补偿数据也相应地原子地被复制或被移除;
图4图示了用于建立请求系统与源系统之间的连接的方法的流程图,其是文件系统实体上的操作限制的实施的第一阶段;
图5图示了用于对请求作出反应以通过由图4的方法所建立的连接执行操作的方法的流程图,并且表示文件系统实体上的操作限制的实施的第二阶段;
图6图示了示出请求系统(客户端)与源系统(服务器)之间的信令以便建立会话的消息图;
图7图示了根据在此所描述的第一实施例的表示图3的补充数据的示例的位置数据;
图8图示了根据在此所描述的第一实施例的基于请求者的位置来控制对数据的访问的方法的流程图;
图9图示了根据在此所描述的第一实施例的用于使用位置数据确定所请求的操作是否被许可的方法的流程图;
图10图示了在此所描述的第二实施例的表示图3的补充数据的示例的补充数据;
图11抽象地图示了表示图10的场域中的任一个的示例的场域;
图12图示了根据在此所描述的第二实施例的用于基于请求者的位置和操作期满数据来控制对数据的访问的方法的流程图;以及
图13图示了根据在此所描述的第二实施例的用于基于请求者的位置状态并且基于操作特定的期满数据来控制对文件系统实体的访问的更特定的方法。
具体实施方式
在此所描述的至少一些实施例涉及在网络上对文件系统实体实施操作限制。文件系统实体存在于服务器(其可以是单个机器、服务器的群集或者云计算环境)上。服务器促进与客户端建立网络上的会话。作为该促进的一部分,服务器从客户端接收客户端的位置。在从客户端后续接收到对文件系统实体执行操作的请求时,客户端咨询补充数据以确定所要求的操作在文件系统实体上是否被许可。补充数据可以包括位置或操作期满数据中的至少一项。
因此,基于客户端的位置或者操作期满数据来实施操作限制可以被提供甚至用于远程操作请求。关于图1将描述计算系统的一些引导性讨论。然后,关于后续附图将描述访问控制的结构和使用。
计算系统现在日益采取各种各样的形式。计算系统可以例如是手持式设备、电器、膝上型计算机、台式计算机、大型机、分布式计算系统、数据中心或者甚至尚未常规地被认为是计算系统的设备(诸如可穿戴设备(例如,眼镜))。在该说明书和权利要求中,术语“计算系统”广泛地被定义为包括任何设备或系统(或其组合),其包括至少一个物理和有形处理器和能够在其上具有可以由处理器来执行的计算机可执行指令的物理和有形存储器。存储器可以采取任何形式并且可以取决于计算系统的性质和形式。计算系统可以被分布在网络环境上并且可以包括多个组成计算系统。
如在图1中所图示的,在其最基本配置中,计算系统100通常包括至少一个硬件处理单元102和存储器104。该存储器104可以是物理系统存储器,其可以是易失性、非易失性或二者的某种组合。术语“存储器”还可以在此被用于指代非易失性海量存储装置(诸如物理存储介质)。如果计算系统是分布式的,则也可以处理、存储器和/或存储能力也可以是分布式的。如在此所使用的,术语“可执行模块”或“可执行部件”可以指代可以在计算系统上执行的软件对象、例程或方法。在此所描述的不同的部件、模块、引擎和服务可以被实现为在计算系统上执行的对象或过程(例如,分离的线程)。
在以下描述中,参考由一个或多个计算系统所执行的动作描述实施例。如果在软件中实现这样的动作,则(执行动作的相关联的计算系统的)一个或多个处理器响应于已经执行计算机可执行指令而引导计算系统的操作。例如,可以在形成计算机程序产品的一个或多个计算机可读介质上实现这样的计算机可执行指令。这样的操作的示例包含对数据的操作。该计算机可执行指令(以及操作的数据)可以被存储在计算系统100的存储器104中。计算系统100还可以包含允许计算系统100通过例如网络110与其他计算系统通信的通信信道108。计算系统100还包括显示器,其可以被用于将视觉表示显示给用户。
在此所描述的实施例可以包括或利用包括计算机硬件(诸如例如一个或多个处理器和系统存储器)的专用或通用计算机系统,如下文更详细讨论的。在此所描述的实施例还包括用于携带或者存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可以由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是物理存储介质。携带计算机可执行指令的计算机可读介质是传输介质。因此,以示例而非限制的方式,本发明的实施例可以包括至少两个明显不同种类的计算机可读介质:计算机存储介质和传输介质。
计算机可读存储介质包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储装置、磁盘存储装置或者其他存储设备或者任何其他物理和有形存储介质,其可以被用于存储以计算机可执行指令或者数据结构的形式的期望的程序代码装置并且其可以由通用或专用计算系统访问。
“网络”被定义为实现计算系统和/或模块和/或其他电子设备之间的电子数据的传输的一个或多个数据链路。当信息通过网络或另一通信连接(或者硬连线、无线或者硬连线或无线的组合)被传送或被提供给计算机时,计算机适当地将连接视为传输介质。传输介质可以包括网络和/或数据链路,其可以被用于携带以计算机可执行指令或数据结构的形式的期望的程序代码装置并且可以由通用或专用计算机访问。以上组合也应当包括在计算机可读媒体的范围内。
进一步地,在到达各种计算机系统部件时,以计算机可执行指令或数据结构形式的程序代码可以从传输介质自动地被传送给计算机存储介质(或反之亦然)。例如,通过网络或数据链路所接收的计算机可执行指令或数据结构可以被缓冲在网络接口模块(例如,“NIC”)内的RAM中,并且然后最终地被传送到计算机系统RAM和/或较少地到计算机系统处的易失性计算机存储介质。因此,应当理解,计算机存储介质可以被包括在还(或甚至主要地)利用传输介质的计算机系统部件中。
计算机可执行指令包括指令和数据,其例如当在处理器处执行时使得通用计算系统、专用计算系统或专用处理设备执行某个功能或一组功能。计算机可执行指令可以是例如在由处理器直接执行之前经历一些转译(诸如编译)二进制或者甚至指令,诸如中间格式指令(诸如汇编语言或者甚至源代码)。虽然已经以特定于结构特征和/或方法行为的语言描述了主题,但是应理解到,所附的权利要求中定义的主题不必限于上文所描述的特定特征或行为。相反,所描述的特征和动作被公开为实现权利要求的示例形式。
本领域的技术人员将理解到,本发明可以被实践在具有多种类型的计算机系统配置的网络计算环境中,包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持式设备、多处理器系统、基于微处理器或可编程的消费电子产品、网络PC、小型计算机、大型计算机、移动电话、PDA、寻呼机、路由器、交换机、数据中心、可穿戴设备(诸如眼镜)等。本发明还可以实践在其中通过网络链接(或者由硬连线数据链路、无线数据链路或者由硬连线和无线数据链路的组合)链接的本地和远程计算机系统二者执行任务的分布式系统环境中。在分布式系统环境中,程序模块可以定位在本地存储器存储设备和远程存储器存储设备二者中。
图2图示了包括请求系统201(在此还被称为“客户端”)和源系统202(在此还被称为“服务器”)的环境200。特别地,请求系统201通过网络232将请求231提交给源系统202,以对源系统202的文件系统实体执行操作。这样的操作的示例可以包括例如读操作、更新操作、复制操作和删除操作。文件系统实体可以是例如盘、分区、目录或最基本的文件系统实体——文件。网络202可以是例如因特网、另一广域网(WAN)、局域网(LAN)、存储区域网络(SAN)等。
如上文所描述的,请求系统201可以被结构化用于图1的计算系统100,并且已经在其上对操作系统210进行操作。源系统202包括维持多个文件系统实体222的文件系统221的操作系统220。例如,文件系统221被图示为包括多个文件系统实体222,其包括文件系统实体222A、文件系统实体222B、文件系统实体222C、在其中间如由省略号222D所表示的潜在地多个其他文件系统。如上文所描述的,源系统202可以同样地被结构化用于图1的计算系统100。源系统202还可以是服务器群集或者甚至云计算网络。
图3图示了文件系统实体环境300。文件系统实体环境300包括文件系统实体301以及补充数据302。补充数据302包括位置数据303和操作期满数据304中的至少一项。而且,补充数据302与如由虚线框305所表示的文件系统实体301相关联。该关联305使得文件系统实体301和补充数据302原子地一起移动或复制。作为示例,文件系统实体301可以是图2的文件系统实体222中的任一个。类似文件系统实体环境300可以被提供用于多个文件系统实体中的每个文件系统实体,使得如果文件系统实体被相应地移动或复制,则文件系统已经将原子地移动或者复制的位置数据和/或操作期满数据与文件系统实体相关联。
关联305可以取决于文件系统而不同。在其中文件系统实体是文件的一个示例中,通过将补充数据包括在文件的备选数据流内完成关联305。这样可以例如在基于新技术文件系统(NTFS)的文件系统中是适当的。作为另一示例,可以通过包括补充数据作为文件系统实体的一个或多个特性来完成关联305。例如,在基于索引节点的文件系统(诸如XFS、ZFS和Reiser4)中,可以使用扩展文件属性针对文件存储补充数据。
对于未向给定文件系统实体条目的内容(诸如FAT16、FAT32和ExFAT)提供扩展的文件系统而言,可以使用其中补充数据302被写到相同目录中的分离文件中作为文件系统实体(例如,使用的适当的扩展)的回退方法。虽然这不是与其他方法一样鲁棒的,但是其为老系统提供某种水平的互操作性——但是基于位置的数据访问实施和基于操作期满的数据访问实施将受消耗的操作系统支配。
在此所描述的原理如何在文件系统实体301与补充数据302之间做出关联305并不重要。只说以下这点就够:不管关联如何被做出,关联都是与潜在的文件系统或环境兼容的,并且被做出使得如果文件系统实体301被移动或复制,则补充数据302也是这样。
图4和图5图示了在网络上对文件系统实体实施操作限制的过程。图4图示了实施的第一建立阶段的流程图。图5图示了实施的第二建立阶段的流程图。特别地,图4图示了用于建立请求系统与源系统之间的连接的方法400的流程图。图5图示了用于对通过在图4的方法400中所建立的连接做出的操作请求实施限制的方法500的流程图。虽然方法400可以针对特定连接执行仅一次,但是每当对文件系统实体执行操作的请求被接收时,可以执行方法500。可以在图2的环境200中执行方法400和500。因此,将频繁参考图2的环境200描述图4的方法400和图5的方法500。
服务器首先在网络上促进与客户端连接(行为410)。例如,在图2中,源系统202(即,服务器202)促进与请求系统201(即,客户端201)连接。作为针对连接的该形式化的进入操作之一,服务器从客户端接收客户端的位置(动作411)。服务器然后提供表示客户端的位置的数据(动作412),为从客户端接收到的未来的操作请求作准备。例如,作为该提供的一部分,表示客户端的位置的数据可以被使用在局部对象模型中,以对文件系统实体执行操作的后续请求中使用。参考图2,客户端201和服务器202因此建立连接,服务器202接收客户端201的位置数据,并且服务器202提供位置数据以响应于来自客户端201的后续请求可用于对文件系统实体222中的任一个执行文件系统实体操作。
在一个实施例中,使用服务器消息块(SMB)连接格式化建立的连接(行为410)。在该情况下,SMB协议可以被修改以允许客户端的区域(即,表示客户端的位置的数据)被呈现给服务器。而且,操作请求可能是也使用SMB的网络文件操作。在该实施例中,在使用SMB的联网文件操作可能发生之前,客户端与服务器(其可以仅是本地或网络间的另一客户端)协商连接。图6图示了图示该过程的消息图600。
例如,根据示图600,客户端610(图2的客户端201的示例)根据SMB协议发送(动作601)SMB_COM_NEGOTIATE请求到服务器620(图2的服务器202的示例)。作为响应,服务器620根据SMB协议发送(动作602)响应。为了服务器理解客户端驻留在其中的区域(其将可能不是可变的,并且因此会话的持续时间持续),附加的客户端位置信息被发送作为会话建立的一部分。
例如,客户端610发送(动作603)SMB_COM_SESSION_SETUP_ANDX协商消息。数据结构SMB_COM_SESSION_SETUP_ANDX由SMB协议定义,但是包括无符号长(unsigned long)的添加,其将连接的客户端的区域表示为联合国(UN)2数字字母。新结构可以如下(以及对现有结构的改变被加上下划线)。
在接收到表示客户端的区域的无符号局部时,服务器620存储客户端的区域用于未来的操作。例如,这可以通过改变针对给定客户端的会话的抽象数据模型而被实现。完成图6,服务器620然后根据SMB协议发送(动作604)响应到SMB_COM_SESSION_SETUP_ANDX(协商)消息。客户端610然后发送(动作605)SMB_COM_SESSION_SETUP_ANDX认证消息以认证客户端610。服务器620作出响应(动作606),从而建立会话。
图5图示了用于在网络上对文件系统实体实施操作限制的方法500。在接收到对文件系统实体执行操作的请求(动作510)时,补充数据被用于确定所请求的操作在文件系统实体上是否被许可,补充数据包括客户端的位置或者操作期满数据中的至少一项(动作511)。
现在将以大量的细节描述方法500的两个特定实施例。将关于图7到图9(和表1A到3)描述第一实施例(其中仅位置数据和客户端的位置被用于确定所请求的操作是否将被许可)。将关于图10到图13(和表4A到6)描述第二实施例(其中仅位置数据和操作期满数据被用于确定所请求的操作是否将被许可)。
第一实施例
图7图示了表示图2的补充数据302的示例的位置数据700。位置数据700包括作为什么可以被包括在各种实施例中的示例的各种字段。不要求在此所描述的位置数据包括针对位置数据700所描述的所有或甚至一些字段。
位置数据700包括也许允许元数据被标识为属于时间限制的访问的签名701。版本702字段可以标识版本号以便允许在此所描述的原理的改进。位置原点字段703可以标识文件系统实体源自的区域。在其中访问可以取决于请求者的位置是否是源自文件系统实体的相同区域的情况中,这可以是有用的。
位置数据700还包括默认动作字段710,其定义当请求者的位置不能被确定时可以对文件系统实体采取什么动作,或者在其中所请求的操作未明确地被允许在允许区域列表711中或在禁止区域列表712中明确地被禁止。作为示例,默认动作字段710可以仅仅具有从0到15的值(构成4个位——还被称为“半字节”)。如果所有四个位是零,那么不存在默认动作被许可。如果最低有效位被设定(例如,半字节具有1、3、5、7、9、11、13或15的值),那么复制操作被许可为默认操作。如果第二最低有效位被设定(例如,半字节具有2、3、6、7、10、11、14或15的值),那么读操作被许可为默认操作。如果第二最高有效位被设定(例如,半字节具有4、5、6、7、12、13、14或15的值),那么更新操作被许可为默认操作。如果最高有效位被设定(例如,半字节具有从8到15的值,包括的),那么删除操作被许可为默认操作。这在下文中将被称为“半字节方案”。
位置数据700还包括允许区域列表711,每个允许区域列表711允许区域具有符合上文所描述的半字节方案的对应的半字节。因此,对于具有针对定位在区域内的请求者的至少一个允许操作的任何区域,区域将在允许的区域列表711中。针对区域的允许操作由根据针对对应于允许区域的半字节的半字节方案设定而被定义。
位置数据700还包括禁止区域列表712,每个禁止区域具有符合上文所描述的半字节方案的对应的半字节。因此,任何区域具有针对定位在区域内的请求者的至少一个禁止操作,区域将在禁止区域列表712中。针对区域的禁止操作由根据针对对应于禁止区域的半字节的半字节方案设定而被定义。
图8图示了用于基于请求者的位置来控制对数据的访问的方法800的流程图。方法800可以由例如源系统202执行以便控制对其文件系统221内的文件系统实体222中的一个或多个的访问。因此,方法800可以频繁参考图2被描述为示例。
在源系统接收到对文件系统实体执行操作的请求,发起方法800(动作801)。例如,在图2中,源系统202通过网络232从请求系统201接收请求231。例如,假定请求231将对文件系统实体222A执行读操作。
源系统然后标识与发出请求的请求者相关联的位置状态(动作802)。例如,在图2中,源系统202将确定请求实体201的位置状态。在其中请求者的位置不能够被确定的情况下,位置状态可能是“未知的”。位置状态还可以是其中请求者目前被定位的特定位置或区域。
然后,源系统使用文件系统实体的位置数据和请求者的位置状态来确定所请求的操作在文件系统实体上是否被许可。例如,参考图2,假定文件系统实体222A包括文件系统实体环境300,其中文件系统实体222A(或文件系统实体301)具有对应的位置数据303。源系统可以因此访问(例如,反序列化)位置数据303。
例如,源系统可以将(在动作802中所标识的)请求者的位置状态与作为请求的目标的文件系统实体的位置数据相比较(动作803)。源系统可以然后基于比较的结果,确定所请求的操作在文件系统实体上是否被许可(决策块804)。如果被许可(决策块804中的“同意的”),则源系统可以使得所请求的操作被执行(行为805)。如果未被许可(决策块804中的“拒绝的”),则源系统可以阻止所请求的操作(行为806)。
在所请求的操作被执行的情况下,源系统可以确定文件系统实体是否应当被转码以便与请求系统201的操作系统210兼容(决策块807)。在文件系统操作是删除、读取或者更新操作的情况下,也许转码是不必要的(决策块807中的“否”),并且方法结束(动作809)。
然而,在复制操作的情况下,文件系统实体的复制版本可以被转码,这取决于文件系统实体环境300在操作系统210与220之间是否是相同的。如果它们不是相同的,那么转码被执行使得位置数据302和文件系统实体301以适于请求实体的操作系统210或在其中请求者将使用文件系统实体的最终操作系统的方式被关联305。例如,文件系统实体的副本可以具有从备选数据流(如果未由操作系统210识别)复制到文件属性的位置数据。另外,可以改变序列化格式。如果文件系统实体以未由请求操作系统210(或在其中请求者旨在使用文件系统实体的操作系统)所标识的源操作系统220中的方式被序列化,那么可以执行形式的转码或重新序列化。
图9图示了用于使用位置数据来确定所请求的操作是否被许可的方法900的流程图。方法900表示图8的动作803和决策块804的示例。方法900仅是可以如何做出决策的一个示例。在此所描述的原理不限于该示例。
首先,确定请求者的位置状态是未知的(决策块901)。如果请求者的位置状态是未知的(决策块901中的“是”),那么可以然后访问(动作911)定义所请求的操作是否可以被执行的默认规则。例如,这样的默认规则可以对应于图7中的位置数据的默认动作字段710。默认规则然后被咨询以确定所请求的操作是否可以基于默认规则被执行(决策块912)。如果其可以被执行(决策块912中的“是”),那么操作被同意(动作931),以及否则(决策块912中的“否”),操作被拒绝(动作932)。
另一方面,如果决策块901导致位置状态是请求者的位置的确定(即,请求者的位置状态不是未知的——决策块601中的“否”),允许区域(或“许可位置”)的列表被访问(动作921)。例如,源系统可以访问对应于文件系统实体的位置数据700的允许区域字段711。源系统然后确定(决策块922)所请求的操作是否由在其中请求者的位置处于其中或其内的许可区域中的任一个明确地许可。例如,在操作是读操作的情况下,源系统确定是否(对于对应于请求者的位置的给定允许区域而言)读操作被指示为许可的。如果操作被指示为允许的(决策块922中的“是”),那么操作被许可(动作931)。
如果使用允许区域的操作未明确地被允许(决策块922中的“否”),则拒绝区域(或“拒绝位置”)的列表被访问(动作923)。例如,源系统可以访问对应于文件系统实体的位置数据700的拒绝区域字段712。源系统然后确定(决策块924)所请求的操作是否由在其中请求者的位置处于其中或其内的许可区域中的任一个明确地许可。例如,在操作是读操作的情况下,源系统确定是否(对于对应于请求者的位置的给定允许区域而言)读操作被指示为禁止的。如果操作被指示为禁止的(决策块924中的“是”),那么操作被许可(动作932)。否则(决策块924中的“否”),方法可以返回行为911以咨询默认规则。然后,所请求的操作的允许性根据默认规则被确定(决策块912)。
因此,在此所描述的原理许可数据主权被享有,使得对文件系统实体(例如,文件)的操作可以由请求者的位置限制。而且,当操作被许可并且文件系统的副本将变得可用时,可以对文件系统实体环境进行转码,使得请求系统还可以具有对位置数据的访问,从而还实施数据主权规则。
在该第一实施例中关于图7描述了位置数据的示例结构,现在将相应地关于表1到表3描述三个特定序列化实现。下面表1A和表1B图示了针对位置数据的二进制文件格式。表1A图示了示例文件表头格式。表1B图示了示例支持数据结构。
表1A
表1B
表2
以下表3使用可扩展标记语言(XML)文档示出位置数据的便携的示例。
第二实施例
图10图示了表示图3的补充数据302的补充数据1000。补充数据1000包括作为什么可以被包括在各种实施例中的示例的各种字段。不要求在此所描述的位置数据303或操作期满数据304包括针对补充数据1000所描述的所有或甚至一些字段。
补充数据1000包括也许允许元数据被标识为属于时间限制的访问的签名1001。版本字段1002可以标识版本号以便允许在此所描述的原理的改进。位置原点字段1003可以标识文件系统实体源自的区域。在其中访问或操作可以取决于请求者的位置是否是源自文件系统实体的相同区域的情况中,这可以是有用的。
补充数据1000还包括实体生存时间字段1010,其如果存在的话,可以用于定义文件系统实体自身的生存时间而不管请求者的位置状态。在一个示例中,生存时间字段1010可以包括文件期满字段1011和删除指示符1012。例如,文件期满字段1011可以是无符号长,并且删除指示符1012可以是布尔。
当被评价时,仅作为示例,无符号长1011中的负值指示对应的文件系统实体已经期满,并且仅对于删除操作是合格的。布尔1012表示如果文件系统实体被发现已经期满,文件系统实体是否将自动地删除。在该示例中,无符号长1011中的零值指示文件系统实体当前不具有期满时间。无符号长1011中的正值指示期满时间,其可以与当前时间相比较以确定文件系统实体已经期满。此外,如果无符号长1011用于指示文件系统实体已经期满,布尔1012被评价以在文件系统实体已经期满的检测时确定文件系统实体是否将自动地删除。
补充数据1000还包括区域期满字段1020。在一个示例中,文件生存时间字段1010和区域期满字段1020中的至少一者(和潜在地二者)将存在于补充数据1000内。区域期满字段1020包括各自针对对应的区域的多个区域字段。例如,区域期满字段1020被图示为包括三个区域字段1021、1022和1023。然而,省略号1024符号表示在区域期满字段1020内可以存在任何数目的区域字段。作为示例,每个区域字段(1021到1024)可以使用任何装置标识对应的国家。这样的标识的示例可以包括联合国国家代码。在一个实施例中,如果请求者的位置状态是未知的或不存在于针对其存在区域字段的其他区域中的任一个内。
图11抽象地图示了表示图10的区域字段1021到1024中的任一个的示例的区域字段1100。区域字段1100包括多个操作字段。特别地,区域字段1100被图示为包括四个操作字段1110、1120、1130和1140。然而,省略号1150表示在区域字段内可以存在任何数目的操作字段。操作的示例可以包括读取、复制、更新和删除。每个操作期满字段1110、1120、1130和1140相应地包括相应的操作期满指示符字段1111、1121、1131和1141,以及相应的删除指示符字段1112、1122、1132和1142。如果出现其中指示请求者具有区域期满字段1020中所表示的区域之一的位置状态的请求,那么所请求的操作被标识为确定相应的区域字段(例如,1021和1100)的操作期满字段用于定义操作是否被许可或不再被许可。此外,在一个实施例中,每个操作期满指示符字段1111、1121、1131和1141可以是无符号长,并且每个删除指示符字段1112、1122、1132和1142可以是布尔。
当被评价时,针对相应的操作期满指示符字段1110、1120、1130、1140的有符号长的负值指示给定请求者的位置状态,针对对应的文件系统实体的操作已经期满,并且给定请求者的位置状态,如果被许可的话,则仅对于删除操作是合格的。布尔表示如果文件系统实体被发现已经期满,文件系统实体是否将自动地删除。在该示例中,有符号长中的零值指示给定请求者的位置状态,对相应的文件系统实体的相应的操作不具有期满时间。有符号长中的正值指示期满时间,其可以与当前图像相比较以确定给定请求者的位置,针对文件系统实体的相应的操作是否已经期满。此外,如果有符号长用于指示给定请求者的位置,对文件系统实体的操作已经期满,则布尔被评价以确定文件系统实体是否将自动地删除。
图12图示了用于基于请求者的位置和期满数据来控制对数据的访问的方法1200的流程图。方法1200可以由例如源系统202执行以便控制对其文件系统221内的文件系统实体222中的一个或多个的访问。因此,方法1200可以频繁参考图2被描述为示例。
在源系统接收到对文件系统实体执行操作的请求时,发起方法1200(动作1201)。例如,在图2中,源系统202从请求系统201接收请求231。例如,假定请求231将对文件系统实体222A执行读操作。
源系统然后标识与发出请求的请求者相关联的位置状态(动作1202)。例如,在图2中,源系统202将确定请求实体201的位置状态。在其中请求者的位置不能够被确定的情况下,位置状态可能是“未知的”。位置状态还可以是其中请求者目前被定位的特定位置或区域。
然后,源系统标识对应于位置状态并且与所请求的操作相关联的期满数据(动作1203)。例如,参考图2,假定文件系统实体222A被请求以进行操作,并且文件系统实体222A包括图3的文件系统实体环境300。在该情况下,可以访问(例如,反序列化)(被表示为图10的补充数据1000)的适当的补充数据。给定位置状态,可以定位补充数据1000的适当的区域字段(例如,1021、1022、1023)。而且,给定所请求的操作,适当的操作字段(例如,如果区域字段1100应用则1110、1120、1130或1140)被定位。
所标识的期满数据然后用于确定所请求的操作在文件系统实体上是否被许可(决策块1204)。例如,如上文所指示的,如果操作字段(例如,字段1110)的无符号长(例如,字段1111)的(决策块1204中的“否”)是负的或当前时间在操作字段中所表示的时间之后,那么所请求的操作被拒绝(动作1205)。例如,这可以涉及阻止对文件系统实体的操作的源系统。另一方面(决策块1204中的“是”),如果操作字段1110的无符号长1111是零或者当前时间在操作期满字段中所表示的时间之前,那么所请求的操作被许可(动作1206)。
如果操作被拒绝(决策块1204中的“否”),对操作字段(例如,1110)的期满字段(例如,1112)的删除用于确定文件系统实体将自动地删除(决策块1207)。如果是的话(决策块1207中的“是”),则文件系统实体被删除(动作1210)。否则,针对所请求的操作,方法结束(动作1209)。文件系统实体保持,但是在其上操作的请求已经仍然被拒绝。
在所请求的操作被许可(决策块1204中的“是”)的情况下,方法1200还可以包括使得所请求的操作在文件系统实体上被执行。源系统可以然后确定文件系统实体是否应当被转码以便与请求系统201的操作系统210兼容(决策块1211)。在文件系统操作是删除、读取或者更新操作的情况下,也许转码是不必要的(决策块1211中的“否”),并且方法结束(动作1209)。
然而,在复制操作(决策块1211中的“是”)的情况下,文件系统实体的复制版本可以被转码(动作1212),这取决于文件系统实体环境300在操作系统210与220之间是否相同。如果它们不相同,那么转码被执行使得位置数据302、操作期满数据303(即,补充数据1000)和文件系统实体301以适于请求实体的操作系统210或在其中请求者将使用文件系统实体的最终操作系统的方式被关联304。例如,文件系统实体的副本可以具有从备选数据流(如果未由操作系统210识别)复制到文件属性的补充数据。另外,可以改变序列化格式。如果文件系统实体以未由请求操作系统210(或在其中请求者旨在使用文件系统实体的操作系统)标识的源操作系统220中的方式被序列化,那么可以执行形式的转码或重新序列化。
图13图示了用于基于请求者的位置状态并且基于特定操作的期满数据来控制对文件系统实体的访问的更特定的方法。在接收到请求(动作1301)时,发起方法1300。然后访问对应的文件系统实体的补充数据1000(在图13中被称为“时间和位置元数据(M)”)(动作1302)。这可以包含将补充数据1000反序列化。
然后确定请求者的位置状态(动作1303)。动作1303是图12的行为1202的示例。在其中请求者的位置不能被确定的情况下,位置状态可能是“未知的”。
然后确定在补充数据1000中是否存在任何实体生存时间数据(例如,字段1010被有效地填充)(动作1304)。如果存在(决策块1304中的“是”),方法1300执行上文尚未参考图12描述的动作1305到1315(其中的一些是有条件的)。
特别地,如果针对实体生存时间数据的有符号长等于零(决策块1305中的“是”),则这意味着文件系统实体没有期满,并且因此许可操作(动作1306)。另一方面(决策块1305中的“否”),如果无符号长是负的(决策块1307中的“是”),那么确定文件系统实体已经期满(动作1308)。在该情况下,评价文件删除指示符1012(决策块1309)。如果该布尔是真(决策块1309中的“是”),那么文件系统实体从磁盘被删除(动作1310),并且操作被中止(动作1311)。否则,如果布尔是假(决策块1309中的“否”),那么在不删除文件系统实体(绕过动作1310)的情况下,操作被中止(动作1311)。
如果有符号长不是零(决策块1305中的“否”),并且不是负的(决策块1307中的“否”),那么有符号长被评价为日期/时间戳(动作1312)。日期/时间戳的示例是Unix日期/时间戳。如果当前时间大于日期/时间戳(决策块1313中的“是”),那么文件再次被确定为已经期满(动作1314),并且此外评价删除指示符1012(决策块1309)。此外,如果文件删除指示符1012被设定(决策块1309中的“是”),那么文件系统实体被删除(动作1310),并且所请求的操作被中止(动作1311)。如果删除指示符1012未被设定(决策块1309中的“否”),那么在不删除文件系统实体的情况下,所请求的操作被中止(动作1311)。如果有符号长是正的(决策块1305和1307中的“否”),并且当前时间小于日期/时间戳(决策块1315中的“否”),那么所请求的操作被许可继续(动作1315)。
返回决策块1304,如果补充数据不包括有效填充实体生存时间字段1010(决策块1304中的“否”),那么确定(决策块1316)请求者的位置状态是未知的还是不在区域字段1020中的区域的列表内(决策块1316中的“否”)。在该情况下,默认期满规则集被用于操作(动作1317)(图13的“期满规则集”对应于图10的区域字段(例如,1021到1024))。例如,在一个实施例中,区域字段1021可以用在请求者的区域或者是未知的或者不在其他所列出的区域内的情况中。如果请求者的位置是对应于与区域字段对应的实际区域的特定位置(决策块1316中的“是”),那么使用针对特定区域的期满规则集(动作1318)。例如,也许区域字段1021对应于未知的位置状态(即,是默认规则集),然而区域字段1022可以对应于英国。在该情况下,如果请求者被确定为被定位在英国内,那么区域字段1022将被使用。
在任何情况下,无论通过默认规则集(动作1317)还是通过区域规则集的使用(动作1318),获取规则集,并且获取相关操作期满字段。例如,如果所请求的操作是复制操作,并且操作点1110用于复制操作。操作期满指示符字段1111将被访问并且被评价(动作1319)。这将对应于图12的动作1203。
特别地,如果针对操作期满指示符字段的有符号长等于零(决策块1320中的“是”),这意味着给定请求者的位置状态,文件系统实体的操作没有期满(确定1321),并且因此操作被许可。另一方面(决策块1320中的“否”),如果有符号长是负的(决策块1322中的“是”),那么确定给定请求者的位置状态,对文件系统实体的操作已经期满(动作1323)。在该情况下,删除指示符字段(例如,针对操作字段1110的1112)被评价(决策块1324)。如果该布尔是真(决策块1324中的“是”),那么文件系统实体从盘被删除(动作1325),并且操作被中止(动作1326)。否则,如果布尔是假(决策块1324中的“否”),那么在不删除文件系统实体(绕过动作1325)的情况下,操作被中止(动作1326)。
如果有符号长不是零(决策块1320中的“否”),并且不是负的(决策块1322中的“否”),那么有符号长被评价为日期/时间戳(动作1327)。此外,日期/时间戳的示例是Unix日期/时间戳。如果当前时间大于日期/时间戳(决策块1328中的“是”),那么对文件系统实体的操作再次被确定为已经期满(动作1329),并且此外删除指示符字段1112被评价(决策块1324)。此外,如果删除指示符1012被设定(决策块1324中的“是”),那么文件系统实体被删除(动作1325),并且所请求的操作被中止(动作1326)。如果删除指示符字段未被设定(决策块1324中的“否”),那么在不删除文件系统实体的情况下,所请求的操作被中止(动作1326)。如果有符号长是正(决策块1320和1322中的“否”),并且当前时间小于日期/时间戳(决策块1328中的“否”),那么所请求的操作被许可继续(动作1330)。
因此,再次所描述的原理许可数据主权和期满数据以单个操作的颗粒度被享有,使得对文件系统实体(例如,文件)的操作(和其期满)可以由请求者的位置限制。此外,当操作被许可并且文件系统的副本将变得可用时,可以对文件系统实体环境进行转码,使得请求系统还可以具有对位置数据和操作期满数据的访问,从而还实施关于访问和期满的数据主权规则。
已经描述了关于图10的该第二实施例中的补充数据的示例结构,现在将相应地关于表4A到表6描述三个特定序列化实现。下面表4A和表4B图示了针对补充数据的二进制文件格式。表4A图示了示例文件表头格式。表4B图示了示例支持数据结构。
表4A
表4B
表5图示了使用Java-Script对象符号(JSON)的位置数据的更便携的实施例。
表5
以下表6使用可扩展标记语言(XML)文档示出位置数据的便携的示例。
表6
因此,已经描述用于保留由区域和操作特定的生存时间所实施的期满的数据的主权的机制。
权利要求支持部分
在此描述了一种用于在网络上对文件系统实体实施操作限制的方法,该方法包括:源计算系统接收请求计算系统的位置作为会话的进入通信的一部分的动作;接收对文件系统实体执行操作的请求作为会话的一部分的动作;以及使用补充数据确定所请求的操作在文件系统实体上是否被许可的动作,补充数据包括位置数据或者操作期满数据中的至少一项。
方法还可以包括以下:如果确定所请求的操作被许可,使得所请求的操作在文件系统实体上被执行的动作。在该情况下,使得所请求的操作被执行的动作包括:将文件系统实体转码为适于请求计算系统的操作系统的经转码的文件系统实体的动作;和/或将文件系统实体转码为由请求计算系统的操作系统实现的序列化实现中的动作。方法还可以包括:将请求计算系统的位置包括在本地对象模型中以在来自请求计算系统中的后续请求使用以对文件系统实体执行操作的动作。
在此还描述了一种包括在其上具有一个或多个计算机可执行指令的一个或多个计算机可读存储介质的计算机程序产品,该计算机可执行指令被结构化使得当由源计算系统中的一个或多个处理器执行时使得源计算系统执行以下各项:源计算系统与请求计算系统通过网络建立会话的动作;源计算系统通过存储请求计算系统的位置来对会话上的请求计算系统的位置的接收作出响应的动作;以及响应于从请求计算系统接收对文件系统实体执行操作的请求而执行以下各项的动作:使用补充数据确定所请求的操作在文件系统实体上是否被许可的动作,补充数据包括位置数据或操作期满数据中的至少一项。
计算机可执行指令还可以被结构化使得当由一个或多个处理器执行时,还使得源计算系统执行以下各项:将补充数据与系统实体相关联使得补充数据和文件系统实体原子地一起被移动或被复制的动作。将补充数据与文件系统实体相关联的动作可以包括:将补充数据包括在文件系统实体的备选数据流中的行为。将补充数据与文件系统实体相关联的动作可以包括:包括补充数据作为文件系统实体的一个或多个属性的动作。
使用位置数据或操作期满数据中的一个或多个确定所请求的操作在文件系统实体上是否被许可的动作可以包括:使用位置数据确定所请求的操作在文件系统实体上是否被许可的动作。使用位置数据确定所请求的操作是否被许可的动作还可以包括以下各项:访问来自位置数据的一个或多个许可区域集的动作,每个许可区域与被许可的一个或多个操作类型;确定客户端的位置在所请求的操作被明确地许可的许可区域内;以及在所请求的操作被确定为具有客户端的位置在对应的一个或多个许可位置集中的任一个内的操作类型的情况下同意所请求的操作的动作。使用位置数据确定所请求的操作是否被许可的动作还可以包括:访问来自位置数据的一个或多个禁止区域集的动作,每个禁止区域与所禁止的一个或多个操作类型相关联;确定客户端的位置在所请求的操作被明确地禁止的禁止区域内的动作;以及在所请求的操作被确定为具有请求者的位置在对应的一个或多个区域位置集中的任一个内的操作类型的情况下拒绝所请求的操作的动作。
使用位置数据或操作期满数据中的一项或多项来确定所请求的操作在文件系统实体上是否被许可的动作包括:使用操作期满数据确定所请求的操作在文件系统实体上是否被许可的动作。
使用位置数据或操作期满数据中的一项或多项来确定所请求的操作在文件系统实体上是否被许可的动作可以包括:使用位置数据和操作期满数据二者来确定所请求的操作在文件系统实体上是否被许可的动作,操作期满数据与请求计算系统的位置、文件系统实体和所请求的操作相关联。使用补充数据确定所请求的操作在文件系统实体上是否被许可的动作可以包括:确定与请求计算系统的位置、文件系统实体和请求操作相关联的操作期满数据中的期满时间的动作;确定与期满时间相比较的相关时间的动作;以及确定是否基于相关时间与期满时间的比较来确定所请求的操作是否被许可的动作。
在此还描述了一种源计算系统,其包括:一个或多个计算机可读存储介质,其在其上具有由源计算系统的操作系统管理的多个文件系统实体;以及一个或多个处理器。一个或多个计算机可读存储介质在其上具有一个或多个计算机可执行指令,其被结构化使得当由源计算系统的一个或多个处理器执行时使得源计算系统执行以下各项:源计算系统与请求计算系统在网络上建立会话的动作;源计算系统通过存储请求计算系统的位置来对会话上的请求计算系统的位置的接收作出响应的动作;以及响应于从请求计算系统接收对多个文件系统实体的文件系统实体执行操作的请求而执行以下各项的动作:使用补充数据来确定所请求的操作在文件系统实体上是否被许可的动作,补充数据包括位置数据的位置或操作期满数据中的至少一项。
在不脱离其精神或主要特性的情况下,可以以其他特定形式实现本发明。所描述的实施例在所有方面中将被认为是说明性而非限制性的。因此,本发明的范围由所附的权利要求而不是由前述描述指示。在权利要求的等价的意义和范围内的所有改变将被包括在其范围内。

Claims (10)

1.一种用于在网络上对文件系统实体实施操作限制的计算机实现的方法,所述计算机实现的方法由执行针对所述计算机实现的方法的计算机可执行指令的一个或多个处理器执行,并且所述计算机实现的方法包括:
在源计算系统处接收请求计算系统的位置作为会话的进入通信的一部分;
接收对所述文件系统实体执行操作的请求作为所述会话的一部分;以及
使用补充数据来确定所请求的所述操作在所述文件系统实体上是否被许可,所述补充数据包括位置数据或操作期满数据中的至少一项。
2.根据权利要求1所述的计算机实现的方法,其中如果确定所请求的所述操作被许可,则所述计算机实现的方法还包括使得所请求的所述操作在所述文件系统实体上被执行。
3.根据权利要求2所述的计算机实现的方法,其中使得所请求的所述操作被执行包括:将所述文件系统实体转码为适于所述请求计算系统的操作系统的经转码的文件系统实体。
4.根据权利要求2所述的计算机实现的方法,其中使得所请求的所述文件系统实体操作被执行包括:将所述文件系统实体转码为由所述请求计算系统的操作系统实现的序列化实现。
5.根据权利要求1所述的计算机实现的方法,还包括将所述请求计算系统的所述位置包括在本地对象模型中,以用于在来自所述请求计算系统的后续请求中使用以对文件系统实体执行操作。
6.一种计算机程序产品,其包括在其上具有一个或多个计算机可执行指令的一个或多个计算机可读存储介质,所述一个或多个计算机可执行指令被结构化使得当由源计算系统的一个或多个处理器执行时,使得源计算系统执行以下计算机实现的方法:
在网络上与请求计算系统建立会话;
通过存储所述请求计算系统的位置来对所述会话上的所述请求计算系统的所述位置的接收作出响应;
响应于从所述请求计算系统接收到对文件系统实体执行操作的请求,使用补充数据来确定所请求的所述操作在所述文件系统实体上是否被许可,所述补充数据包括所述位置数据或所述操作期满数据中的至少一项。
7.根据权利要求6所述的计算机程序产品,其中由所述源计算系统执行的所述计算机实现的方法还包括:将所述补充数据与所述文件系统实体相关联,使得所述补充数据和所述文件系统实体原子地一起被移动或者被复制。
8.根据权利要求7所述的计算机程序产品,其中使用位置数据或操作期满数据中的一项或多项来确定所请求的所述操作在所述文件系统实体上是否被许可包括:使用所述位置数据来确定所请求的所述操作在所述文件系统实体上是否被许可。
9.根据权利要求7所述的计算机程序产品,其中使用位置数据或操作期满数据中的一项或多项来确定所请求的所述操作在所述文件系统实体上是否被许可包括:使用所述操作期满数据来确定所请求的所述操作在所述文件系统实体上是否被许可。
10.根据权利要求7所述的计算机程序产品,其中使用位置数据或操作期满数据中的一项或多项来确定所请求的所述操作在所述文件系统实体上是否被许可包括:使用所述位置数据和所述操作期满数据二者来确定所请求的所述操作在所述文件系统实体上是否被许可,所述操作期满数据与所述请求计算系统的所述位置、所述文件系统实体以及所请求的所述操作相关联。
CN201580058355.9A 2014-10-30 2015-10-27 网络上的操作限制实施 Active CN107077576B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/529,067 2014-10-30
US14/529,067 US9424436B2 (en) 2014-10-30 2014-10-30 Over network operation restriction enforcement
PCT/US2015/057438 WO2016069511A1 (en) 2014-10-30 2015-10-27 Over network operation restriction enforcement

Publications (2)

Publication Number Publication Date
CN107077576A true CN107077576A (zh) 2017-08-18
CN107077576B CN107077576B (zh) 2020-03-10

Family

ID=54541201

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580058355.9A Active CN107077576B (zh) 2014-10-30 2015-10-27 网络上的操作限制实施

Country Status (5)

Country Link
US (1) US9424436B2 (zh)
EP (1) EP3213249B1 (zh)
CN (1) CN107077576B (zh)
BR (1) BR112017005796B1 (zh)
WO (1) WO2016069511A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10031939B2 (en) * 2014-09-30 2018-07-24 Microsoft Technology Licensing, Llc Automated supplementation of data model
US10223363B2 (en) 2014-10-30 2019-03-05 Microsoft Technology Licensing, Llc Access control based on operation expiry data
US10803191B2 (en) * 2017-04-18 2020-10-13 Open Text Holdings, Inc. System and method for implementing data sovereignty safeguards in a distributed services network architecture
US11237963B2 (en) * 2019-02-01 2022-02-01 Red Hat, Inc. Shared filesystem metadata caching
US11799948B2 (en) * 2020-11-17 2023-10-24 Cisco Technology, Inc. Cloud service datacenter selection based on data sovereignty policies

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0715243A1 (en) * 1994-11-23 1996-06-05 Xerox Corporation System for controlling the distribution and use of digital works having a fee reporting mechanism
US20040044697A1 (en) * 2002-08-28 2004-03-04 Nixon Michael L. Systems and methods for distributing, obtaining and using digital media files
CN101661540A (zh) * 2008-08-29 2010-03-03 富士施乐株式会社 信息管理方法和信息管理系统
US7958148B2 (en) * 2004-11-17 2011-06-07 Iron Mountain Incorporated Systems and methods for filtering file system input and output
CN102999729A (zh) * 2011-09-13 2013-03-27 联想(北京)有限公司 文件管理方法及文件管理系统

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8234477B2 (en) * 1998-07-31 2012-07-31 Kom Networks, Inc. Method and system for providing restricted access to a storage medium
US6381602B1 (en) 1999-01-26 2002-04-30 Microsoft Corporation Enforcing access control on resources at a location other than the source location
GB0012445D0 (en) * 2000-05-24 2000-07-12 Hewlett Packard Co Location-based equipment control
JP2005539409A (ja) 2002-03-01 2005-12-22 エンテラシス ネットワークス インコーポレイテッド 位置認識データネットワーク
US7805449B1 (en) 2004-10-28 2010-09-28 Stored IQ System, method and apparatus for enterprise policy management
KR100501122B1 (ko) 2003-04-11 2005-07-18 에스케이 텔레콤주식회사 Dbm 방식 및 tcp/ip 방식 혼용 위치정보 제공 방법
US7571322B2 (en) * 2004-08-10 2009-08-04 Microsoft Corporation Enhanced cookie management
US7668830B2 (en) * 2004-11-29 2010-02-23 Nokia Corporation Access rights
US8312064B1 (en) 2005-05-11 2012-11-13 Symantec Corporation Method and apparatus for securing documents using a position dependent file system
US8935416B2 (en) * 2006-04-21 2015-01-13 Fortinet, Inc. Method, apparatus, signals and medium for enforcing compliance with a policy on a client computer
EP2153340A4 (en) * 2007-05-08 2015-10-21 Riverbed Technology Inc HYBRID SEGMENT ORIENTED FILE SERVER, AND WAN ACCELERATOR
US8613108B1 (en) 2009-03-26 2013-12-17 Adobe Systems Incorporated Method and apparatus for location-based digital rights management
US8280958B2 (en) 2009-07-13 2012-10-02 International Business Machines Corporation List passing in a background file sharing network
US20110247074A1 (en) 2010-03-30 2011-10-06 Manring Bradley A C Metadata-based access, security, and compliance control of software generated files
US8676593B2 (en) 2010-09-23 2014-03-18 International Business Machines Corporation Geographic governance of data over clouds
US8656454B2 (en) 2010-12-01 2014-02-18 Microsoft Corporation Data store including a file location attribute
US8805956B1 (en) * 2011-09-27 2014-08-12 Trend Micro, Inc. Data leakage prevention in cloud-endpoint model
US8863299B2 (en) 2012-01-06 2014-10-14 Mobile Iron, Inc. Secure virtual file management system
US8954479B2 (en) 2012-06-13 2015-02-10 International Business Machines Corporation End-to-end interoperability and workflows from building architecture design to one or more simulations
US9514327B2 (en) * 2013-11-14 2016-12-06 Intralinks, Inc. Litigation support in cloud-hosted file sharing and collaboration

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0715243A1 (en) * 1994-11-23 1996-06-05 Xerox Corporation System for controlling the distribution and use of digital works having a fee reporting mechanism
US20040044697A1 (en) * 2002-08-28 2004-03-04 Nixon Michael L. Systems and methods for distributing, obtaining and using digital media files
US7958148B2 (en) * 2004-11-17 2011-06-07 Iron Mountain Incorporated Systems and methods for filtering file system input and output
CN101661540A (zh) * 2008-08-29 2010-03-03 富士施乐株式会社 信息管理方法和信息管理系统
CN102999729A (zh) * 2011-09-13 2013-03-27 联想(北京)有限公司 文件管理方法及文件管理系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JEFFREY LOTSPIECH: "《Computer science》", 15 April 1997 *
NOBODY: "《The digital property rights language manual and tutorial》", 25 April 2001 *
何泾沙; 徐菲; 徐晶: "《基于位置的服务中用户隐私保护方法》", 《北京工业大学学报》 *

Also Published As

Publication number Publication date
BR112017005796A2 (pt) 2017-12-12
WO2016069511A1 (en) 2016-05-06
US20160125195A1 (en) 2016-05-05
EP3213249B1 (en) 2020-10-21
BR112017005796B1 (pt) 2022-12-20
CN107077576B (zh) 2020-03-10
US9424436B2 (en) 2016-08-23
EP3213249A1 (en) 2017-09-06

Similar Documents

Publication Publication Date Title
US20200128073A1 (en) Synchronization of permissioned content in cloud-based environments
US11082226B2 (en) Zero-knowledge identity verification in a distributed computing system
US9965644B2 (en) Record level data security
US8396932B2 (en) Apparatus and method for efficiently managing data in a social networking service
US9053165B2 (en) Structured content item synchronization
US20200401554A1 (en) Selective data migration and sharing
US20200287719A1 (en) Zero-knowledge identity verification in a distributed computing system
EP3571625B1 (en) Security for accessing stored resources
US20110282944A1 (en) Systems and methods for content sharing across enterprise social networks
US20130268740A1 (en) Self-Destructing Files in an Object Storage System
CN107077576A (zh) 网络上的操作限制实施
US20090234880A1 (en) Remote storage and management of binary object data
US10666708B1 (en) Systems and methods for updating web pages using static resource version pinning
CA3088147C (en) Data isolation in distributed hash chains
US20200296140A1 (en) Provision of policy compliant storage for did data
US10356026B2 (en) Data management in a distributed computing environment
CN107077572B (zh) 基于操作到期数据的访问控制
US20220385645A1 (en) Bootstrapping trust in decentralized identifiers
WO2019245807A1 (en) Metric-based content editing system
CN107077573A (zh) 基于请求者位置的访问控制
JP5733134B2 (ja) アクセス制御プログラム、アクセス制御方法及びアクセス制御装置
US10698629B2 (en) Systems and methods for locality management
US20170220819A1 (en) Information exchange gateway
US20160259810A1 (en) Global file index
US20200042944A1 (en) Scalable system for dynamic user audience determination

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant