在两个装置之间使用临时私钥的系统和方法与流程

文档序号:11778383阅读:214来源:国知局
在两个装置之间使用临时私钥的系统和方法与流程

分案说明

本申请属于申请日为2013年7月18日的中国发明专利申请201380048031.8的分案申请。

本公开一般地涉及个人用户信息的安全,并且更具体地涉及用于允许对在共享装置上的个人信息的有限访问的方法和系统。



背景技术:

诸如移动电话的个人装置可以用于安全地访问个人信息。一旦已经认证了用户,则用户可以继续访问信息。因为人们一般保留他们的电话的实体占有,所以仅存在下述的有限风险:未经授权的用户获得对于被认证电话的访问,并且由此访问电话拥有者的个人信息。

然而,电话具有小的显示器和小的输入机制(例如键盘或“软”键盘),并且因此,电话可能不是用于访问个人信息的最佳装置。

另一方面,诸如具有机顶盒的电视机或台式计算机的一些共享装置更好地适合于观看内容。例如,在30英寸显示器上比在3.5英寸显示器上观看内容要容易得多。然而,在共享装置上的观看的容易产生不同的问题。一旦用户已经提供了用于访问个人信息的证书,则该共享装置可以继续提供对于个人信息的访问,即使当用户不再使用该共享装置时。即,共享装置的随后的用户可能访问第一用户的个人信息。

公开的实现方式可以利用各种认证协议,诸如oauth2.0认证协议。认证协议使得用户能够共享对于受限资源的访问,而不共享用户的初级证书。在一些实现方式中,该协议利用访问令牌,该访问令牌可以在时间上和/或范围上受限。虽然访问令牌消除了共享用户的证书的必要,但是诸如oauth2.0的认证协议不防止共享的装置在用户不再使用共享的装置后(访问令牌仍然有效)继续访问该用户的个人信息。



技术实现要素:

所公开的实现方式解决上面的缺陷和与对于在共享装置上观看的个人信息的有限访问相关联的其他问题。

根据一些实现方式,一种计算机实现的方法在具有一个或多个处理器和存储器的个人用户装置处执行。所述存储器存储用于被所述一个或多个处理器执行的一个或多个程序。所述程序包括用于从与所述个人用户装置不同的共享的用户装置接收请求的指令。所述个人用户装置与用户相关联,并且所述请求寻求对于与所述用户相关联的个人信息的访问。所述个人信息被存储在资源服务器处,所述资源服务器与所述个人用户装置和所述共享的用户装置不同。所述程序进一步包括从所述用户接收访问认证信息的指令。所述程序也包括响应于从所述用户接收到所述访问认证信息的指令:所述指令向认证服务器发送所述访问认证信息,并且从所述认证服务器接收访问令牌。所述访问令牌授予对于与所述用户相关联的所述个人信息的访问特权。所述程序进一步包括向所述共享的用户装置发送所述访问令牌的指令,由此允许在所述共享的用户装置上执行的应用使用所述访问令牌来检索所述个人信息的至少一部分。所述程序包括检测所述个人用户装置的物理移动的指令,其中,所述移动满足预定义的运动标准。所述程序也包括响应于检测到所述物理移动的指令:所述指令向所述认证服务器发送撤消与所述访问令牌相关联的访问特权的消息。

根据一些实现方式,一种计算机实现的方法在具有一个或多个处理器和存储器的认证服务器处执行。所述存储器存储用于由所述一个或多个处理器执行的一个或多个程序。所述程序包括从共享的用户装置接收请求的指令。所述请求寻求对于与所述用户相关联的个人信息的访问。所述个人信息被存储在资源服务器处。所述程序还包括从个人用户装置接收访问认证信息的指令。所述程序进一步包括建立用于授予对于与所述用户相关联的所述个人信息的访问特权的访问令牌,并且向所述共享的用户装置提供所述访问令牌的指令。所述程序也包括从所述个人用户装置接收用于撤消与所述访问令牌相关联的访问特权的命令的指令。所述程序进一步包括从所述资源服务器接收验证请求的指令。所述验证请求包括所述访问令牌。所述程序包括确定已经撤消了与所述访问令牌相关联的访问特权的指令。所述程序也包括向所述资源服务器通知所述验证请求失败的指令,由此防止所述共享的用户装置对于所述个人信息的访问。

因此,提供了使得用户能够观看在共享装置上的个人信息但是限制或防止其他方访问该个人信息的方法和系统,

附图说明

为了更好地明白本发明的上述实现方式以及其另外的实现方式,应当结合下面的附图参考下面的实施例的说明,在附图中,相似的附图标号贯穿附图指示对应的部分。

图1图示了其中一些实现方式运行的示例性环境。

图2是根据一些实现方式的个人装置的框图。

图3是根据一些实现方式的共享装置的框图。

图4是根据一些实现方式的资源服务器计算机系统的框图。

图5是根据一些实现方式的证书服务器计算机系统的框图。

图6和7示意地图示根据一些实现方式的共享的用户装置获得个人用户信息的过程。

图8a-c提供了根据一些实现方式的、在个人用户装置处执行的用于向共享的用户装置提供对于个人用户信息的访问的过程的流程图。

图9a-b提供了根据一些实现方式的、在认证服务器处执行的用于向共享的用户装置提供对于个人用户信息的访问的过程的流程图。

现在详细参考实现方式,其示例被图示在附图中。在下面的详细说明中,阐述了多个具体细节,以便彻底理解本发明。然而,对于本领域内的普通技术人员显然的是,可以在没有这些具体细节的情况下实践本发明。

