基于操作到期数据的访问控制的制作方法

文档序号:11530845阅读:356来源:国知局
基于操作到期数据的访问控制的制造方法与工艺



背景技术:

计算系统和相关联的网络已经改变了人类工作,娱乐和交流的方式。我们生活的几乎每一个方面都受到计算系统的某种影响。网络的激增已经允许计算系统共享数据和通信,大大增加信息访问。因此,目前的时代通常被称为“信息时代”。

然而,在一些情况下,期望限制对数据的访问。例如,数据通常受到限制,因此只能由某些个人访问。因此,这些个人在访问数据之前必须进行验证。在其他情况下,基于位置来限制数据。例如,一些数据被限制在某些地理地域(territory)内。可以出于各种原因(例如法律,规章,税务或安全原因)执行将数据限制到特定地理区域。在一些情况下,数据具有与数据相关联的特定到期时间,以便限制何时可以使用数据。

本文要求保护的主题不限于解决任何缺点或仅在诸如上述环境中操作的实施例。而是,仅提供该背景以示出其中可以实践本文所描述的一些实施例的一个示例性技术领域。



技术实现要素:

这里描述的至少一些实施例涉及基于请求者的位置和文件系统实体的操作到期数据来控制对文件系统实体的访问。操作到期数据和位置数据与文件系统实体(例如,文件,目录,分区或盘)相关联,使得文件系统实体和操作到期数据与位置数据一起被原子地移动或拷贝。在接收到对文件系统实体执行操作的请求时,系统标识请求者的位置状态。然后,系统标识对应于位置状态并且与所请求的操作相关联的到期数据。然后,系统使用标识的到期数据来确定是否允许所请求的文件操作。

本发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于辅助确定所要求保护的主题的范围。

附图说明

为了描述其中可以获得上述和其他优点和特征的方式,将通过参考附图来给出对各种实施例的更具体的描述。应当理解,这些附图仅描绘了示例性实施例,因此不被认为是限制本发明的范围,将通过使用附图以附加的特征和细节来描述和解释实施例,其中:

图1抽象地示出其中可以采用本文所述的一些实施例的计算系统;

图2示出了其中请求系统请求对源系统的文件系统内的文件系统实体执行操作的系统;

图3示出了文件系统实体环境,其中文件系统实体和对应位置数据和操作到期(expiry)数据以这样的方式相关联:如果文件系统实体被拷贝或移动,则对应位置数据和操作到期数据也分别被原子拷贝或移动。

图4示出了表示图3的位置数据和操作到期数据的示例的补充数据;

图5抽象地示出了表示图4的任何地域字段的示例的地域字段;

图6示出了用于基于请求者的位置和操作到期数据来控制对数据的访问的方法的流程图;以及

图7示出了用于基于请求者的位置状态以及基于操作特定的到期数据来控制对文件系统实体的访问的更具体的方法。

具体实施方式

本文描述的至少一些实施例涉及基于请求者的位置和文件系统实体的操作到期数据来控制对文件系统实体的访问。操作到期数据和位置数据与文件系统实体(例如,文件,目录,分区或盘)相关联,使得文件系统实体和操作到期数据与位置数据一起被原子地移动或拷贝。一旦接收到对文件系统实体执行操作的请求,系统标识请求者的位置状态。然后,系统标识对应于位置状态并且与所请求的操作相关联的到期数据。然后,系统使用标识的到期数据来确定是否允许所请求的文件操作。在一些实施例中,针对该位置状态的所标识的到期数据列出操作本身的到期,使得即使对于相同的请求者位置状态以及对于正在被操作的相同文件系统实体,一个操作可能具有与另一操作不同的到期。将参照图1描述计算系统的一些介绍性讨论。然后,将参照随后的附图描述访问控制的结构和使用。

计算系统现在越来越多地采取各种各样的形式。计算系统可以例如是手持设备,家用电器,膝上型计算机,台式计算机,大型机,分布式计算系统,数据中心,或甚至通常不被认为是计算系统的设备,诸如可穿戴设备(例如眼镜)。在本说明书和权利要求书中,术语“计算系统”被广义地定义为包括任何设备或系统(或其组合),其包括至少一个物理和有形处理器以及物理和有形存储器,其上能够具有可由处理器执行的可执行指令。存储器可以采取任何形式,并且可以取决于计算系统的性质和形式。计算系统可以分布在网络环境上并且可以包括多个组成计算系统。

