对集合中的资源的持久性密钥访问的制作方法

文档序号:6495711阅读:170来源:国知局
对集合中的资源的持久性密钥访问的制作方法
【专利摘要】一种方法包括从第一用户设备接收访问包括第二用户账户的数据的第一资源的第一请求,对数据的访问被限于授权用户,第一请求包括授权标志并且与识别第一用户的第一用户标识符相关联;确定第一用户标识符没有识别授权用户并且作为响应:基于授权标志来确定第一用户标识符识别授权用户并且向第一用户设备提供第一资源;接收对第二用户账户的数据的访问的第二请求,该第二请求与第一用户标识符相关联;以及基于第一用户标识符被确定为识别授权用户,响应于第二请求提供对第二用户账户的数据的访问。
【专利说明】对集合中的资源的持久性密钥访问
[0001]优先权声明
[0002]本申请要求于2011年6月27日提交的美国临时专利申请序列号N0.61/501,642的优先权,特此通过引用合并其全部内容。
【技术领域】
[0003]本说明书涉及计算机数据访问管理。
【背景技术】
[0004]数字时代已使得对电子信息的创建和分发成为许多人日常生活的一部分。用户可以创建数据储存库、电子文档、数字多媒体文件或其他形式的数据,并且与其他用户共享它们。在一些情况下,共享这样的数据的用户使用访问控制特征来限制或另外控制其他用户对该数据的访问。
[0005]用户可以通过指定批准的用户、用户账户和/或密码来控制对其数据的访问。例如,具有用于在线管理照片的照片管理站点中的账户的用户可以指定能够访问该用户的在线照片的特定用户、或特定用户账户,并且可以进一步指定用户在可以准予访问之前必须输入的密码。这样的方法可以提供期望的访问控制,但是还会涉及用于添加和删除用户账户、管理密码、编辑权限以及其他这样的管理任务的管理。当管理用户希望独立地控制大量访问用户对大量文件的访问时,这些任务会成倍增加。

【发明内容】

[0006]本说明书描述了与管理对用户的用户数据并且如该用户所指定的访问有关的技术。
[0007]总的来说,在本说明书中所述的主题的一个创新性方面可以以包括下述动作的方法来具体化:从第一用户设备接收访问第二用户账户的相册集合中的一个相册的第一请求,对第二用户账户的该相册的访问被限于授权用户,第一请求包括授权标志并且与识别第一用户的第一用户标识符相关联;确定第一用户标识符没有识别授权用户并且作为响应:基于授权标志确定第一用户标识符识别第二用户账户的该一个相册的授权用户并且向第一用户设备提供来自仅仅该一个相册的数据;接收对第二用户账户的相册集合的访问的第二请求,该第二请求与第一用户标识符相关联;以及基于第一用户标识符被确定为识别仅仅该一个相册的授权用户,响应于第二请求提供对第二用户账户的仅仅该一个相册的访问。本方面的其他实施例包括被配置成执行方法的动作、被编码在计算机存储设备上的相应系统、装置和计算机程序。
[0008]在本说明书中所述的主题的另一个创新性方面可以以包括下述动作的方法来具体化:从第一用户设备接收访问包括第二用户账户的数据的第一资源的第一请求,对第二用户账户的数据的访问被限于授权用户,第一请求包括授权标志并且与识别第一用户的第一用户标识符相关联;确定第一用户标识符没有识别授权用户并且作为响应:基于授权标志来确定第一用户标识符识别授权用户并且向第一用户设备提供第一资源;通过数据处理装置接收对第二用户账户的数据的访问的第二请求,该第二请求与第一用户标识符相关联;以及基于第一用户标识符被确定为识别授权用户,响应于第二请求提供对第二用户账户的数据的访问。本方面的其他实施例包括被配置成执行方法的动作、被编码在计算机存储设备上的相应系统、装置和计算机程序。
[0009]这些和其他实施例每一个可以可选地包括下述特征中的一个或多个。将授权标志与第一用户标识符相关联并且将该关联存储在访问控制数据存储中;从由与第二用户账户相关联的第二用户标识符识别的第二用户接收对授权标志的撤销;以及响应于接收对授权标志的撤销,确定第一用户标识符没有识别授权用户以阻止第一用户对数据的访问。
[0010]生成到第一资源的访问链接,该访问链接包括第一资源的资源定位符和授权标志;以及提供该访问链接作为到与第一用户标识符相关联的电子账户的通信。在一些实施方式中,生成到第一资源的访问链接包括:从由与第二用户账户相关联的第二用户标识符识别的第二用户接收第一用户标识符和指示第一用户待被准予对第一资源的访问的数据;生成供在授权标志中使用的用户标识符的哈希;以及基于授权标志来确定第一用户标识符识别授权用户包括:生成与请求相关联的第一用户标识符的哈希;将与请求相关联的第一用户标识符的哈希与授权标志相比较;以及仅当供在授权标志中使用的用户标识符的哈希和与请求相关联的第一用户标识符的哈希相匹配时才确定第一用户标识符识别授权用户。
[0011]从相应第二用户设备接收访问包括第二用户账户的数据的第一资源的相应第三请求,对第二用户账户的数据的访问被限于授权用户,第二请求中的每一个包括授权标志并且与识别相应第三用户的相应第三用户标识符相关联,以及对于每一个相应第三请求:确定由相应第三用户标识符识别的相应第三用户不是授权用户并且作为响应:基于授权标志来确定相应第三用户标识符识别授权用户;以及向相应第二用户设备提供第一资源;通过数据处理装置接收对第二用户账户的数据的访问的相应第四请求,相应第四请求与相应第三用户标识符相关联;以及基于相应第三用户标识符被确定为识别授权用户,响应于相应第四请求提供对相应第二用户账户的数据的访问。
[0012]将授权标志与相应第三用户标识符中的每一个相关联并且将该关联存储在访问控制数据存储中;从区段用户账户的管理员接收对授权标志的撤销;以及响应于接收对授权标志的撤销,确定第一用户标识符和相应第三用户标识符中的每一个没有识别授权用户以阻止第一用户和相应第三用户对数据的访问。
[0013]在一些实施方式中,基于授权标志来确定第一用户标识符识别授权用户包括仅仅响应于确定该授权标志先前尚未被用来识别授权用户,才确定第一用户标识符识别授权用户。
[0014]在一些实施方式中,基于授权标志来确定第一用户标识符识别授权用户包括仅仅响应于确定该授权标志尚未被用来将多于最大数量的其他用户识别为授权用户,才确定第一用户标识符识别授权用户。
[0015]在一些实施方式中,授权标志进一步与其他用户标识符集相关联,以及其中基于授权标志来确定第一用户标识符识别授权用户进一步基于确定第一用户标识符被包括在该用户标识符集中。
[0016]在一些实施方式中,授权标志与指示时间段的过期值相关联,其中在该时间段期间该授权标志在第一请求中的使用是有效的,并且在该时间段之后该授权标志不能被用于基于该授权标志来确定第一用户标识符识别授权用户。
[0017]可以实现在本说明书中所述的主题的特定实施例,以便实现下述优势中的一个或多个。用户可以在邀请用户查看该用户所维护的内容时仅仅通过指定通过使用授权标志准予的持久性访问和到该用户的内容的链接,来向其他用户准予持久性访问。通过以这种方式准予访问,可以消除典型所需的管理步骤(例如,指定特定用户得到访问),从而改善了用户体验。此外,用户可以指定授权标志是特定于特定用户还是对许多用户无区别的。在前者情况下,用户访问可以仅被准予给特定用户,其允许准予用户在链接被分发给其他人的情况下维护访问控制。在后者情况下,用户仅需要发布链接来便于许多用户访问。在一些实施方式中,为每一个对应授权标志生成访问列表,并且如果用户撤销授权标志,则同样地撤销通过使用撤销的标志已向用户准予的访问。这便于对特定访问列表的管理,如果授权标志(例如,无区别标志)向准予用户不打算准予访问的用户发布,则其可以是有利的。准予用户还可以对先前使用过授权标志的用户撤销访问,从而阻止先前授权的用户再次使用该
O
[0018]在附图和下面描述中阐述了在本说明书中所述的主题的一个或多个实施例的细节。根据描述、附图和权利要求,本主题的其他特征、方面和优势将变得显而易见。
【专利附图】