在在此的本发明的说明书中使用的术语仅用于描述具体实现方式的目的,并且不意图限制本发明。在本发明的说明书和所附的权利要求中使用的单数形式“一个”和“该”意图也包括复数形式,除非上下文清楚地另外指示。也可以理解,在此使用的词语“和/或”指的是并且涵盖相关联的列出项目中的一个或多个的任何一个和全部可能的组合。进一步可以理解,词语“包括”当在本说明书中使用时指定陈述的特征、步骤、操作、元件和/或组件的存在,而不排除一个或多个其他特征、步骤、操作、元件、组件和/或其组的存在或增加。

具体实施方式

如上所述,有益的是,从共享装置108访问个人信息114,但是限制那个访问,使得其他用户不被允许访问那个个人信息114。例如,用户可能希望观看电子邮件或个人照片,或者与社交媒体应用交互。这样的行为更容易在具有大的观看区域的共享装置108上而不是在诸如蜂窝电话的小袖珍装置上被执行。如下更详细所述,所公开的实现方式可以通过利用个人用户装置106的特性来提供对于在共享的共享装置108上的个人信息114的受限访问。通过监视个人用户装置106对于共享装置108的接近,当移动个人装置106时,可以拒绝对于个人信息114的访问。即,所公开的实现方式通过检测个人装置106远离共享装置108的移动而识别用户110远离共享装置108的移动。

图1是图示一些实现方式的主要组件的框图。各个装置和服务器通过一个或多个网络112(诸如因特网)来进行通信。用户110操作个人用户装置106和共享的用户装置108。在一些实现方式中,个人用户装置106是移动电话,诸如运行androidtm操作系统的智能电话。在一些实现方式中,个人装置106是个人数字助理(pda)、平板计算机、膝上型计算机、电子书阅读器或联网的数字媒体播放器。公共地,个人用户装置106小得足以被在口袋或钱包中携带。个人用户装置106通常被单个人管理。共享的用户装置108通常大于个人用户装置106。通常的共享的用户装置108是具有机顶盒的电视机(例如,google电视机)或台式计算机。共享的用户装置108通常被两个或更多人使用。

诸如gmailtm、google+tm或twittertm的软件应用118在共享装置108上执行。在一些实现方式中,软件应用118在web浏览器320内执行,并且在其他实现方式中,软件应用118独立于web浏览器320执行。(软件应用118也可以在个人用户装置106上执行,但是在个人用户装置106上执行软件应用118不产生由在此公开的实现方式解决的问题。)软件应用118利用与用户110相关联的某些个人信息114(例如电子邮件消息)。在资源服务器104处存储个人信息114。如下参考图6、7、8a-c和9a-b所述,与用户110相关联的个人信息114要求用于访问的认证。证书服务器102提供用于对于个人信息114的认证的访问的服务。通常,证书服务器102和资源服务器104是不同的服务器,但是在一些实现方式中,在单个服务器系统上实现证书服务器102和资源服务器104。在其他实现方式中,证书服务器102和资源服务器104是不同的服务器系统,但是共享公共的数据库服务器。证书服务器102在此也被称为“认证服务器”或“授权服务器”。

图2是图示根据一些公开的实现方式的、用户110利用来利用证书服务器102认证的个人装置106的框图。个人装置106通常包括:一个或多个处理单元(cpu)202,用于执行在存储器214中存储的模块、程序和/或指令,并且由此执行处理操作;一个或多个网络或其他通信接口204;存储器214;以及一条或多条通信总线212,用于互连这些组件。通信总线212可以包括互连和控制在系统组件之间的通信的电路(有时被称为芯片集)。个人装置106包括:用户界面206,其包括显示装置208;以及一个或多个输入装置或机制210。在一些实现方式中,该输入装置/机制包括键盘;在一些实现方式中,输入装置/机制包括“软”键盘,其根据需要被显示在显示装置208上,使得用户100能够“按下”在显示器208上出现的按键。在一些实现方式中,存储器214包括高速随机存取存储器,诸如dram、sram、ddrram或其他随机存取固态存储器装置。在一些实现方式中,存储器214包括非易失性存储器,诸如一个或多个磁盘存储装置、光盘存储装置、快闪存储器装置或其他非易失性固态存储装置。可选地,存储器214包括远离cpu202的一个或多个存储装置,存储器214或替选地在存储器214内的非易失性存储器装置包括计算机可读存储介质。在一些实现方式中,存储器214或存储器214的计算机可读存储介质存储下面的程序、模块和数据结构或其子集:

·操作系统216,其包括用于处理各种基本系统服务并且用于执行硬件依赖任务的过程;

·通信模块218,其用于经由一个或多个网络接口204(有线或无线)和一个或多个通信网络112将个人装置106连接到其他计算机和装置,该一个或多个通信网络112例如是因特网、其他广域网、局域网和城域网等;

·web浏览器220(或其他客户端应用),其使得用户110能够通过网络112(诸如因特网)与远程计算机或装置进行通信;

·位置信息222,其识别相对于诸如共享装置108的另一个装置的个人装置106的绝对位置和/或个人装置106的位置;和/或其他信息,其可以用于识别个人装置106的移动。在一些实现方式中,位置信息222包括来自在个人装置106中包括的传感器的信息,该传感器例如是gps硬件和软件、加速度计传感器或陀螺仪传感器。虽然陀螺仪或加速度计检测移动,但是它们可以与其他位置信息(例如gps)相结合地用于识别位置。在一些实现方式中,位置信息222包括预定义的标准,该预定义的标准触发对于个人信息114的访问特权的撤消;

·位置模块224,其跟踪个人装置106的移动,并且确定移动何时满足预定义的运动标准;