如图1所示,在其最基本的配置中,计算系统100通常包括至少一个硬件处理单元102和存储器104。存储器104可以是物理系统存储器,其可以是易失性,非易失性,或两者的某种组合。术语“存储器”在这里也可以用于指非易失性大容量存储器,例如物理存储介质。如果计算系统是分布式的,则处理,存储器和/或存储能力也可以是分布式的。如本文所使用的,术语“可执行模块”或“可执行组件”可以指可以在计算系统上执行的软件对象,例程或方法。本文描述的不同组件,模块,引擎和服务可以被实现为在计算系统上执行的对象或进程(例如,作为单独的线程)。

在下面的描述中,参考由一个或者多个计算系统执行的动作来描述实施例。如果这些动作以软件实现,则(执行动作的关联计算系统的)一个或者多个处理器响应于已经执行的计算机可执行指令来引导计算系统的操作。例如,这样的计算机可执行指令可以在形成计算机程序产品的一个或者多个计算机可读介质上实现。这种操作的示例涉及数据的操纵。计算机可执行指令(和被操纵的数据)可以存储在计算系统100的存储器104中。计算系统100还可以包含通信信道108,其允许计算系统100与其他计算系统通信,例如,计算系统100还包括显示器,其可以用于向用户显示视觉表示。

本文描述的实施例可以包括或利用包括计算机硬件的专用或通用计算系统,诸如例如一个或者多个处理器和系统存储器,如下面更详细地讨论的。本文描述的实施例还包括用于携带或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可以由通用或专用计算系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是物理存储介质。携带计算机可执行指令的计算机可读介质是传输介质。因此,作为示例而非限制,本发明的实施例可以包括至少两种截然不同种类的计算机可读介质:存储介质和传输介质。

计算机可读存储介质包括ram,rom,eeprom,cd-rom或其它光盘存储器,磁盘存储器或其它磁存储设备和有形的存储介质,其可用于以有形存储介质以计算机可执行指令或数据结构的形式的存储所需程序代码的任何其它物理,其可以由通用或专用计算系统访问。

“网络”被定义为使得能够在计算系统和/或模块和/或其他电子设备之间传输电子数据的一个或者多个数据链路。当通过网络或另一通信连接(硬连线,无线或硬连线或无线的组合)向计算系统传送或提供信息时,计算系统将连接适当地视为传输介质。传输介质可以包括可以用于以计算机可执行指令或数据结构的形式携带期望的程序代码装置,其可以由通用或专用计算系统访问的网络和/或数据链路访问。上述的组合也应包括在计算机可读介质的范围内。

此外,在到达各种计算系统组件时,计算机可执行指令或数据结构形式的程序代码装置可以从传输介质自动传输到存储介质(反之亦然)。例如,通过网络或数据链路接收的计算机可执行指令或数据结构可以缓存在网络接口模块(例如,“nic”)内的ram中,然后最终传送到计算系统ram和/或较不易失存储介质。因此,应当理解,存储介质可以被包括在也(或甚至主要)利用传输介质的计算系统组件中。

计算机可执行指令包括例如当在处理器处执行时使得通用计算系统,专用计算系统或专用处理设备执行某一功能或一组功能的指令和数据。计算机可执行指令可以是例如在由处理器直接执行之前所经历的一些转换(诸如编译)的二进制或甚至指令,诸如汇编语言的中间格式指令,或甚至源代码。虽然已经用对结构特征和/或方法动作专用的语言描述了主题,但是应当理解,所附权利要求中定义的主题不一定限于上述描述的特征或动作。相反,所描述的特征和动作作为实现权利要求的示例形式被公开。

本领域技术人员将理解,本发明可以在具有许多类型的计算系统配置的网络计算环境中实践,包括个人计算机,台式计算机,膝上型计算机,消息处理器,手持设备,多处理器系统,基于微处理器或可编程消费电子产品,网络pc,小型计算机,大型计算机,移动电话,pda,寻呼机,路由器,交换机,数据中心,可穿戴设备(例如眼镜)等。本发明还可以在分布式系统环境中实施,其中通过网络链接(通过硬连线数据链路,无线数据链路,或通过硬连线和无线数据链路的组合)的本地和远程计算系统都执行任务。在分布式系统环境中,程序模块可以位于本地和远程存储器存储设备中。