【附图说明】
[0019]图1是用于提供用于访问数据的持久性密钥的示例系统的示意图。
[0020]图2是用于提供用于访问数据的持久性密钥的在客户端和服务器之间的示例交互的序列图。
[0021]图3图示包括用户访问标志的示例统一资源定位符。
[0022]图4-6是用于提供用于访`问数据的持久性密钥的示例过程的流程图。
[0023]图7是示例计算机系统的示意图。
[0024]在各附图中相同的参考数字和标记指示相同元素。
【具体实施方式】
[0025]图1是用于提供用于访问数据的持久性密钥的示例系统100的示意图。如在本文所使用的,持久性密钥是用户使用来准予对数据的访问的数据,对于所述数据的访问持续超过单个实例或会话。总的来说,系统100提供了一个用户通过标志110为一个或多个其他用户准予访问电子数据105(例如,电子文档、数字相片、数字视频、数字相册、数字文件的文件夹)的访问权限的方式。尽管在本说明书中所述的示例针对数字照片,然而,可以以相似方式便于对其他类型的数字内容的访问。
[0026]在一些实施方式中,第一用户可以通过向第二用户提供到相片的特殊超链接,来准予第二用户对发在相片托管服务上的数字相片的访问。该超链接包括标志110并且引用相片托管服务。标志110是用来准予第二用户查看相片的许可的授权标志。一旦被第二用户使用,相片托管就持久存留第二用户的标识符与指示该用户已被准予对照相内容的访问的数据的关联。该关联允许第二用户稍后在不使用标志110或特殊超链接的情况下再次查看相片。[0027]再次参考图1,用户115使用客户端计算机120来生成标志110。在一些实施方式中,标志可以在客户端计算机处被生成;在其他实施方式中,标志由托管数字内容的网站的数据处理装置(例如,服务器计算机150)来生成。在一些实施方式中,标志110是识别电子数据105、数据储存库125或任何其他适当的电子数据、资源或数据集合(例如,文件、文件夹、类别、合集)的哈希或其他代码。在一些实施方式中,标志110还可以包括识别用户130的信息或从所述信息得到(例如,被哈希)。
[0028]用户115例如通过电子邮件或通过命令服务器150向用户130发送通信来向用户130提供标志110。在一些实施方式中,标志115被附加到可以被提供给用户130(例如,被复制到电子邮件或文本消息串中)的统一资源定位符(URL)或其他形式的网络地址。在图3A的描述中论述了包括标志的URL的示例。
[0029]用户130将标志110输入到在计算机135上执行的计算机应用(例如,web浏览器、文件浏览器)中作为对数据105的请求140的一部分。例如,用户130可以点击超链接(例如,包括标志110的URL)来生成对用户115期望与用户130共享的内容的超文本传输协议(HTTP)请求。
[0030]请求140通过网络145 (例如,因特网)被传输给服务器计算机150。在一些实施方式中,该请求包括发出该请求的用户的用户标识符。标识符112可以在cookie中、在URL自身中或作为标志110的一部分来传输。标识符112可以显式或隐式地被获取。例如,标识符112可以例如由已登录用户账户用户显式地包括在请求140中。替选地,用户130可以提供标识符112作为客户端计算机135或服务器计算机150的账户登录过程的一部分,并且请求140可以自动与用户130的账户和/或标识符112相关联。
[0031]服务器计算机150确定标志110对准予用户130对数据105的访问是否有效。如果标志110有效,则服务器计算机150通过提供数据105作为响应160的一部分来准予请求140。服务器计算机150还将所准予的许可与用户130的标识符112、与数据105和/或与数据储存库125相关联。例如,服务器计算机150可以与数据105相关联地存储描述已通过使用标志105被准予访问的用户的标识符的信息。在另一个示例中,服务器计算机150可以(例如,在用户标识符集合155内)与标识符112相关联地存储识别用户130已被准予访问的数据105和/或其他数据的信息。在一些实施方式中,服务器计算机150可以命令计算机135记住用户130能够访问数据105。例如,服务器计算机150可以命令计算机135将标志存储在具有或没有cookie失效日期的客户端侧cookie中。
[0032]在一些实施方式中,标志110可以对仅仅一个用户或用户组有效。例如,标志110可以包括用户标识符112的哈希。响应于请求140,服务器计算机150将标志110与和请求相关联的标识符112的哈希相比较来确定标志110对用户130是否有效。如果标志有效,则服务器150将该用户标识符与授权列表相关联(例如,将用户标识符存储在授权列表中)来将用户130识别为被授权查看用户115的账户的内容的用户。为了识别用户组,标志112可以包括每一个标识符的哈希,或替选地,可以包括对服务器150可访问的标识符列表的引用。
[0033]凭借在用户130和数据105之间关联的许可,用户130可以在不提供标志110的情况下,作出对数据105的随后请求140。在这些随后请求中,服务器计算机150确定与标识符112相关联的用户130是否先前已被准予访问数据105的许可,并且如果那样的话,通过提供数据105来准予随后请求。
[0034]在一些实施方式中,可以使标志110在预先确定的时间段内有效。例如,可以要求用户130首次在发出后30日内使用标志110,在这之后,服务器计算机150将不准予访问数据105的许可或将这样的许可与用户130相关联。在另一个示例中,可以要求用户130在未来的预定义5日时段期间(例如,在专业会议期间)使用标志,在这之前和/或之后,可以拒绝标志110。
[0035]在一些实施方式中,标志110可以是一次性使用标志。例如,服务器计算机150可以基于标志110来准予请求140,并且准予来自用户130的未来请求。服务器150然后将该标志存储在过期标志列表中。此后,服务器计算机150通过针对过期标志列表来检查标志110,基于相同标志110来拒绝来自其他用户的随后请求。
[0036]用户115可以在稍后时间与服务器计算机150交互来撤销与标志110相关联的许可。例如,用户115可以从服务器计算机150删除标志110,并且服务器计算机150可以通过基于标志110移除先前已在数据105/用户115的用户账户和用户标识符之间准予的许可来作出响应。
[0037]图2是用于提供对数据的持久性密钥访问的在客户端计算机202和服务器计算机204之间的示例交互200的序列图。在一些实施方式中,客户端计算机202可以是客户端计算机135,以及服务器计算机204可以是图1的服务器计算机150。
[0038]客户端计算机202发出对数据(例如,数据105)的请求210。客户端计算机202还发送包括用户标识符(例如,标识符112)和标志(例如,标志110)的传输215。例如,请求可以是通过访问发送给客户端计算机202的链接来生成的HTTP请求。
[0039]服务器计算机204确定标志和/或标志与用户标识符的组合对应于所请求的数据,并且准予220所识别的用户对数据的访问。然后,以传输225将数据提供给客户端计算机 202。
[0040]客户端计算机202发出对数据的随后请求235,以及包括用户标识符而没有标志的传输240。例如,在用户响应于请求210查看第一相片之后,用户可以请求查看来自相同用户账户的另一个相片。
[0041]服务器计算机204确定245所识别的用户先前已被准予访问用户账户的数据的许可,因此,通过以传输255向客户端计算机发送数据来作出响应。
[0042]图3图示了包括用户访问标志310的示例统一资源定位符(URL) 300。对其中标志被附加作为查询参数的URL的使用是用户可以向另一个用户准予对内容的访问的一个示例方式。也可以使用其他适当的通信协议来便于对用户内容的访问。
[0043]URL300包括位置地址320和文件标识符330。URL300还包括密钥340和标志310。在使用中,密钥340和标志310 —起形成服务器计算机(例如,服务器计算机150)处理来基于标志310所准予的许可确定是否准予对文件330的访问的查询字符串字段-值对。在一些实施方式中,可以将URL300作为图2的传输215中的请求210来提供。在一些实施方式中,可以省略文件标识符330。例如,URL300可以是通过标志310准予访问的文件夹、相册或其他资源的地址。
[0044]图4-6是用于提供用于访问数据的持久性密钥的示例过程的流程图。在一些实施方式中,在图4-6的描述中所述的过程可以由图1的服务器计算机150或图2的服务器计算机204来执行。参考图4,示例过程400在从第一用户设备接收访问第一资源的第一请求时在步骤402开始。在一些实施方式中,第一资源可以是一个用户可以与另一个共享的文件(例如,数字相片或视频)、文件夹(例如,相册或文档集合)、网页或任何其他适当的在线资源。第一请求可以包括第二用户账户的数据,对第二用户账户的数据的访问被限于授权用户。例如,第一资源可以包括第二用户的在线相册的照片,并且通过URL引用该照片。第一请求包括授权标志并且与识别第一用户的第一用户标识符相关联。例如,服务器计算机150可以从客户端计算机135接收请求140,并且请求140可以包括标志110。请求还与标识符112相关联,例如,第一用户标识符与请求一起被提供来识别请求者。
[0045]步骤404确定用户标识符是否识别授权用户。授权用户是已被授权访问第二用户的第二用户账户的内容的(用户标识符所识别的)用户。例如,服务器计算机可以访问列出授权用户的用户标识符的访问控制列表。如果在步骤404中,确定第一用户标识符识别授权用户,则提供所请求的资源。例如,服务器计算机150可以向客户端计算机135提供数据105。
[0046]如果步骤404确定第一用户标识符没有识别授权用户,则在步骤410,过程400基于标志来确定用户标识符是否识别授权用户。步骤410的确定可以以多种适当方式来完成,并且在下面更详细地被描述。
[0047]如果在步骤410,基于授权标志确定第一用户标识符识别授权用户,则在步骤406,提供所请求的资源。否则,在步骤412,拒绝该请求。
[0048]在步骤408,接收对第二用户账户的数据的访问的第二请求。然而,第二请求没有包括授权标志。因此,步骤414基于用户标识符来确定用户是否是授权用户。出于说明目的,假设第二请求与第一用户标识符相关联。例如,第一用户可能在稍后时间键入了 URL、或可能已请求了来自第二用户的账户的不同相片。由于第一用户标识符已被确定为识别授权用户,因此,在步骤416,提供所请求的资源。
[0049]然而,假设第二请求没有识别授权用户。由于与请求一起没有系统通过其可以确定用户是否应当被识别为授权用户的标志,因此,在步骤412,拒绝该请求。
[0050]在一些实施方式中,过程400还可以包括用于将授权标志与第一用户标识符相关联并且将该关联存储在访问控制数据存储中的步骤。这允许第二用户基于第二用户已发布的授权标志来管理访问控制。例如,第二用户可能已向由第一用户标识符识别的家庭成员发送了无区别授权标志,预期该家庭成员将链接和标志仅分发给其他家庭成员,其每一个由相应第三用户标识符识别。然而,假设用户的账户的内容包括幽默视频,并且该家庭成员将链接分发给其他个人,该链接此后传播开来。因此,多个其他第三用户标识符可以被确定为识别授权用户。为了管理这样的情况,第一用户借助于用户接口,可以查看已通过使用特定授权标志被准予访问的用户数。如果该用户注意到许多其他用户已被准予对该用户的账户的访问,则该用户可以只是撤销该授权标志,其进而为使用现撤销的标志被准予对该用户的账户的访问的每一个用户标识符撤销对该账户的访问。
[0051]例如,用户115可以撤销标志110来促使服务器计算机150拒绝用户130对数据105的随后请求。因此,服务器计算机在接收了对授权标志的撤销时,确定与该标志相关联的第一用户标识符没有识别授权用户,并且阻止那些用户对数据的访问。
[0052]在一些实施方式中,对特定授权标志的撤销不影响与其他授权标志相关联的其他用户标识符的访问状态。例如,如果用户发布了两个授权标志并且撤销标志中的一个,只有使用了所撤销的标志被准予对该用户的账户的访问的用户标识符的访问状态才被改变。在一些实施方式中,如果用户标识符被包括在与相应授权标志相关联的两个或更多个访问列表中,并且授权标志中的一个被撤销,则不改变该用户标识符的状态,因为其仍然在与尚未被撤销的其他标志相关联的其他授权列表中列出。
[0053]在这些实施方式的变体中,授权标志还可以与用户账户的特定内容子集相关联。例如,用户可能有多个内容集,例如虚拟相册。对于每一个内容集,用户可以指定准予对仅仅该特定内容集的访问,并且不准予对其他内容集的访问的对应标志。例如,用户可能有家庭度假相片集合和工作相关相片集合。该用户可以将到家庭相片的链接与对应标志一起发送给其家庭成员,并且可以将到工作相关相片集合的另一个链接发送给工作同事。家庭成员将仅被准予对家庭相片的访问,并且工作同事将仅被准予对工作相关相片的访问。
[0054]步骤410的确定如何作出取决于所使用的标志的类型。示例授权标志类型包括无区别、特定、时间限制和使用限制的。例如,如果标志是无区别的,则与请求一起提供的任何用户标识符将变成授权用户。替选地,如果标志是特定的(例如,指明仅用于特定用户标识符所识别的一个用户、或用户标识符集所识别的用户集),则仅仅该特定用户标识符将导致该标识符识别授权用户的确定。例如,过程400还可以包括用于将授权标志与用户标识符集相关联的步骤(例如,用户可以指定标志仅与如简档中所识别的用户的家庭成员相关联)。因此,只有在与请求相关联的用户标识符被包括在用户标识符集中时,该用户标识符才被确定为识别授权用户。
[0055]对于使用限制的标志,其中使用被限制在N个访问准予(例如,N=l、2、3或某一其他值),只有响应于确定授权标志先前尚未被用来识别授权用户超过N次,步骤410才可以确定第一用户标识符识别授权用户。例如,标志110可以是单个使用标志,其中使用标志110来请求数据105的第一用户将被准予访问和随后访问,并且试图使用标志110的另一个用户将被拒绝访问。
[0056]对于时间限制的标志,过程400的授权标志可以与指示时间段的过期值相关联,其中在该时间段期间该授权标志在第一请求中的使用是有效的,并且在该时间段之后该授权标志不能被用于基于该授权标志来确定第一用户标识符识别授权用户。例如,标志110可以对在预先确定的时间段,诸如60日内,授权用户130的请求140有效。
[0057]授权标志还可以是类型的组合,例如无区别和时间限制的;特定和时间限制的;无区别、时间限制和使用限制的;等。用户可以在生成标志时指定这样的参数。
[0058]图5是用于生成包括授权标志的访问链接的示例过程的流程图。示例过程500用来为特定用户标识符生成特定标志。
[0059]过程500在接收第一用户标识符和指示第一用户待被准予对第一资源的访问的数据时在步骤502开始。例如,用户115可以使用客户端计算机120来与服务器计算机150交互以指示用户130待被准予对数据105的访问。
[0060]在步骤504,生成到第一资源的访问链接。该访问链接包括第一资源的资源定位符和授权标志。例如,可以生成URL300,其包括由位置地址320和文件标识符330构成的资源定位符以及授权标志310。服务器计算机150生成第一用户标识符的哈希以供在授权标志中使用。例如,授权标志310可以是第一用户标识符的哈希、或可以包括第一用户标识符的哈希和其他数据(例如,URL的哈希或URL所引用的内容的哈希(例如,图像文件的哈希))。
[0061]在步骤506,可以提供该访问链接作为到与第一用户标识符相关联的电子账户的通信。例如,用户115可以发送链接作为到第二用户130的电子邮件账户的电子邮件。在另一个示例中,用户115可以发送链接作为文本或即时消息、作为用户130可以键入计算机135的书面(例如,纸式消息)、或以能够将标志传送给用户130的任何其他适当形式来发送。
[0062]图6是用于使用图5的过程所生成的标志来确定请求是否与授权用户相关联的示例过程的流程图。过程600在步骤602开始,其中生成与请求相关联的第一用户标识符的哈希。例如,当用户选择URL链接时从用户设备接收了请求时,服务器计算机150生成与该请求相关联的用户标识符的哈希。如上所述,用户标识符可以显式或隐式地被获取。
[0063]在步骤604,将与请求相关联的第一用户标识符的哈希与授权标志进行比较,并且在步骤608,基于该比较来确定第一用户标识符是否识别授权用户。例如,当供在授权标志中使用的用户标识符的哈希和与请求相关联的第一用户标识符的哈希相匹配时,则步骤608确定第一用户标识符识别授权用户。因此,在步骤610,提供资源。否则,如果哈希不相匹配,则在步骤612,拒绝对资源的访问。
[0064]尽管在数字照片的情境下进行了描述,然而,本公开的特征并不限于数字照片,并且可以用来访问其他类型的容器或资源集合,例如,视频播放列表、音频播放列表、网站内的网页或用户所拥有的其他容器。
[0065]在本说明书中所述的主题和操作的实施例可以以数字电子电路、或者以计算机软件、固件或硬件,包括在本说明书中公开的结构及其结构等价物、或者以以上一个或多个的组合来实现。可以将在本说明书中所述的主题的实施例实现为一个或多个计算机程序,即一个或多个计算机程序指令模块,其被编码在计算机存储介质上供数据处理装置执行或控制数据处理装置的操作。计算机存储介质可以是下述或被包括在下述中:计算机可读存储设备、计算机可读存储基片、随机或串行存取存储器阵列或设备、或以上一个或多个的组合。计算机存储介质还可以是下述或被包括在下述中:一个或多个单独物理组件或介质(例如,多个CD、盘或其他存储设备)。
[0066]可以将在本说明书中所述的操作实现为由数据处理装置对存储在一个或多个计算机可读存储设备上或从其他源接收的数据执行的操作。
[0067]用语“数据处理装置”包含用于处理数据的所有类型的装置、设备以及机器,作为示例包括可编程处理器、计算机、片上系统、或多个那些、或前述的组合。除硬件外,装置还可以包括为讨论中的计算机程序创建执行环境的代码,例如构成处理器固件、协议堆栈、数据库管理系统、操作系统、跨平台运行时间环境、虚拟机、或以上一个或多个的组合的代码。装置和执行环境可以实现各种不同的计算模型基础结构,诸如web服务、分布式计算和网格计算基础结构。
[0068]计算机程序(也被称作程序、软件、软件应用、脚本或代码)可以以任何形式的编程语言编写,包括编译或解释语言、说明性或过程性语言,并且其可以以任何形式部署,包括作为独立程序或作为模块、组件、子程序、对象或适于在计算环境中使用的其他单元。计算机程序可以但不必对应于文件系统中的文件。可以将程序存储在保持其他程序或数据的文件(例如,存储在标记语言文档中的一个或多个脚本)的一部分、专用于讨论中的程序的单个文件或者多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。可以将计算机程序部署为在一个计算机上或者在位于一个地点或跨多个地点分布并且通过通信网络互连的多个计算机上执行。
[0069]在本说明书中所述的过程和逻辑流可以由执行一个或多个计算机程序的一个或多个可编程处理器执行以通过操作输入数据并且生成输出来执行动作。适于执行计算机程序的处理器作为示例包括通用和专用微处理器两者,以及任何类型的数字计算机的任何一个或多个处理器。一般地,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的必要元件是用于根据指令执行动作的处理器和用于存储指令和数据的一个或多个存储器设备。一般地,计算机还将包括用于存储数据的一个或多个海量存储设备,例如磁盘、磁光盘或光盘,或操作地耦接以从所述一个或多个海量存储设备接收数据或向所述一个或多个海量存储设备传送数据,或两者。然而,计算机不必具有这样的设备。此外,可以将计算机嵌入另一个设备中,所述设备例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式存储设备(例如,通用串行总线(USB)闪存驱动器),仅列出一些。适于存储计算机程序指令和数据的设备包括所有形式的非易失性存储器、介质和存储器设备,作为示例包括:半导体存储器设备,例如EPR0M、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动盘;磁光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路补充,或合并入专用逻辑电路。
[0070]为了提供与用户的交互,在本说明书中所述的主题的实施例可以在具有下述的计算机上实现:用于向用户显示信息的显示设备,例如CRT (阴极射线管)或IXD (液晶显示)监视器;以及用户通过其可以向计算机提供输入的键盘和指示设备,例如鼠标或跟踪球。也可以使用其他类型的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感知反馈,例如视觉反馈、听觉反馈或触觉反馈;以及可以以任何形式,包括声学的、话音或触觉的输入,接收来自用户的输入。另外,计算机可以通过将文档发送给用户所使用的设备并且从用户所使用的设备接收文档来与用户交互;例如,通过响应于从用户的客户端设备上的web浏览器接收的请求将网页发送给该web浏览器。
[0071]在本说明书中所述的主题的实施例可以在包括下述的计算系统中实现:后端组件,例如作为数据服务器;或者中间件组件,例如应用服务器;或者前端组件,例如具有用户通过其可以与在本说明书中所述的主题的实现交互的图形用户界面或Web浏览器的客户端计算机;或者一个或多个这样的后端、中间件或前端组件的任何组合。系统的组件可以通过例如通信网络的任何形式或介质的数字数据通信互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”)、互联网络(例如,因特网)以及对等网络(例如,自组织对等网络)。
[0072]计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离并且典型地通过通信网络交互。客户端和服务器的关系依靠在各个计算机上运行并且彼此具有客户端-服务器关系的计算机程序产生。在一些实施例中,服务器向客户端设备传输数据(例如,HTML页面)(例如,出于向与客户端设备交互的用户显示数据并且从该用户接收用户输入的目的)。可以在服务器处从客户端设备接收在客户端设备处生成的数据(例如,用户交互的结果)。
[0073]图7中示出了一个这样类型的计算机的示例,其中示出了适于实现在本说明书中所述的主题的各个方面的装置或执行所述各个方面的方法的可编程处理系统(系统)710的框图。系统700包括处理器710、存储器720、存储设备730以及输入/输出设备740。组件710,720,730和740中的每一个可以例如使用系统总线750互连。处理器710能够处理用于在系统700内执行的指令。在一个实施方式中,处理器710是单线程处理器。在另一个实施方式中,处理器710是多线程处理器。处理器710能够对存储在存储器720中或存储设备730上的指令进行处理。
[0074]存储器720存储在系统700内的信息。在一个实施方式中,存储器720是计算机可读介质。在一个实施方式中,存储器720是易失性存储器单元。在另一个实施方式中,存储器720是非易失性存储器单元。
[0075]存储设备730能够为系统700提供海量存储。在一个实施方式中,存储设备730是计算机可读介质。在各种不同的实施方式中,存储设备730可以例如包括硬盘设备、光盘设备或某一其他大容量存储设备。
[0076]输入/输出设备740为系统700提供输入/输出操作。在一个实施方式中,输入/输出设备740可以包括下述中的一个或多个:网络接口设备,例如以太网卡;串行通信设备,例如RS-232端口 ;和/或无线接口设备。在另一个实施方式中,输入/输出设备可以包括被配置成接收输入数据并且发送输出数据到其他输入/输出设备,例如键盘、打印机和显不设备760的驱动器设备。
[0077]虽然本说明书包含许多【具体实施方式】细节,但是这些细节不应当被解释为对任何发明或可以主张的内容的范围的限制,而应当被解释为对特定于特定发明的特定实施例的特征的描述。还可以将在本说明书中在单独的实施例的情境中描述的某些特征组合在单个实施例中实现。相反地,也可以使在单个实施例的情境中描述的各种特征分离地在多个实施例中实现或在任何适当的子组合中实现。此外,尽管可能在上面将特征描述为在某些组合中起作用,甚至最初主张如此,但是可以在一些情况下,将来自所主张的组合的一个或多个特征从该组合中删去,并且所主张的组合可以针对子组合或子组合的变体。
[0078]类似地,虽然在附图中按照特定顺序描绘了操作,然而,不应当将这理解为需要按照所示的特定顺序或按照连续顺序执行这样的操作、或者需要执行所有图示的操作,才能达到期望的结果。在某些情况下,多任务以及并行处理可以是有利的。此外,不应当将在上述实施例中的各种系统组件的分离理解为在所有实施例中均需要这样的分离,而应当理解的是,通常可以将所述程序组件和系统集成到一起成为单个软件产品或封装为多个软件产品。
[0079]因此,已描述了本主题的特定实施例。其他实施例在所附权利要求的范围内。在一些情况下,可以按照不同的顺序来执行权利要求中记载的动作并且仍然达到期望的结果。另外,在附图中描绘的过程不一定需要所示的特定顺序或连续顺序,才能达到期望的结果。在某些实施方式中,多任务以及并行处理可以是有利的。
【权利要求】
1.一种系统,包括: 数据处理装置,所述数据处理装置包括一个或多个计算机; 计算机可读介质,所述计算机可读介质被耦接到所述数据处理装置并且存储所述数据处理装置可执行的指令,所述指令在被所述数据处理装置执行时,促使所述数据处理装置执行操作,所述操作包括: 通过所述数据处理装置从第一用户设备接收访问第二用户账户的相册集合中的一个相册的第一请求,对所述第二用户账户的所述相册的访问被限于授权用户,所述第一请求包括授权标志并且与识别第一用户的第一用户标识符相关联; 确定所述第一用户标识符没有识别授权用户并且作为响应: 基于所述授权标志确定所述第一用户标识符识别所述第二用户账户的所述一个相册的授权用户;以及 向所述第一用户设备提供来自仅仅所述一个相册的数据; 通过所述数据处理装置接收对所述第二用户账户的所述相册集合的访问的第二请求,所述第二请求与所述第一用户标识符相关联;以及 基于所述第一用户标识符被确定为识别仅仅所述一个相册的授权用户,响应于所述第二请求提供对所述第二用户账户的仅仅所述一个相册的访问。
2.一种系统,包括: 数据处理装置,所述数据处理装置包括一个或多个计算机; 计算机可读介质,所述计算机可读介质被耦接到所述数据处理装置并且存储所述数据处理装置可执行的指令,所述指令在被所述数据处理装置执行时,促使所述数据处理装置执行操作,所述操作包括: 通过所述数据处理装置从第一用户设备接收访问包括第二用户账户的数据的第一资源的第一请求,对所述第二用户账户的所述数据的访问被限于授权用户,所述第一请求包括授权标志并且与识别第一用户的第一用户标识符相关联; 确定所述第一用户标识符没有识别授权用户并且作为响应: 基于所述授权标志来确定所述第一用户标识符识别授权用户;以及 向所述第一用户设备提供所述第一资源; 通过所述数据处理装置接收对所述第二用户账户的数据的访问的第二请求,所述第二请求与所述第一用户标识符相关联;以及 基于所述第一用户标识符被确定为识别授权用户,响应于所述第二请求提供对所述第二用户账户的所述数据的访问。
3.根据权利要求2所述的系统,其中所述指令促使所述数据处理装置: 将所述授权标志与所述第一用户标识符相关联并且将该关联存储在访问控制数据存储中; 从由与所述第二用户账户相关联的第二用户标识符识别的第二用户接收对所述授权标志的撤销;以及 响应于接收对所述授权标志的所述撤销,确定所述第一用户标识符没有识别授权用户以阻止所述第一用户对所述数据的访问。
4.根据权利要求2所述的系统,其中所述指令促使所述数据处理装置:生成到所述第一资源的访问链接,所述访问链接包括所述第一资源的资源定位符和所述授权标志;以及 提供所述访问链接作为到与所述第一用户标识符相关联的电子账户的通信。
5.根据权利要求4所述的系统,其中: 生成到所述第一资源的访问链接包括: 从由与所述第二用户账户相关联的第二用户标识符识别的第二用户接收所述第一用户标识符和指示所述第一用户待被准予对所述第一资源的访问的数据; 生成供在所述授权标志中使用的所述用户标识符的哈希;以及 基于所述授权标志来确定所述第一用户标识符识别授权用户包括: 生成与所述请求相关联的所述第一用户标识符的哈希; 将与所述请求相关联的所述第一用户标识符的所述哈希与所述授权标志相比较;以及仅当供在所述授权标志中使用的所述用户标识符的所述哈希和与所述请求相关联的所述第一用户标识符的所述哈希相匹配时才确定所述第一用户标识符识别授权用户。
6.根据权利要求2所述的系统,其中所述指令促使所述数据处理装置: 通过所述数据处理装置从相应第二用户设备接收访问包括所述第二用户账户的数据的所述第一资源的相应第三请求,对所述第二用户账户的所述数据的访问被限于授权用户,所述第二请求中的每一个包括所述授权标志并且与识别相应第三用户的相应第三用户标识符相关联,以及对于每一个相应第三请求: 确定由所述相应第三用户标识符识别的所述相应第三用户不是授权用户并且作为响应: 基于所述授权标志来确定所述相应第三用户标识符识别授权用户;以及 向所述相应第二用户设备提供所述第一资源; 通过所述数据处理装置接收对所述第二用户账户的数据的访问的相应第四请求,所述相应第四请求与所述相应第三用户标识符相关联;以及 基于所述相应第三用户标识符被确定为识别授权用户,响应于所述相应第四请求提供对所述相应第二用户账户的所述数据的访问。
7.根据权利要求6所述的系统,其中所述指令促使所述数据处理装置: 将所述授权标志与所述相应第三用户标识符中的每一个相关联并且将该关联存储在访问控制数据存储中; 从区段用户账户的管理员接收对所述授权标志的撤销;以及 响应于接收对所述授权标志的所述撤销,确定所述第一用户标识符和所述相应第三用户标识符中的每一个没有识别授权用户以阻止所述第一用户和所述相应第三用户对所述数据的访问。
8.根据权利要求2所述的系统,其中基于所述授权标志来确定所述第一用户标识符识别授权用户包括仅仅响应于确定所述授权标志先前尚未被用来识别授权用户,才确定所述第一用户标识符识别授权用户。
9.根据权利要求2所述的系统,其中基于所述授权标志来确定所述第一用户标识符识别授权用户包括仅仅响应于确定所述授权标志尚未被用来将多于最大数量的其他用户识别为授权用户,才确定所述第一用户标识符识别授权用户。
10.根据权利要求2所述的系统,其中所述授权标志进一步与其他用户标识符集相关联,以及其中基于所述授权标志来确定所述第一用户标识符识别授权用户进一步基于确定所述第一用户标识符被包括在所述用户标识符集中。
11.根据权利要求2所述的系统,其中所述授权标志与指示时间段的过期值相关联,其中在所述时间段期间所述授权标志在所述第一请求中的使用是有效的,并且在所述时间段之后所述授权标志不能被用于基于所述授权标志来确定所述第一用户标识符识别授权用户。
12.—种由数据处理装置执行的方法,所述方法包括: 通过数据处理装置从第一用户设备接收访问包括第二用户账户的数据的第一资源的第一请求,对所述第二用户账户的所述数据的访问被限于授权用户,所述第一请求包括授权标志并且与识别第一用户的第一用户标识符相关联; 确定所述第一用户标识符没有识别授权用户并且作为响应: 基于所述授权标志来确定所述第一用户标识符识别授权用户;以及 向所述第一用户设备提供所述第一资源; 通过所述数据处理装置接收对所述第二用户账户的数据的访问的第二请求,所述第二请求与所述第一用户标识符相关联;以及 基于所述第一用户标识符被确定为识别授权用户,响应于所述第二请求提供对所述第二用户账户的所述数据的访问。
13.根据权利要求12所述的方法,进一步包括: 将所述授权 标志与所述第一用户标识符相关联并且将该关联存储在访问控制数据存储中; 从由与所述第二用户账户相关联的第二用户标识符识别的第二用户接收对所述授权标志的撤销;以及 响应于接收对所述授权标志的所述撤销,确定所述第一用户标识符没有识别授权用户以阻止所述第一用户对所述数据的访问。
14.根据权利要求12所述的方法,进一步包括: 生成到所述第一资源的访问链接,所述访问链接包括所述第一资源的资源定位符和所述授权标志;以及 提供所述访问链接作为到与所述第一用户标识符相关联的电子账户的通信。
15.根据权利要求14所述的方法,其中: 生成到所述第一资源的访问链接包括: 从由与所述第二用户账户相关联的第二用户标识符识别的第二用户接收所述第一用户标识符和指示所述第一用户待被准予对所述第一资源的访问的数据; 生成供在所述授权标志中使用的所述用户标识符的哈希;以及 基于所述授权标志来确定所述第一用户标识符识别授权用户包括: 生成与所述请求相关联的所述第一用户标识符的哈希; 将与所述请求相关联的所述第一用户标识符的所述哈希与所述授权标志相比较;以及仅当供在所述授权标志中使用的所述用户标识符的所述哈希和与所述请求相关联的所述第一用户标识符的所述哈希相匹配时才确定所述第一用户标识符识别授权用户。
16.根据权利要求12所述的方法,进一步包括: 通过所述数据处理装置从相应第二用户设备接收访问包括所述第二用户账户的数据的所述第一资源的相应第三请求,对所述第二用户账户的所述数据的访问被限于授权用户,所述第二请求中的每一个包括所述授权标志并且与识别相应第三用户的相应第三用户标识符相关联,以及对于每一个相应第三请求: 确定由所述相应第三用户标识符识别的所述相应第三用户不是授权用户并且作为响应: 基于所述授权标志来确定所述相应第三用户标识符识别 授权用户;以及 向所述相应第二用户设备提供所述第一资源;通过所述数据处理装置接收对针对所述第二用户账户的数据的访问的相应第四请求,所述相应第四请求与所述相应第三用户标识符相关联;以及 基于所述相应第三用户标识符被确定为识别授权用户,响应于所述相应第四请求提供对所述相应第二用户账户的所述数据的访问。
17.根据权利要求16所述的方法,进一步包括: 将所述授权标志与所述相 应第三用户标识符中的每一个相关联并且将关联存储在访问控制数据存储中; 从区段用户账户的管理员接收对所述授权标志的撤销;以及 响应于接收对所述授权标志的所述撤销,确定所述第一用户标识符和所述相应第三用户标识符中的每一个没有识别授权用户以阻止所述第一用户和所述相应第三用户对所述数据的访问。
18.根据权利要求12所述的方法,其中基于所述授权标志来确定所述第一用户标识符识别授权用户包括仅仅响应于确定所述授权标志先前尚未被用来识别授权用户,才确定所述第一用户标识符识别授权用户。
19.根据权利要求12所述的方法,其中基于所述授权标志来确定所述第一用户标识符识别授权用户包括仅仅响应于确定所述授权标志尚未被用来将多于最大数量的其他用户识别为授权用户,才确定所述第一用户标识符识别授权用户。
20.根据权利要求12所述的方法,其中所述授权标志进一步与其他用户标识符集相关联,以及其中基于所述授权标志来确定所述第一用户标识符识别授权用户进一步基于确定所述第一用户标识符被包括在所述用户标识符集中。
21.根据权利要求12所述的方法,其中所述授权标志与指示时间段的过期值相关联,其中在所述时间段期间所述授权标志在所述第一请求中的使用是有效的,并且在所述时间段之后所述授权标志不能被用于基于所述授权标志来确定所述第一用户标识符识别授权用户。
【文档编号】G06F17/30GK103620602SQ201280031432
【公开日】2014年3月5日 申请日期:2012年6月25日 优先权日:2011年6月27日
【发明者】麦西米利恩·艾贝尔, 马修·S·斯坦纳 申请人:谷歌公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1