·“永久”访问令牌226,个人装置106可以代替每次用户访问保护的信息时要求用户110输入访问证书来使用该“永久”访问令牌226。一些实现方式使用永久访问令牌226,但是不要求它们;

·认证模块228,其获取临时访问令牌322,并且向共享的用户装置108提供访问令牌322。如下参考图8a-c所述,访问令牌322使得共享装置108能够访问在资源服务器104处存储的个人用户信息114。当个人装置106的移动满足预定义的标准时,该认证模块也撤消访问令牌322的访问特权;

·访问扩展标准230,其指定何时可以扩展临时访问令牌322的有限持续时间。访问扩展标准230在此也被称为更新标准,并且与时间的扩展相关。(一些实现方式也提供了访问范围的扩展。)如下参考图8b所述,访问扩展标准230可以包括从用户接收更新的访问认证信息。例如,可能要求用户110重新输入用户名和密码。在一些实现方式中,访问扩展标准包括确定个人用户装置106在共享的用户装置108的更新半径内。在一些实现方式中,该访问扩展标准包括确定个人用户装置还没有移动超过预定义的更新距离;以及

·位置/运动传感器232,其直接地或间接地测量个人装置106的位置。在一些个人装置106中的传感器包括陀螺仪、加速度计和gps装置。

图3是图示用户110利用来使用/访问/播放各种软件应用118的共享的用户装置108的框图。例如,软件应用118可以提供对于数字内容、电子邮件、在线社交媒体、交互游戏等的访问。共享装置108通常包括:一个或多个处理单元(cpu)302,用于执行在存储器314中存储的模块、程序和/或指令,并且由此执行处理操作;一个或多个网络或其他通信接口304;存储器314;以及一条或多条通信总线312,用于互连这些组件。通信总线312可以包括互连和控制在系统组件之间的通信的电路(有时被称为芯片集)。共享装置108可以包括:用户接口306,其包括零或更多的显示装置308a(例如,屏幕或监视器)和零或更多的输入装置或机制310a。在一些实现方式中,该输入装置/机制310b包括键盘。一些实现方式包括外部显示装置308b,诸如电视机(例如当共享装置108是机顶盒时)。一些实现方式包括外部输入装置310b,诸如手持遥控器。在一些实现方式中,存储器314包括高速随机存取存储器,诸如dram、sram、ddrram或其他随机存取固态存储器装置。在一些实现方式中,存储器314包括非易失性存储器,诸如一个或多个磁盘存储装置、光盘存储装置、快闪存储器装置或其他非易失性固态存储装置。可选地,存储器314包括远离cpu302的一个或多个存储装置。存储器314或替选地在存储器314内的非易失性存储器装置包括计算机可读存储介质。在一些实现方式中,存储器314或存储器314的计算机可读存储介质存储下面的程序、模块和数据结构或其子集:

·操作系统316,其包括用于处理各种基本系统服务并且用于执行硬件依赖任务的过程;

·通信模块318,其用于经由一个或多个网络接口304(有线或无线)和一个或多个通信网络112将共享装置108连接到其他计算机和装置,该一个或多个通信网络112例如是因特网、其他广域网、局域网和城域网等;

·web浏览器320(或其他客户端应用),其使得用户110能够通过网络112(诸如因特网)与远程计算机或装置进行通信;

·一个或多个软件应用118,其可以在web浏览器320内执行或可以独立于web浏览器320执行;以及

·临时访问令牌322,其用于访问在资源服务器104处存储的个人信息114。当存在利用个人信息114的多个软件应用118时,一些实现方式对于每一个软件应用118要求不同的临时访问令牌322,但是其他实现方式允许两个或更多的软件应用118使用单个临时访问令牌322。临时访问令牌322通常在持续时间和范围两者上受限,如下更详细所述。当装置(诸如共享装置108)寻求对于个人信息114的访问时,该装置包括具有请求的访问令牌322。以这种方式,验证对于个人信息114的每一个访问。

图4是图示根据一些实现方式的、存储由一个或多个软件应用118使用的信息的资源服务器104的框图。资源服务器104通常包括:一个或多个处理单元(cpu)402,用于执行在存储器414中存储的模块、程序和/或指令,并且由此执行处理操作;一个或多个网络或其他通信接口404;存储器414;以及一条或多条通信总线412,用于互连这些组件。通信总线412可以包括互连和控制在系统组件之间的通信的电路(有时被称为芯片集)。在一些实现方式中,资源服务器104包括:用户接口406,其可以包括显示装置408和一个或多个输入装置410。在一些实现方式中,存储器414包括高速随机存取存储器,诸如dram、sram、ddrram或其他随机存取固态存储器装置。在一些实现方式中,存储器414包括非易失性存储器,诸如一个或多个磁盘存储装置、光盘存储装置、快闪存储器装置或其他非易失性固态存储装置。在一些实现方式中,存储器414包括远离cpu202的一个或多个存储装置。存储器414或替选地在存储器414内的非易失性存储器装置包括计算机可读存储介质。在一些实现方式中,存储器414或存储器414的计算机可读存储介质存储下面的程序、模块和数据结构或其子集:

·操作系统416,其包括用于处理各种基本系统服务并且用于执行硬件依赖任务的过程;

·通信模块418,其用于经由一个或多个网络接口404(有线或无线)和一个或多个通信网络112将资源服务器104连接到其他计算机,该一个或多个通信网络112例如是因特网、其他广域网、局域网和城域网等;