图2示出了包括请求系统201和源系统202的系统200。具体地,请求系统201向源系统202提交请求231,以对源系统的文件系统实体执行操作。这种操作的示例可以包括例如读取操作,更新操作,拷贝操作和删除操作。文件系统实体可以是例如磁盘,分区,目录或最基本的文件系统实体——文件。

请求系统201可以是计算系统(在这种情况下请求系统201)并且可以如上面针对图1的计算系统100所描述的那样被构造。如果是计算系统,请求系统201在其上操作操作系统210。源系统202包括维护构成多个文件系统实体222的文件系统221的操作系统220。例如,文件系统221被示为包括多个文件系统实体222,包括文件系统实体222a,文件系统实体222b,文件系统实体222c,以及由椭圆222d表示的潜在的许多其他文件系统实体。源系统202同样可以如上面针对图1的计算系统100所描述的那样被构造。

图3示出了文件系统实体环境300。文件系统实体环境300包括文件系统实体301以及位置数据302和操作到期数据303。此外,位置数据302和操作到期数据303是与虚线框304表示的文件系统实体301相关联。该关联304使得文件系统实体301,位置数据302和操作到期数据303一起被原子地移动或拷贝。作为示例,文件系统实体301可以是图2的文件系统实体222中的任一个。可以为多个文件系统实体中的每一个提供类似的文件系统实体环境300,使得文件系统实体具有相关联的位置数据和操作到期数据,如果文件系统实体分别被移动或拷贝,则该位置数据和操作到期数据利用文件系统实体被原子地移动或拷贝。

关联304可以根据文件系统而不同。在一个示例中,其中文件系统实体是文件,通过将位置数据和操作到期数据包括在文件的替代数据流内来实现关联304。这样可能适合于例如基于新技术文件系统(ntfs)的文件系统。作为另一示例,可以通过将位置数据和操作到期数据包括作为文件系统实体的一个或多个属性来完成关联304。例如,在基于inode的文件系统(例如xfs,zfs和reiser4)中,可以使用扩展文件属性针对文件存储此位置数据和操作到期数据。

对于不向给定文件系统实体条目的内容(诸如fat16,fat32和exfat)提供扩展的文件系统,可以使用后退(fallback)方法,其中将位置数据和操作到期数据写入到如文件系统实体的相同的目录中的单独的文件在与(例如,使用适当的扩展)。虽然这不如其他方法那么鲁棒,但它为遗留系统提供了一定程度的互操作性,尽管基于位置的数据访问实施和基于操作到期的访问实施将受到消费操作系统的控制。

对在此描述的原理来说,如何在文件系统实体301与位置数据302和操作到期数据303之间进行关联不重要。可以说,不管如何进行关联,关联与底层文件系统或环境兼容,并且被做成使得如果文件系统实体301被移动或拷贝,则位置数据302和操作到期数据303也被移动或拷贝。

图4示出了表示图3的位置数据302和操作到期数据303的补充数据400。补充数据400包括各种字段,其是可以包括在各种实施例中的示例。不要求这里描述的位置数据302或操作到期数据303包括针对补充数据400描述的字段的全部或甚至其中的一些。

补充数据400包括签名401,该签名401可能允许元数据被标识为属于时间限制的访问。版本字段402可以标识版本号,以便允许本文所描述的原理的进步。位置原点字段403可以标识文件系统实体起源的地域。这在访问或操作到期可以取决于请求者的位置是否是发起文件系统实体的相同地域的情况下可能是有用的。

补充数据400还包括实体生存时间字段410,如果存在的话,其可以用于定义文件系统实体本身的生存时间,而不管请求者的位置状态如何。在一个示例中,生存时间字段410可以包括文件到期字段411和删除指示符412。例如,文件到期字段411可以是无符号长整数,并且删除指示符412可以是布尔值。