·数据库或文件服务器420,其存储由一个或多个软件应用118使用的数据和其他资源。该存储的信息包括用户110的个人用户信息114。诸如用户1信息114-1和用户2信息114-2的用于个体用户的个人信息可以被用户存储在独立的文件中,或者可以被合并。用于个体用户的个人信息114-1可以包括电子邮件消息114-1a、个人图片114-1b、联系人列表114-1c、人口统计信息114-1d或由软件应用118使用的其他个人信息114-1。与物理存储机制无关地,基于个体用户来限制对于个人信息114的访问。如下参考图5-7更详细所述,对于个人信息114的访问要求认证;

·web服务器422,其响应于web请求,该web请求包括检索个人信息114的请求;以及

·访问模块424,其从数据库420检索数据(诸如个人信息114),并且通过联系证书服务器102来验证每一个请求的访问特权。下面参考图6和7来更详细地描述该过程。

图5是图示根据一些实现方式的证书服务器102的框图,证书服务器102确定是否应当允许或拒绝对于个人信息114的访问。“证书服务器”在此也被称为认证服务器或授权服务器。证书服务器102通常包括一个或多个处理单元(cpu)502,用于执行在存储器514中存储的模块、程序和/或指令,并且由此执行处理操作;一个或多个网络或其他通信接口504;存储器514;以及一条或多条通信总线512,用于互连这些组件。通信总线512可以包括互连和控制在系统组件之间的通信的电路(有时被称为芯片集)。在一些实现方式中,证书服务器102包括:用户接口506,其可以包括显示装置508和一个或多个输入装置510。在一些实现方式中,存储器514包括高速随机存取存储器,诸如dram、sram、ddrram或其他随机存取固态存储器装置。在一些实现方式中,存储器514包括非易失性存储器,诸如一个或多个磁盘存储装置、光盘存储装置、快闪存储器装置或其他非易失性固态存储装置。可选地,存储器514包括远离cpu502的一个或多个存储装置。存储器514或替选地在存储器514内的非易失性存储器装置包括计算机可读存储介质。在一些实现方式中,存储器514或存储器54的计算机可读存储介质存储下面的程序、模块和数据结构或其子集:

·操作系统516,其包括用于处理各种基本系统服务并且用于执行硬件依赖任务的过程;

·通信模块518,其用于经由一个或多个网络接口504(有线或无线)和一个或多个通信网络112将证书服务器102连接到其他计算机,该一个或多个通信网络112例如是因特网、其他广域网、局域网和城域网等;

·用户数据库520,其存储关于具有在资源服务器104处存储的个人信息114的用户110的信息。所存储的关于用户的信息可以包括用户名、用户的唯一标识符(例如用户的id或电子邮件地址)、加密密码、在资源服务器104上存储的用户110的个人信息的列表和/或与用户相关联的访问令牌的列表。用户数据库520也可以包括用户行为的记录;

·令牌数据库522,其存储关于访问令牌的信息。访问令牌提供访问诸如个人信息114的被保护数据的替代手段。在一些实现方式中,用户可以利用用户id和密码来认证,并且接收“永久”令牌226,其用于对于个人信息114(或其他被保护资源)的后续访问。在一些实现方式中,个人用户装置106在初始认证后使用永久访问令牌226。以这种方式,用户110不必每次要求对于个人信息114的访问时“登录”。然而,对于共享的用户装置108,永久令牌226可以是有问题的,提供对于一个用户的个人信息114的其他用户访问。临时访问令牌322类似于“永久”令牌226,但是固有地具有有限的使用期限(其在一些情况下是可扩展的)。在永久令牌226和临时令牌322之间的另一个共同的差别是一组访问特权。永久令牌226通常具有对于用户110的所有个人信息114的全部访问(例如等同于提供用户名和密码),而临时令牌322可以访问与用户110对应的个人信息114的有限部分。令牌数据库522包含关于访问令牌的信息,包括令牌的类型、访问特权、期满日期/时间和对应的用户。在一些实现方式中,令牌数据库522和用户数据库520被合并到单个数据库内,该单个数据库具有用于跟踪关于用户和令牌的信息的各种表。

·令牌分配模块524,其建立访问令牌并且将适当的访问特权与那些令牌相关联。在一些情况下,用户110可以使用在请求中的永久令牌226来建立临时令牌322。参考例如下面的图6;以及

·验证模块526,其接收令牌,并且识别当前与令牌相关联的访问特权(如果有)。在一些实现方式中,验证模块返回是/否值,用于指示令牌是否有效。在其他实现方式中,验证模块返回与令牌相关联的一组特权。如果令牌无效或期满,则该组特区将为空的。

在图2-5中的上述的元素中的每一个可以被存储在前述的存储器装置的一个或多个中,并且对应于用于执行如上所述的功能的一组指令。上述的模块或程序(即指令集)不必被实现为独立的软件程序、过程或模块,并且因此可以在各种实现方式中组合或重新布置这些模块的各个子集。在一些实现方式中,存储器214、314、414和514可以存储如上所述的模块和数据结构的子集。而且,存储器214、314、414和514可以存储上面未描述的另外的模块或数据结构。

虽然图2-5图示了个人装置、共享装置、资源服务器和证书服务器,但是这些附图意图更多地作为可以在一个或多个计算机集合中存在的各种特征的功能描述,而不是在此所述的实现方式的结构示意。实际上,并且如本领域内的普通技术人员认识到的,分别示出的项目可以被组合,并且可以分离一些项目。例如,可以在单独的计算机系统上实现在图5中分别示出的一些项目,并且可以通过一个或多个计算机系统来实现单个项目。用于实现这些特征的计算机的实际数量和如何在它们之间分配特征将从一个实现方式到另一个不同,并且可以部分地取决于系统在峰值使用时间段期间以及在平均使用时间段期间必须处理的数据业务的量。

图6和7图示了根据一些实现方式的、共享的用户装置108从资源服务器104获得个人用户信息114的两个示例性过程。在这些附图中,用户110与在共享的装置108上执行的软件应用118交互,并且软件应用118寻求对于在资源服务器104处存储的个人信息114的访问。例如,软件应用118可以是电子邮件应用,并且该电子邮件应用必须访问在资源服务器104上的用户的电子邮件(个人信息114)。

通常的软件应用将提示用户110输入用户名和密码,并且然后直接地进行到个人信息114。对于该典型手段的一个问题是共享装置108可以继续访问个人信息114,即使在用户110不再使用共享的装置108后。共享装置108的其他用户可以因此访问第一用户的私有个人信息114。图6和7图示了使用临时访问令牌322从共享装置108来访问个人信息114的替代方式。这些图示了实现方式相对于不经意地向其他用户给予对于第一用户的个人信息114的访问具有多个安全保护。

在图6中所示的实现方式中,在共享装置108处的用户110使用软件应用118,该软件应用118利用与用户110相关联的某些个人信息114。例如,社交媒体网站。在资源服务器104处存储个人信息114。软件应用118需要访问令牌322以便检索个人信息114。如果共享装置108没有已经具有用于软件应用118的有效访问令牌322(例如,根本没有现有的访问令牌322、访问令牌322期满等),则软件应用118请求访问。在一些实现方式中,共享装置108呈现可以授予对于个人信息114的访问的“授权”用户/装置的列表。在图6中的实现方式中,共享装置108请求(602)来自个人用户装置106的访问。在一些实现方式中,通过网络112来发送请求;在其他实现方式中,通过诸如蓝牙的直接通信来发送请求。

在一些实现方式中,个人装置106的用户接口206提示用户110输入认证信息,并且用户110使用个人装置106的用户接口206(例如,键盘或软键盘210)来输入认证信息。在其他实现方式中,在向个人用户装置106发送请求之前,共享装置108的用户接口306向用户110提示认证信息。在这些实现方式中,该认证信息可以被包括在请求中或被独立地发送。

在接收到请求后,个人用户装置106向证书服务器102提供(604)用户证书。在一些实现方式中,用户110使用个人用户装置106的用户接口206来供应证书(例如用户id和密码)。在一些实现方式中,在个人用户装置106上存储永久访问令牌226,并且向证书服务器发送(604)永久令牌。在使用永久访问令牌226的一些实现方式中,提示用户110确认应当授予访问特权。在一些实现方式中,被发送到(604)证书服务器102的证书也包括要授予的访问特权的规格(specification)(例如,在时间上的限制和在范围上的限制)。

当证书服务器102从个人用户装置106接收到证书时,证书服务器102建立具有用于访问个人信息114的适当特权的临时访问令牌322。该临时访问令牌322具有期满日期/时间,其可以被提供证书的用户110明确地指定,或者可以被分配默认值(例如,在建立后的1小时或30分钟)。(在一些实现方式中,可以当期满时间接近时或自动地或通过用户确认来扩展期满日期/时间。)在一些实现方式中,临时访问令牌322与单个特定软件应用118和由那个软件应用118使用的个人数据114相关联。在其他实现方式中,临时访问令牌322与一组软件应用118相关联,并且该组包括一个或多个应用118(例如,当由两个或更多的应用118来共享个人信息114时)。

在建立临时访问令牌322后,证书服务器102向个人装置106发送(606)访问令牌322。个人装置106然后向共享装置108转发(608)访问令牌322。共享装置108在存储器314中存储临时访问令牌322以用于随后的使用。

在共享装置108上执行的软件应用118从资源服务器104请求(610)个人信息114的一部分。该请求包括临时访问令牌322。该请求也指定所寻求的个人信息114的一部分。在接收到对于具有访问令牌322的信息的请求后,资源服务器104通过从证书服务器102请求(612)临时访问令牌322的验证来确定如何响应。证书服务器102在其令牌数据库522中查找临时访问令牌322。几个不同的情况可以出现,包括:

·在令牌数据库522中未找到临时访问令牌322;

·临时访问令牌322在数据库522中存在,但是令牌322已经

期满;

·临时访问令牌322在数据库522中存在,但是已经撤消了所有特权;

·临时访问令牌322在数据库522中存在,但是所寻求的信息114的特定部分在与访问令牌322相关联的特权的范围之外;或者

·临时访问令牌322在数据库522中存在,令牌没有期满,还没有撤消令牌的特权,并且所请求的信息落在所授予的特权的范围内。

一些实现方式除了如上具体所述的那些之外也提供了另外的方案,并且一些实现方式具有更少的方案(例如,一些实现方式通过删除来自数据库522的记录或通过将令牌的期满日期设置为较早时间而实现特权的撤消)。

证书服务器102然后确认(614)或拒绝(614)对于个人信息114的访问。在一些实现方式中,响应是简单的是/否,用于指示是否应当允许对于个人信息114的访问。在一些实现方式中,证书服务器102在其对于资源服务器104的响应中包括错误消息或令牌查找的特定结果,使得资源服务器104能够当拒绝访问时提供更详细的错误消息。

根据来自证书服务器102的确定,资源服务器104或者向在共享装置108处的软件应用118发送(616)所请求的个人信息或者向在共享装置108处的软件应用118发送(616′)错误消息。在接收到个人信息114或错误消息时,软件应用118进行到使用信息114或向用户110显示错误消息。在一些实现方式中,某些错误消息(诸如期满的访问令牌322)的接收触发更新过程。在其他实现方式中,用户110可以根据需要手动地启动更新过程。在图6中未示出该更新过程。

用于临时访问令牌322的更新过程因为各种原因而开始,该各种原因包括:

·响应于用户对于保护的信息114的请求(例如,当已知访问令牌322期满时);