当被评估时,仅作为示例,签名长整数411中的负值指示对应文件系统实体已经到期,并且仅适合于删除操作。布尔412表示如果文件系统实体被发现已经到期,则文件系统实体是否被自动删除。在该示例中,有符号长整数411中的零值指示文件系统实体当前不具有到期时间。有符号长整数411中的正值表示到期时间,其可以与当前时间进行比较,以确定文件系统实体是否已经到期。再次,如果使用有符号长整数411来指示文件系统实体已经到期,则评估布尔412以确定在检测到文件系统实体已经到期时是否要自动删除文件系统实体。

补充数据400还包括地域期满字段420。在一个示例中,文件生存时间字段410和地域期满字段420中的至少一个(以及潜在的两者)将存在于补充数据400内。地域期满字段420包括多个地域字段,每个地域字段用于对应的地域。例如,地域期满字段420被示为包括三个地域字段421,422和423。然而,椭圆424象征性地表示在地域期满字段420内可以存在任何数量的地域字段。作为示例,每个地域字段(421至424)可以使用任何手段标识对应的国家。这种标识的示例可以包括联合国国家代码。在一个实施例中,地域字段之一是默认地域字段,如果请求者的位置状态是未知的或者不存在于具有地域字段的任何其他地域内,则应用该默认地域字段。

图5抽象地示出了表示图4的地域字段421至424中的任一个的示例的地域字段500。地域字段500包括多个操作字段。具体地,地域字段500被示为包括四个操作字段510,520,530和540。然而,椭圆550表示在地域字段内可以存在任何数量的操作字段。操作的示例可以包括读取,拷贝,更新和删除。每个操作到期字段510,520,530和540分别包括相应的操作到期指示符字段511,521,531和541以及删除指示符字段512,522,532和542。如果来自其中指示请求者具有对应于在地域期满字段420中表示的地域之一的位置状态的请求,则标识所请求的操作以确定相应地域字段的哪个操作到期字段(例如,421和500)用于定义操作是被允许还是不再被允许。再次,在一个实施例中,每个操作到期指示符字段511,521,531和541可以是无符号长整数,并且每个删除指示符字段512,522,532和542可以是布尔值。

当被评估时,相应操作到期指示符字段510,520,530,540的有符号长整数的负值指示在给定请求者的位置状态下对于对应文件系统实体的操作已经到期,并且仅仅在允许给定请求者的位置状态时适合于删除操作。布尔表示如果文件系统实体被发现已经到期,则文件系统实体是否被自动删除。在该示例中,有符号长整数的零值表示在给定请求者的位置状态的情况下,对相应文件系统实体的相应操作当前不具有到期时间。有符号长整数的正值表示到期时间,其可以与当前时间进行比较,以确定在给定请求者的位置的情况下对于文件系统实体的相应操作是否已经到期。再次,如果使用有符号长整数来指示在给定请求者的位置的情况下对文件系统实体的操作已经到期,则评估布尔以确定是否要自动删除文件系统实体。

图6示出了用于基于请求者的位置和到期数据来控制对数据的访问的方法600的流程图。方法600可以例如由源系统202执行,以便控制对其文件系统221内的一个或多个文件系统实体222的访问。因此,作为示例可以频繁参考图2来描述方法600。

在源系统接收对文件系统实体执行操作的请求(动作601)时启动方法600。例如,在图2中,源系统202从请求系统201接收请求231。例如,假设请求231要对文件系统实体222a执行读取操作。

源系统然后标识与发出请求的请求者相关联的位置状态(动作602)。例如,在图2中,源系统202将确定请求实体201的位置状态。在不能确定请求者的位置的情况下,位置状态可以是“未知的”。位置状态还可以是请求者当前所处的特定位置或地域。

然后,源系统标识对应于位置状态并且与所请求的操作相关联的到期数据(动作603)。例如,参考图2,假设文件系统实体222a被请求在其上操作,并且文件系统实体222a包括图3的文件系统实体环境300。在这种情况下,适当的补充数据(表示为图4的补充数据400)可以被访问(例如,解串行化)。给定位置状态,可以定位补充数据400的适当的地域字段(例如,421,422,423)。此外,给定所请求的操作,适当的操作字段被定位(例如,如果地域字段500应用,则为510,520,530或540)。