·响应于错误消息,如上面在步骤616′中所述;或者

·当访问令牌322的剩余的使用期限小于阈值水平(例如5分钟或0分钟)时,自动地。

在一些实现方式中,更新过程与初始访问请求近乎相同。用户110必须提供证书,证书服务器102验证该证书,并且返回更新(或新)的访问令牌322,个人装置106将其转发到共享装置108。在一些实现方式中,令牌的更新产生新的访问令牌322;在其他实现方式中,访问令牌322的更新更新了现有访问令牌322的期满日期。

在一些实现方式中,更新过程根据各种因素是手动的或自动的。一种因素是现有的访问令牌322的状态。如果已经撤消了访问特权,则更新不是自动的。用户110必须重新输入证书或以某种方式确认应当授予访问。另一种因素是个人装置106是否在适当的更新半径内。在一些实现方式中,从个人装置106的初始位置测量更新半径(当首次授予访问时);在其他实现方式中,从共享的用户装置108的位置测量该更新半径。以任何一种方式,都存在预定义的更新半径,并且如果个人装置106在那个半径内,则自动更新访问令牌322。实现方式通常将组合这两个因素。因此,如果个人装置106在更新半径内,并且还没有撤消访问特权,则自动更新访问令牌322。否则,用户110必须提供访问证书或其他确认,以便更新访问令牌322。一些实现方式利用用于确定何时自动更新临时访问令牌322的不同或另外的因素。

除了向临时访问令牌322施加的时间和范围限制,在图6中所示的实现方式也基于个人装置106的物理位置来施加访问限制。用户110通常保持个人装置106的拥有,以便用户110移动,个人装置106也移动。如果个人装置106移动超过阈值距离,则用户110可能不再访问共享的用户装置108,并且因此共享的用户装置108将不再访问用户110的个人信息114。

本领域内的技术人员可以认识到,存在测量个人装置106的移动的许多方式。在个人装置106处的位置模块224利用各种位置信息222和/或位置/运动传感器232来确定个人装置106的移动是否满足某个标准。在一些实现方式中,个人装置106具有gps装置232或确定其相对于地球的位置的其他装置。在这些实现方式中,用于测量移动的一种方式是当从证书服务器102接收临时访问令牌322时,识别个人装置106的位置。当个人装置106相对于地球的位置大于距原始位置的阈值距离时,个人装置106已经移动(618),因此个人装置106撤消(620)使用访问令牌322的进一步访问。除了或取代用于测量个人装置106的移动的gps之外,一些实现方式也使用加速度计232和/或陀螺仪232。

在其他实现方式中,位置模块224测量个人装置相对于共享的用户装置108或相对于无线路由器或无线接入点的移动。在一些实现方式中,个人装置106和共享装置108两者具有蓝牙能力,并且在装置之间的信号的强度与在该两个装置之间的距离相关。一些实现方式使用蓝牙信号的强度作为移动的测量。类似地,一些实现方式使用在个人装置106处的wifi信号(例如,802.11)的强度作为移动的测量。来自无线路由器或无线接入点的wifi信号用于网络连接(到网络112)以及识别个人装置106的移动两者。本领域内的技术人员可以认识到,由个人装置106或在个人装置106中包括的其他组件接收的其他无线信号可以被位置模块224用于测量移动。发起访问令牌撤消的阈值距离被称为撤消半径。

位置模块224可以使用如上所述的各种技术中的任何一种来检测(618)超过阈值量的个人用户装置106的移动。该阈值量可以被设置为几英尺(例如,3英尺)或更大的距离(例如,15英尺)。在一些实现方式中,用户110设置阈值移动,但是其他实现方式自动设置或固定移动的阈值量。当移动超过(618)阈值量时,个人装置106撤消(620)与访问令牌对应的访问特权。在一些实现方式中,当满足预定义的运动标准时,撤消是自动的;在其他实现方式中,用户接口206提示用户110确认或拒绝撤消。向证书服务器102发送(620)该撤消。一旦证书服务器102接收到该撤消,则证书服务器102将拒绝(614)响应于要验证(612)的所有随后的请求的访问。共享装置108因此不能获取个人信息114的任何另外的部分。

通常,更新半径小于撤消半径。一旦个人装置106已经移动到撤消半径之外,则撤消特权,并且如果用户110将个人装置移动回撤消半径内,则不自动恢复特权。另一方面,个人装置106在更新半径外的移动仅意味着将不在该时间更新访问令牌。一些实现方式试图更新访问令牌322多次,因此如果个人装置106在随后的更新尝试之一期间返回在更新半径内,则将更新访问令牌322。本领域内的技术人员认识到,当通过信号强度来测量移动时,通过信号强度而不是距离单位来测量更新半径和撤消半径,或者执行转换以将信号强度测量转换为距离。

因为撤消过程和更新过程是独立的特征,所以一些实现方式提供这些特征中的仅一个。例如,一些实现方式基于个人装置106的移动而提供特权的自动撤消,而不提供任何更新过程(或者仅提供手动更新过程)。其他实现方式提供更新过程,但是不基于个人装置106的移动而提供特权的自动撤消。

在图7中所示的实现方式类似于图6的实现方式,但是不包含在个人装置106和共享的用户装置108之间的直接通信。如在图6中那样,在共享装置108处的用户110在使用软件应用118,软件应用118利用与用户110相关联的某些个人信息114。在资源服务器104处存储个人信息114。软件应用118需要访问令牌322以便检索个人信息114。如果共享装置108未具有用于软件应用118的有效的访问令牌322(例如,根本没有现有的访问令牌322,访问令牌322期满等),则软件应用118请求访问。在图7的实现方式中,共享装置108请求(702)使用网络112的来自资源服务器104的访问。