然后使用所标识的到期数据来确定在文件系统实体上是否允许所请求的操作(判定框604)。例如,如上所述,如果(判定框604中为“否”)操作字段(例如,字段510)的无符号长整数(例如,字段511)为负或当前时间在操作字段中表示的时间之后,则拒绝所请求的操作(动作605)。例如,这可能涉及源系统阻止对文件系统实体的操作。另一方面(判定框604中为“是”),如果操作字段510的无符号长整数511是零或当前时间在操作到期字段中表示的时间之前,则允许所请求的操作(操作606)。

如果操作被拒绝(在判定框604中为“否”),则在操作字段(例如,510)的到期删除字段(例如,512)被用于确定是否要自动删除文件系统实体(判定框607)。如果是(判定框607中为“是”),则删除文件系统实体(动作610)。否则,该方法针对所请求的操作结束(动作609)。文件系统实体保留,但是在其上操作的请求仍然被拒绝。

在允许所请求的操作的情况下(判定框604中为“是”),方法600还可以包括使得在文件系统实体上执行所请求的操作。然后,源系统可以确定文件系统实体是否应当被转码,以便与请求系统201的操作系统210兼容(判定框611)。在文件系统操作是删除,读取或更新操作的情况下,可能不需要转码(判定框611中为“否”),并且该方法结束(动作609)。

然而,在拷贝操作的情况下(在判定框611中为“是”),取决于文件系统实体环境300在操作系统210和220之间是否相同,可以对文件系统实体的拷贝版本进行转码(动作612)。如果它们不相同,则执行转码,使得位置数据302,操作到期数据303(即,补充数据400)和文件系统实体301以适合于请求实体的操作系统210,或请求者要使用文件系统实体的最终操作系统的方式相关联。例如,文件系统实体的副本可以具有从备选数据流(如果操作系统210未标识)拷贝到文件属性的补充数据。此外,序列化格式可能会更改。如果文件系统实体以源操作系统220中未被请求操作系统210(或请求者打算使用文件系统实体的操作系统)标识的方式串行化,则以该形式的转码或重新序列化可能会执行。

图7示出了用于基于请求者的位置状态并且基于操作特定的到期数据来控制对文件系统实体的访问的更具体的方法700。在接收到请求时(动作701),启动方法700。然后访问用于相应文件系统实体的补充数据400(在图7中称为“时间和位置元数据(m)”)(动作702)。这可能涉及将补充数据400解串行化。

然后确定请求者的位置状态(动作703)。动作703是图6的动作602的示例。在不能确定请求者的位置的情况下,位置状态可能是“未知的”。

然后确定在补充数据400中是否存在任何实体生存时间数据(例如,字段410被有效地填充)(动作704)。如果存在(判定框704中为“是”),则方法700进行动作705至715(其中一些是有条件的),这在上文中没有参照图6进行描述。

具体来说,如果实体生存时间数据的有符号长整数等于零(在判定框705中为“是”),则这意味着文件系统实体永不到期,因此允许操作(动作706)。另一方面(判定框705中为“否”),如果有符号长整数为负(判定框707中为“是”),则确定文件系统实体已经到期(动作708)。在这种情况下,评估文件删除指示符412(判定框709)。如果布尔值为真(在判定框709中为“是”),则从磁盘删除文件系统实体(动作710),并且中止(abort)操作(动作711)。否则,如果布尔值为假(判定框709中为“否”),则中止操作(动作711),而不删除文件系统实体(旁路动作710)。

如果有符号长整数不为零(判定框705中为“否”)且不为负(判定框707中为“否”),则将有符号长整数被评估为日期/时间戳(动作712)。日期/时间戳的示例是unix日期/时间戳。如果当前时间大于日期/时间戳(判定框713中为“是”),则再次确定该文件已到期(动作714),并且再次评估删除指示符412(判定框709)。再次,如果设置了文件删除指示符412(在判定框709中为“是”),则删除文件系统实体(动作710),并且中止所请求的操作(动作711)。如果未设置删除指示符412(判定框709中为“否”),则中止所请求的操作(动作711),而不删除文件系统实体。如果有符号长整数为正(判定框705和707中为“否”),并且当前时间小于日期/时间戳(判定框715中为“否”),则允许所请求的操作继续(动作715)。

返回到判定框704,如果补充数据不包括有效填充的实体存活时间字段410(判定框704中为“否”),则确定(判定框716)位置状态的请求者是未知的或否则不在地域字段420中的地域列表内(判定框716中为“否”)。在这种情况下,默认到期规则集用于操作(动作717)(图7的“到期规则集”对应于图4的地域字段(例如,421至424))。例如,在一个实施例中,可以在请求者的地域是未知的或不在其他列出的地域内的情况下使用地域字段421。如果请求者的位置是对应于与地域字段相对应的实际地域的特定位置(判定框716中为“是”),则使用针对特定地域的到期规则集(动作718)。例如,地域字段421对应于未知位置状态(即,是默认规则集),而地域字段422可对应于英国。在这种情况下,如果请求者被确定位于英国境内,则将使用地域字段422。

在任何情况下,无论通过默认规则集(动作717)还是通过使用地域规则集(动作718),获取规则集,并且获取相关操作到期字段。例如,如果所请求的操作是拷贝操作,并且操作字段510用于拷贝操作。操作到期指示符字段511将被访问和评估(动作719)。这将对应于图6的动作603。

具体来说,如果操作到期指示符字段的有符号长整数等于零(在判定框720中为“是”),这意味着给定请求者的位置状态,文件系统实体的操作永不到期(确定721),从而允许操作。另一方面(判定框720中为“否”),如果有符号长整数为负(判定框722中为“是”),则在给定请求者的位置状态的情况下,确定对文件系统实体的操作已经到期(动作723)。在这种情况下,评估删除指示符字段(例如,对于操作字段510的512)(判定框724)。如果布尔值为真(在判定框724中为“是”),则从磁盘删除文件系统实体(动作725),并且中止操作(动作726)。否则,如果布尔值为假(判定框724中为“否”),则中止操作(动作726),而不删除文件系统实体(旁路动作725)。

如果有符号长整数不为零(判决框720中为“否”)也不为负(在判决框722中为“否”),则将有符号长整数作为日期/时间戳进行评估(动作727)。再次,日期/时间戳的示例是unix数据/时间戳。如果当前时间大于日期/时间戳(在判定框728中为“是”),则再次确定文件系统实体上的操作已到期(动作729),并且再次评估删除指示符字段512(判定框724)。再次,如果设置了删除指示符412(在判定框724中为“是”),则删除文件系统实体(动作725),并且中止请求的操作(动作726)。如果未设置删除指示符字段512(在判定框724中为“否”),则中止所请求的操作(动作726),而不删除文件系统实体。如果有符号长整数为正(判决框720和722中为“否”),并且当前时间小于日期/时间戳(判决框728中为“否”),则允许所请求的操作继续(动作730)。

因此,本文所描述的原理允许数据主权和到期数据以单个操作的粒度来履行,使得对文件系统实体(例如,文件)的操作(及其期满)可以由请求者的位置来限制。此外,当允许操作并且使得文件系统的副本可用时,文件系统实体环境可以被转码,使得请求系统还可以访问位置数据和操作到期数据,由此进一步执行关于访问和期满的数据主权规则。

已经相对于图4描述了补充数据的示例结构,现在将分别参见表1a至3描述三个特定的串行化实现。下面的表1a和1b示出了位置数据的二进制文件格式。表1a示出了示例文件头格式。表1b示出了支持数据结构的示例。

表1a

文件头

表1b

支持数据类型

表2示出了通过使用java脚本对象注释(json)的位置数据的一个便携实施例。

下文表3示出通过使用扩展标记语言(xml)文档的位置数据的便携实例。

表3

因此,已经描述了具有由地域和操作特定生存时间强制执行的数据的保留主权的机制。

权利要求支持部分

这里描述了一种用于基于请求者的位置和文件的操作到期数据来控制对文件系统实体的访问的方法。该方法包括将操作到期数据和位置数据与文件系统实体相关联的动作,使得操作到期数据和位置数据与文件系统实体一起被原子地移动或拷贝;接收对所述文件系统实体执行操作的请求的动作;标识与所述请求的请求者相关联的位置状态的动作;标识对应于所述位置状态并且与所请求的操作相关联的到期数据的动作;以及使用所标识的到期数据来确定在所述文件系统实体上是否允许所请求的操作的动作。