如在图6中所示,一些实现方式提示用户110在共享装置108处输入访问认证信息,并且包括具有请求的认证信息。在这些实现方式中,不执行步骤(3)和(4)(706、708)。

在接收到请求后,资源服务器将该请求向证书服务器102转发(704)。证书服务器继而请求(706)来自个人装置106的访问证书。通常,用户110使用个人用户装置106的用户接口206来输入证书(例如,用户id和密码),并且个人装置106向证书服务器提供(708)该证书。

在一些实现方式中,在个人用户装置106处存储永久访问令牌226,并且向证书服务器发送(708)发送永久令牌。在使用永久访问令牌226的一些实现方式中,提示用户110确认应当授予访问特权。在一些实现方式中,向证书服务器102提供(708)的证书也包括要授予的访问特权的规格(例如,在时间上的限制和在范围上的限制)。

当证书服务器102从个人用户装置106接收到证书时,证书服务器102建立具有访问个人信息114的适当特权的临时访问令牌322。该临时访问令牌322具有期满日期/时间,其可以被提供证书的用户110明确地指定,或者可以被分配默认值(例如1小时或30分钟)。(在一些实现方式中,可以当期满时间接近时或自动地或通过用户确认来扩展期满日期/时间。参考相对于图6的上面的说明。)在一些实现方式中,临时访问令牌322与单个特定软件应用118和由那个软件应用118使用的个人数据114相关联。在其他实现方式中,临时访问令牌322与一组软件应用118相关联,并且该组包括一个或多个应用118(例如当由两个或更多的应用118来共享个人信息114时)。

在建立临时访问令牌322后,证书服务器102向资源服务器104发送(710)访问令牌322,并且资源服务器104将访问令牌322转发(712)到共享装置108。共享装置108在存储器314中存储该临时访问令牌322以用于随后使用。

图7的剩余部分对应于在上面的图6中图示的过程。具体地说,在图7中的步骤714至718对应于在图6中的步骤610至614,在图7中的两个替选步骤720/720`对应于在图6中的两个替选步骤161/616`,并且在图7中的步骤722-724对应于在图6中的步骤618和620。另外,在图6中公开的用于访问令牌322的更新或撤消的技术同样适用于在图7中所示的实现方式。

图8a-c提供了由在个人用户装置106处的认证模块228执行的过程800的流程图。根据一些实现方式,过程800提供了共享的用户装置108对于个人用户信息114的访问。在具有一个或多个处理器和存储器的个人用户装置106执行(802)该过程800。该存储器存储要由该一个或多个处理器执行的一个或多个程序。在一些实现方式中,个人用户装置106是(804)蜂窝电话(例如智能电话,诸如运行androidtm操作系统的电话)。

过程800从与个人用户装置106不同的共享的用户装置108接收(806)请求。该个人用户装置与特定用户110相关联(808)。该请求寻求(810)对于与用户110相关联并且被存储(810)在资源服务器104处的个人信息114的访问。在一些实现方式中,共享的用户装置108是(812)连接到电视机的机顶盒(例如运行androidtm操作系统的google电视机)。在其他实现方式中,共享的用户装置108是台式计算机或膝上型计算机。在一些实现方式中,过程800使用个人用户装置106的用户接口206向用户110通知(814)访问请求。个人装置106从用户110接收(816)访问认证信息,或者从个人装置106检索访问认证信息(例如用户id和密码或永久访问令牌)。在一些实现方式中,在来自共享的用户装置108的请求中包括(818)从用户110接收的访问认证信息。即,用户在共享装置108上输入访问认证信息,并且在请求中包括那个信息。在其他实现方式中,通过用户利用个人用户装置106的用户接口来输入(820)从用户110接收的访问认证信息。

响应于(822)接收到访问认证信息,过程800执行几个操作,包括:向证书服务器102(也称为证书服务器)发送(824)访问认证信息;并且从证书服务器102接收(826)访问令牌322。

在一些实现方式中,与访问令牌322相关联的访问特权限制(828)令牌322允许对于个人信息114的访问的时间段。在一些实现方式中,该受限的时间段是(830)一小时或更少(例如,1小时、30分钟或10分钟)。在一些实现方式中,当用户提供访问认证信息时由用户110指定(832)该受限的时间段。

在限制(828)令牌322允许对于个人信息114的访问的时间段的一些实现方式中,过程800基于预定义的扩展标准来扩展(834)受限的时间段。在一些实现方式中,当剩余的时间小于阈值(例如,10分钟、0分钟、原始时间段的一半)时,扩展受限的时间段。在一些实现方式中,预定义的扩展标准包括(836)从用户110接收更新的访问认证信息。在一些实现方式中,预定义的扩展标准包括(838)确定个人用户装置106在共享的用户装置的更新半径内。在一些实现方式中,该预定义的扩展标准包括(840)确定个人用户装置106还没有移动超过预定义的更新距离。在一些实现方式中,该预定义的扩展标准包括确定还没有撤消用于访问令牌322的访问特权。

在一些实现方式中,与访问令牌322相关联的访问特权允许(842)对于个人信息114的受限部分的访问。在一些实现方式中,当用户110提供访问认证信息时,用户110指定(844)受限部分。

响应于(822)接收到访问认证信息,过程800也向共享的用户装置108发送(846)访问令牌322。访问令牌322使得(846)在共享的用户装置108上执行的软件应用118能够检索在资源服务器104处存储的用户的个人信息114的部分。在上面相对于图6和7更详细地描述了这一点。共享的用户装置108在其对于个人信息114的请求中包括其访问令牌322。在一些实现方式中,在个人用户装置106向共享的用户装置108发送访问令牌322之前,在共享的用户装置108上执行的软件应用118不被允许(848)访问个人信息114。在一些实现方式中,在受限的时间段期满后,在共享的用户装置108上执行的软件应用118不被允许(850)对于个人信息114的任何另外部分的访问。