将操作到期日和位置数据与文件系统实体相关联的动作可以包括将操作到期日和位置数据包括在文件系统实体的替代数据流中的动作。将操作到期日和位置数据与文件系统实体相关联的动作可以包括将操作到期日和位置数据作为文件系统实体的一个或多个属性而包括的动作。

使用所标识的到期数据来确定所请求的操作是否被准许的动作可以包括:确定请求者的位置状态未知的动作;以及响应于确定所述请求者的位置状态未知,访问用于所请求的操作的默认到期规则集的动作;以及基于所述默认规则集确定是否可以执行所请求的操作的动作。当请求者的位置状态是请求者的位置时,所标识的到期数据可以被包括在文件系统实体的相关联的操作到期数据内。

使用所标识的到期数据来确定在文件系统实体上是否允许所请求的操作的动作可以包括:确定所标识的到期数据中的到期时间的动作;确定与到期时间进行比较的相关时间的动作;以及基于所述相关时间与所述到期时间的比较来确定是否确定所请求的操作是否被允许的动作。

使用所标识的到期数据来确定在文件系统上是否允许所请求的操作的动作可以包括:将所述到期数据解释为指示对于所请求的操作没有到期的动作;以及基于所请求的操作的没有到期而允许操作的动作。

使用所标识的到期数据来确定在文件系统上是否允许所请求的操作的动作可以包括:在没有参考到期时间的动作的情况下将所述到期数据解释为指示所请求的操作已经到期的动作;以及基于针对所请求的操作的到期状态拒绝操作的动作。

所述方法还包括以下步骤:如果确定允许所请求的操作,则使得所在文件系统实体上执行请求的操作的动作。在这种情况下,使得执行所请求的操作的动作可以包括:将文件系统实体转码为适合于请求者的操作系统的转码文件系统实体的动作。可选地或另外地,使得执行所请求的文件系统实体操作的动作可以包括:将文件系统实体转码为由请求者的操作系统实现的串行化实现的动作。

本文还描述了一种包括一个或多个计算机可读存储介质的计算机程序产品,其上具有一个或多个计算机可执行指令,所述计算机可执行指令被构造为使得当由计算系统的一个或多个处理器执行时,计算系统响应于接收到对由操作系统管理的文件系统实体执行操作的请求而执行以下操作,所述文件系统实体将操作到期数据和位置数据与所述文件系统实体相关联,使得所述操作到期数据以及位置数据与文件系统实体一起被原子地移动或拷贝:标识与请求的请求者相关联的位置状态的动作;标识对应于所述位置状态的与所请求的操作相关联的到期数据的动作;以及使用所标识的到期数据来确定在所述文件系统实体上是否允许所请求的操作的动作。

计算机程序产品还可以包括计算机可执行指令,其被构造为使得当由计算系统的一个或多个处理器执行时,使得计算系统执行以下操作:标识是否存在与作为所请求的测试的目标的文件系统实体相关联的文件到期数据的动作,其中如果存在文件到期数据,则使用文件到期数据来确定是否允许对文件的操作。如果文件到期数据不允许对文件进行操作,则参考文件删除数据以确定是否删除文件系统实体,其中如果文件删除指示文件系统实体应被删除,则删除文件系统实体。

本文还描述了一种计算系统,包括:一个或多个计算机可读存储介质,其上具有由计算系统的操作系统管理的多个文件系统实体,多个文件中的至少一个特定文件系统实体具有与所述特定文件系统实体相关联的相关联操作到期数据位置数据,使得所述操作到期数据和所述位置数据与所述特定文件系统实体一起被原子地移动或拷贝;和一个或多个处理器。一个或多个计算机可读介质上可以具有计算机可执行指令,其被配置为使得当由一个或多个处理器执行时,使得计算系统响应于接收到对特定文件系统位置执行操作的请求执行以下动作:标识与所述请求的请求者相关联的位置的动作;以及使用所述位置数据来确定在所述特定文件系统实体上是否允许所请求的文件操作的动作。

在不脱离本发明的精神或本质特征的情况下,本发明可以以其它具体形式实施。所描述的实施例在所有方面都被认为仅是说明性的而不是限制性的。因此,本发明的范围由所附权利要求书而不是前面的描述来表示。在权利要求的等同物的含义和范围内的所有改变将被包括在其范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1