如果用户110未移动个人用户装置106(或移动小于指定阈值),则用户110能够继续从共享的用户装置108访问个人信息114,直到访问令牌322期满。在个人用户装置106处的位置模块224监视个人用户装置106的移动,并且在一些情况下检测(852)满足预定义的运动标准的个人用户装置106的物理移动。在一些实现方式中,该预定义的运动标准包括(854)使得移动大于预定义的距离(例如相对于地球)。在一些实现方式中,该预定义的运动标准包括(856)使得个人用户装置106相对于共享的用户装置108移动超过预定义的距离。上面参考图6和7更详细地描述了测量移动的技术。响应于检测到物理移动,过程800向认证服务器102发送(858)撤消与访问令牌322相关联的访问特权的消息。在一些实现方式中,用户110必须确认访问特权的撤消。在一些实现方式中,在个人用户装置106向认证服务器102发送撤消与访问令牌322相关联的访问特权的消息后,在共享的用户装置108上执行的应用118不被允许(860)对于个人信息114的任何另外的部分的访问。

图9a-b提供了由在认证服务器102处的验证模块526执行的过程900的流程图。根据一些实现方式,过程900提供了共享的用户装置108对于个人用户信息114的访问。认证服务器在此也被称为证书服务器或认证服务器。在具有一个或多个处理器和存储器的认证服务器102处执行(902)执行过程900。过程900从共享的用户装置108接收(904)请求,该请求寻求对于与用户110相关联并且被存储在资源服务器104处的个人信息114的访问。如图6和7中所示,可以通过个人装置106或通过资源服务器104来路由对于访问的请求。在一些实现方式中,从共享的用户装置108向认证服务器102直接发送对于访问的请求。

认证服务器随后从个人用户装置106接收(906)访问认证信息(例如用户id和密码或永久访问令牌226)。在一些实现方式中,个人用户装置是(908)蜂窝电话,诸如运行androidtm操作系统的智能电话。

认证服务器102建立(910)访问令牌322,访问令牌322授予访问与用户110相关联的个人信息114的特权。在一些实现方式中,认证服务器限制(912)访问令牌322允许对于个人信息114的访问的时间段。在一些实现方式中,该受限的时间段是(914)是一小时或更少(例如,精确地一小时、或30分钟或15分钟)。在一些实现方式中,认证服务器从个人用户装置106接收(916)受限时间段的规格。在一些实现方式中,认证服务器102随后基于预定义的扩展标准来扩展(918)受限的时间段。在一些实现方式中,该预定义的扩展标准包括(920)从个人用户装置106接收更新的访问认证信息。参考图6提供了更新过程和扩展标准的更多细节。

在一些实现方式中,与访问令牌322相关联的访问特权允许(922)对于个人信息114的有限部分的访问。在一些实现方式中,认证服务器从个人用户装置106接收(924)受限部分的规格。认证服务器102向共享的用户装置提供(926)访问令牌322。如图6和7中所示,可以通过个人装置106或资源服务器104向共享的用户装置108提供(926)访问令牌322。在一些实现方式中,认证服务器102直接地向共享装置108提供(926)访问令牌322。

一旦建立了临时访问令牌322,则它保持有效,直到它期满或撤消了其特权。在从个人装置106接收到(928)用于撤消与访问令牌相关联的访问特权的命令之前,在一些实现方式中,认证服务器从资源服务器104接收(930)验证请求,其包括访问令牌322。在一些实现方式中,认证服务器102确定(932)还没有撤消与访问令牌322相关联的访问特权,并且向资源服务器104通知(934)验证已经通过,这允许共享的用户装置108对于个人信息114的访问。

在一些实现方式中,过程900对于来自共享的用户装置108的访问来自资源服务器104的个人信息114的每一个请求执行(936)下面的步骤:i)从资源服务器接收(938)验证请求,其包括访问令牌322;ii)确定(940)与访问令牌322相关联的访问特权对于所请求的个人信息114是否当前有效;并且iii)向资源服务器通知(942)该确定,由此允许或防止共享的用户装置108对于个人信息114的访问。存在为什么拒绝访问的多个原因,包括:i)所提供的访问令牌322不在令牌数据库522中存在;ii)访问令牌322已经期满;iii)访问令牌已撤消其特权;或者iv)所寻求的特定个人信息114在与访问令牌322相关联的特权的范围之外。一些实现方式也实现安全特征,以防止未意图的装置使用访问令牌322(例如利用共享的用户装置108的唯一标识符或其散列值)。

认证服务器102从个人装置106接收(944)撤消与访问令牌322相关联的访问特权的命令。在接收到撤消命令后,认证服务器102从资源服务器104接收(946)验证请求,其包括访问令牌322。认证服务器确定(948)与访问令牌322相关联的访问特权已经被撤消,并且向资源服务器104通知(950)验证请求失败。该通知由此防止(950)由共享的用户装置108对于个人信息114的访问。

为了说明的目的,已经参考特定实现方式描述了上面的说明。然而,上面的说明性讨论不意图是穷尽性的或将本发明限于所公开的精确的形式。许多修改和变化考虑到上面的教导是可能的。实现方式被选择和描述以便最佳地解释本发明的原理和其实际应用,以由此使得其他本领域内的技术人员最佳地利用本发明和具有适合于所考虑的具体用途的各种修改的各种实现方式。

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