首页> 中国专利> 针对计算机资源的自动访问控制策略生成

针对计算机资源的自动访问控制策略生成

摘要

示出了用于生成针对计算机资源的访问控制规则的方法、系统以及介质,该方法、系统以及介质涉及收集针对对计算机资源的用户访问的历史访问数据,并且将该历史访问数据分成训练数据集和验证数据集。基于训练数据集中对计算机资源的用户访问的属性来生成针对计算机资源的访问控制规则。针对验证数据集验证该规则,以确定当该规则被应用到验证数据集中时,该规则是否产生低于阈值的拒绝率水平。如果规则是有效的,则其被提供给管理界面,使得管理员可以选择该规则以应用于传入的用户请求。

著录项

说明书

背景技术

在网络安全性中,使用合法的(脆弱的)文件用于恶意的使用或者访问具有敏感信息的文件,恶意的动作者或攻击者频繁地尝试渗透计算机系统,以访问或损坏具有敏感信息的文件或者在机器的文件系统上投放恶意的文件。例如,财务或个人信息可能被获取,并且出售或被利用来窃取资金。公共和私有实体的重要信息可以被窃取、损坏或者破坏。

为降低计算机资源的脆弱性(例如攻击表面),组织的安全员或管理员可以限制对机器的计算机资源(诸如他们的文件系统和服务)的访问。然而,现有的解决方案通常要求由管理员针对每个计算机资源和用户对进行手动配置。作为结果,大量机器的操作者通常需要(1)理解需要被强化的机器是什么,(2)理解什么是针对这些机器的每一个的正确配置,(3)分别配置每个机器,(5)保持跟踪这些机器中的所有机器上的系统变化以及(6)如果要求权限(permission)模型中的变化,则拥有者需要分别访问每个机器以改变它们的每一个上的规则。由于该管理开销,用户经常没有充分利用该能力,尽管他们在向他们的环境添加更多的风险。

另外,组织或者管理员可能难以有效率地创建定制的策略来限制用户的访问仅到他们需要的文件。创建定制的策略要求分析文件和系统日志的许多手动工作。在许多情况下,客户不具有为了这样做所要求的数据或者所要求的知识。在其他的情况下,他们不具有资源,因为该任务由于大规模的数据可能花费大量时间。然后,在激活他们的策略之后,因为用户和使用模式随时间改变,要求更多的手动工作以便维护定制的策略(诸如访问白名单)。

针对这些和其他技术挑战,提出了本文中做出的公开。

发明内容

使用访问控制规则限制对计算机资源的访问可以显著地减少攻击表面(例如向攻击者展露计算机资源),以及限制在系统内攻击者的渗透和移动。然而,由管理员手动创建访问控制规则通常是耗时的,并且可能忽略可能不明显的对计算机资源的用户访问的属性。因此,有效的访问控制规则可能未被配置或者未被完全地配置,使计算机资源更易受到攻击。

本技术通过基于历史用户访问数据来自动地生成访问控制规则以限制对计算机资源的访问,来减少针对系统或机器的攻击表面。例如,历史访问数据可以包括由特定用户对计算机资源的频繁的访问请求,并且准许由特定用户的访问但是对其他用户拒绝访问的访问规则被生成。当对计算机资源的访问被限于通常访问该计算机资源的用户时,计算机资源的脆弱性被降低。也可以通过所公开的主题的实现,来实现本文未具体提及的其他技术益处。

为了实现以上简要提及的技术益处,本文中所公开的技术的某些实现可以基于针对对计算机资源的用户访问的历史访问数据,自动地生成访问控制规则用于控制对计算机资源的访问。历史访问数据被分成训练数据集和验证数据集。基于训练数据集中对计算机资源的用户访问的一个或多个属性,针对计算机资源的访问控制规则被生成。访问控制规则被应用到验证数据集以确定拒绝率(denial rate level)水平。如果拒绝率水平低于阈值参数,则访问控制规则被确定是有效的并且该访问控制规则被提供给管理接口用于向管理员呈现以供审核和选择。

在一些实现中,访问控制规则通过以下来验证:向验证数据集的多个子集中针对计算机资源的用户访问请求应用访问控制规则,以获取针对多个子集中的每一个的拒绝率水平。使用对应于子集的阈值参数值,针对每个子集的拒绝率水平被评分,其在一些示例中可以反映子集的权重。每个子集的得分被收集以确定累积的得分,并且如果累积的得分低于阈值得分值,则访问控制规则被确定为是有效的。

在某些实现中,阈值参数值基于预设值、算法所确定的值、或者从管理员接收的值中的一个或者组合而被确定。在一些实现中,针对计算机资源的访问控制规则基于利用以下的一个或者组合分析训练数据集中对该计算机资源的用户访问的属性而被生成:机器学习、统计分析、贝叶斯分析、直方图的分析以及用户特性聚类。

如上文简要地所讨论的,本文中所公开的技术的实现,可以使计算机系统更不易于受到攻击,由此避免了由于被破解的和被损坏的计算机资源而造成的无效率。更安全的计算机系统将导致针对计算机系统的已授权用户的计算机资源的更高的可用性和效率。也可以通过所公开的技术的实现,来实现本文未具体提及的其他技术益处。

应理解以上所描述的主题可以被实现为计算机控制的装置、计算机实现的方法、计算设备、或者被实现为诸如计算机可读介质的制品。通过阅读以下具体实施方式并查阅相关联的附图,这些和其他各种特征将变得明显。

提供本发明内容以用简化的形式介绍一些概念,这些概念将在下面的具体实施方式中被进一步描述。本发明内容既不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在被用于限制所要求保护的主题的范围。此外,所要求保护的主题不限于解决本公开的任何部分中所提到的任何或者所有劣势的实现。

附图说明

图1A是示出根据所公开的技术的自动访问控制策略生成系统的说明性示例的架构图;

图1B是示出联网的计算环境的说明性示例的网络架构图,该联网的计算环境涉及被托管在自动访问控制策略生成系统的服务器集群上的自动控制策略生成系统;

图2是示出用于自动访问控制策略生成系统的服务器集群中的横向攻击的说明性示例的软件架构图;

图3A是示出利用根据所公开的技术而被生成的访问规则的服务器集群的说明性示例的软件架构图;

图3B是示出管理员用户界面的说明性示例的示意图,该管理员用户界面用于利用根据所公开的技术的自动控制策略生成系统在自动访问控制策略生成系统中管理访问规则;

图4是示出在服务器集群中应用访问控制规则中的消息传输的图示的消息图;

图5A是图示根据所公开的技术的用于自动控制策略生成的过程的各方面的流程图;

图5B是流程图,其图示了根据所公开的技术的一个方面的用于验证图5A的示例中的访问控制规则的过程的示例;

图5C是流程图,其图示了其图示了根据所公开的技术的另一个方面的用于在图5A的示例中验证访问控制规则的过程的另一个示例;

图5D是图示从管理用户接收输入的过程的示例的流程图,该管理用户选择由所公开的技术的自动控制策略生成所生成的访问控制规则;

图5E是图示用于向访问请求应用访问控制规则的过程的示例的流程图;

图6是示出用于计算设备(诸如图1A、图1B、图2以及图3A所示的计算设备)的说明性计算机硬件和软件架构的计算机架构图,该计算设备可以实现本文中所呈现的技术的各方面;

图7是其图示能够实现本文中所呈现的技术的各方面的分布式计算环境的网络图;以及

图8是计算机架构图,其图示了用于能够实现本文中所呈现的技术的各方面的计算设备(诸如图1A、图1B、图2以及图3A所示的计算设备)的计算设备架构。

具体实施方式

以下具体实施方式针对自动访问控制策略生成系统,该自动访问控制策略生成系统用于定义并且应用访问规则以控制对计算机资源的访问。如上文简要地所讨论的,可以访问计算机资源的大量用户和设备创建在所公开的技术中被管理的攻击表面。计算机资源的安全性可以由所公开的方法改善,该方法基于历史访问数据自动地生成针对计算机资源的访问控制规则以减少计算机资源的攻击表面。所公开的方法的经改进的计算机资源安全性可以在资源和数据的保护方面给计算机资源的管理员(诸如本地以及远程计算机系统的管理员)带来显著的益处,这改善了资源利用、可用性以及整体性能。

虽然本文中所描述的主题是在与计算机系统上的操作系统和应用程序的执行结合而执行的程序模块的一般上下文中被呈现的,但是本领域技术人员将认识到,可以结合其他类型的程序模块来执行其他实现。通常,程序模块包括例程、程序、组件、数据结构以及执行特定任务或实现特定抽象数据类型的其他类型的结构。此外,本领域技术人员将理解,本文中所描述的主题可以与其他计算机系统配置一起被实践,包括手持式设备、多处理器系统、基于微处理器或可编程的客户电子设备、被嵌入在设备中的计算或处理系统(诸如可穿戴设备、汽车、家庭自动化等)、小型计算机、大型计算机等。

在下面的具体实施方式中参考了构成其一部分、并且以图示的方式示出了具体的配置或示例的附图。现在参考附图,在其中在几个附图中相同的附图标记表示相同的元素,将描述提供经改进的安全性的自动访问控制策略生成系统的各方面。

图1A是示出根据所公开的技术的自动访问控制策略生成系统120的说明性示例的架构图。自动访问控制策略生成系统120包括数据收集器122,数据收集器122在该示例中收集由用户尝试访问计算机资源的追踪事件,诸如存储文件。在一个示例中,针对每个访问尝试,数据收集器122收集针对做出访问尝试的用户的用户标识符、由该用户访问的文件的文件标识符、以及针对访问的动作权限水平,例如用户读取、更新或者删除文件。取决于所期望的实现,数据收集器可以将有关访问请求的历史数据保持预定义的时间段,诸如过去三十天、算法所确定的时间段、多个时间段。

数据分离器124接收历史数据,并且在一个示例中,将历史数据分成训练数据集和验证数据集。训练数据集被用于生成访问控制规则,该访问控制规则用于控制对计算机资源的访问,诸如用于客户端或服务器设备的存储权限模型的推荐的策略。验证数据集被用于在向管理用户呈现以供考虑以及选择之前测试访问控制规则以及验证访问控制规则。

数据可以以各种方式被分成训练集和验证集。例如,训练数据集在第一时间段期间被收集并且验证数据集在第二时间段期间被收集,其中第一时间段早于第二时间段。在另一个示例中,训练数据集通过使用第一采样算法来采样历史数据而被获取(诸如对每个其他访问尝试进行采样),并且验证数据集通过使用第二采样算法来采样历史数据而被获取(诸如伪随机采样模式)。各种方法可以与所公开技术一起被利用。

策略生成器130基于从数据分离器124接收的训练数据集来生成访问控制规则。针对特定计算机资源(诸如大容量存储装置中的存储文件或文件夹)的访问控制规则可以基于训练数据集中对计算机资源的历史访问而被生成。针对文件所生成的访问控制规则可以定义被允许访问文件的用户以及用户中的每个用户被准许的动作。例如,如果用户访问文件多于训练数据集中的阈值次数(例如ben@organization.edu访问文件XYZ用于读取和写入动作多于三次),则所生成的访问控制规则准许用户访问文件(ben@organization.edu可以读取或写入存储文件XYZ)。

由策略生成器130生成的策略可以使用各种方法(诸如机器学习或统计方法)被确定。例如,被应用到训练数据集的贝叶斯方法可以被利用来生成策略。在另一个示例中,训练数据集的直方图的(例如,直方图)分析可以被利用来生成访问控制规则。

在又一个示例中,可以利用基于用户特性(诸如与特定组织(例如,公司或大学、或者部门(例如,工程、维护或人力资源))相关联的用户)的对训练数据集中的集群的分析。基于集群被确定的访问控制规则的简化示例仅准许是已定义的组织(例如,人力资源)的部分的用户访问特定的文件。在一些示例中,用户特性的不同特征可以被评分,阈值和权重被应用到每个特征得分,并且加权的特征得分被组合以产生策略。

注意访问控制规则可以基于用户访问模式的变化而随着时间改变。所公开的技术可以被利用来自动地生成新的访问控制规则以替换过时的规则。例如,如果针对计算机资源的现有的访问控制规则导致超过阈值的拒绝率,则自动访问控制策略生成方法可以被激活以生成不同的访问控制规则,该不同的访问控制规则反映对计算机资源的用户访问的最近的模式。

验证器140从策略生成器130接收策略,并且向从数据分离器124接收的验证数据集应用访问控制规则。验证器140评估由应用访问控制规则引起的对计算机资源的访问的影响,并且确定是否经由用户界面(UI)或应用程序接口(API)150向管理用户呈现访问控制规则。在一些示例中,由验证器140执行的评估可以利用来自参数存储库142的一个或多个阈值参数。例如,如果对针对计算机资源的访问控制规则的应用导致超过阈值水平的验证数据集中的合法用户访问尝试的拒绝率,则验证器140拒绝访问控制规则。在图1A的示例中,管理用户可以确定被存储在参数存储库142中的参数的值。

图1B是示出网络计算环境160的说明性示例的网络架构图,网络计算环境160涉及与服务器集群170通信的用户或服务器计算设备164。在该示例中,计算设备164A和计算设备164B是客户端设备,诸如个人计算机、膝上型计算机、平板计算机或智能手机,并且计算设备164C和计算设备164D是服务器,诸如由客户在他们自己的经营场所上操作和维护的服务器。客户端设备164A和164B以及服务器设备164C和64D在该示例中通过网络110与服务器集群170的资源通信。

在图1B的示例中,服务器集群170包括图1A的自动访问控制策略生成系统120以及集群计算机资源,诸如电子邮件服务模块、域目录、消息数据(诸如针对文本或语音消息)、用于存储用户应用和操作性数据的数据存储装置、以及用于存储与用于用户账户的凭证相关的数据的凭证数据存储库。服务器集群170在该示例中也包括存储关于由用户对计算机资源172的访问的历史信息的访问日志174。访问控制策略生成系统120生成针对服务器集群170的计算机资源的访问控制策略。

图2是图示服务器集群210中的横向攻击的示例的软件架构图。服务器集群210被配置为通过网络202向用户提供服务,诸如电子邮件消息、文本消息、远程应用、远程存储装置等。例如,图1B中具有用户账户的用户计算设备164的用户可以通过网络202登录到服务器集群210,以便访问电子邮件服务222。

然而,攻击者可以利用计算设备206(诸如图1B中的设备164)利用远程访问应用208来通过网络202尝试登录或者访问服务器集群210。如上文简要地所讨论的,使用暴力攻击技术,具有找到允许他们访问账户的一组凭证(例如用户名和密码组合)的目的的攻击者将使用各种用户名或者账户标识符以及密码重复地试图登录到服务器集群210。自动技术已经由攻击者开发生成大量用户名和密码组合并且尝试使用其登录。

注意,可以使用远程计算机资源(例如“云”)来实现本文中所讨论的服务器集群210,以执行计算机处理(诸如对用户控制输入或其他数据输入进行响应)。在一些云计算场景中,一些操作可以被实现在一组计算资源中(诸如客户端和服务器),以及其他操作可以被实现在其他计算资源中(诸如由一个或多个计算资源供应商提供的云资源)。云计算环境可以包括由不同的供应商提供的许多计算机资源供应商系统。计算资源供应商的示例包括来自MICROSOFT CORPORATION的WINDOWS AZURE服务平台、来自AMAZON,INC.的AMAZON AWS,来自GOOGLE INC的GOOGLE云平台,以及来自VMWARE,INC.的平台可视化软件和服务。

一旦攻击者找到准许对服务器集群210的访问的有效的用户名和密码组合,攻击者通常访问服务器集群的计算机资源以访问信息或者引入恶意的代码。例如,攻击者可以使用这些凭证以通过服务器集群210试图访问其他系统资源(诸如其他机器、系统、数据以及服务)而横向地攻击。例如,攻击者可以使用远程访问工具以通过服务器集群或系统210横向地移动来收割附加的凭证、搜索敏感信息、注入恶意软件、以及访问其他域、设备和数据。

例如,攻击者可以尝试标识网络中的管理员以及该管理员访问的机器。他们也可以尝试访问域控制器中的数据以发现账户以及获取对针对该账户的资源和文件的访问。攻击者也可以搜索被存储在已经被破解的计算机上的用于其他用户的凭证。攻击者然后可以使用这些窃取的凭证以跨用户和资源横向地移动以在网络中获取管理特权。

在图2的示例中,在240处,使用远程访问应用208以及使用窃取的用户凭证的攻击者206通过服务器212A获得对服务器集群210中的账户的访问。在242处,攻击者然后使用以使用被破解的账户所获取的访问来访问域目录224,以标识域内的其他设备或系统以在244处用于进一步的攻击。在246处,攻击者也可以使用被破解的账户来横向地攻击集群210中的另一个服务器212B。或者,在250处,攻击者可以获得对凭证数据存储库230的访问,以在252处获取用于其他账户的凭证,攻击者将使用这些其他账户的凭证来访问针对那些账户的数据和资源。

攻击者也可以搜索通信数据(诸如电子邮件服务222中的电子邮件消息或者消息数据226中的文本或语音消息)以获取例如敏感信息(诸如破解的通信)或者附加的用户账户名称,以在附加的暴力攻击中使用。攻击者可以通过被破解的账户获取对数据存储装置228中的敏感数据的访问,诸如文档、个人记录、或财务交易。

可能是由攻击者使用窃取的用户凭证进行的访问将经常涉及用户访问请求的异常模式。例如,用于工程部门中的用户的凭证尝试访问属于财务部门的文件。基于历史访问数据所生成的用于文件的访问控制规则可以阻止这样的可能由攻击者引起的用户访问请求的异常模式。

图3A是示出服务器集群310的图示的软件架构图,服务器集群310具有访问规则引擎330,访问规则引擎330向用户访问请求应用被存储在访问规则存储库332中的访问控制规则。访问规则存储库332中的访问控制规则可以由所公开的技术的访问控制策略生成方法生成。在该示例中,服务器集群310,如图2的服务器集群,包括电子邮件服务322、域目录324、消息数据326、数据存储装置328以及凭证数据329。

在图3A的示例中由自动访问控制策略生成系统(诸如图1A中所示的系统120)生成的访问控制规则被呈现给使用具有管理应用342的管理用户设备340的管理用户。管理应用342使管理员340能够在访问规则存储库332中定义访问控制规则。管理用户选择所呈现的访问控制规则,该访问控制规则在344处被存储在访问规则存储库332中。

在308处,使用具有用户应用304的用户设备306的用户经由集群中的服务器312中的一个服务器生成对服务器集群310的计算机资源访问尝试(诸如文件访问尝试)。计算机资源访问尝试包括计算机资源标识符(例如文件路径名)以及用户标识符(例如用户名)。在314处,计算机资源标识符和用户标识符被提交给规则引擎330。

规则引擎330使用计算机资源标识符来确定是否访问规则存储库332中的任何访问规则与计算机资源标识符相关。例如,有关由计算机资源标识符引用的特定的文件或者计算机资源标识符所属于域的访问控制规则可以被定义。如果关于计算机资源标识符的访问控制规则被找到,则规则引擎330向用户的访问尝试的用户标识符应用相关的访问控制规则,以确定要求用户的访问尝试被阻止的规则是否被触发。注意,附加的属性或特性也可以关于访问尝试和访问控制规则而被考虑,诸如在访问尝试中被标识的所期望的动作和访问控制规则中针对用户的被准许的动作。注意规则引擎330可以是在服务器312或服务器集群310的其他组件中的一个内执行的过程。

图3B是示出管理员用户界面345(诸如可以经由图3A的管理员应用342被呈现给管理员的)的图示的示意图,管理员用户界面345使管理员能够被呈现以由图1A的自动访问控制策略生成系统120生成的访问控制规则并且能够选择所呈现的访问控制规则用于包括在图3A的访问规则存储库332中。

在该示例中,界面345包括标识符字段346,标识符字段346标识访问控制规则有关于的计算机资源。界面345也呈现用于在字段346中所标识的计算机资源的被推荐的访问控制规则350以由管理员考虑以及选择。访问控制规则350被标识在规则标识符字段352中,并且选择字段354被提供以使管理员能够选择访问控制规则350用于激活并且包括在图3A的访问规则存储库332中。

在该示例中,管理用户界面345呈现如由图1A中所示的访问控制策略生成系统生成的用于被推荐的访问控制规则350的所提议的参数。所提议的参数的值从被输入到图1A中策略生成器130的训练数据集中的访问尝试的特性而被确定。

被准许的用户和域360可以在字段362中被定义。例如,被准许访问计算机资源的用户的白名单或者用户域的白名单可以被定义。在另一个示例中,被禁止访问的用户或域的黑名单也可以被定义。

在一些实现中,被准许的时间的参数370可以针对规则而被定义,诸如开始日期372、结束日期374、开始时间376以及结束时间378。例如,针对被准许的访问的时间范围可以在开始日期372和结束日期374中被定义。在另一个示例中,管理用户可以填充这些字段以定义针对规则的有效的日期范围。另外,在该示例中,当访问被准许时的每天期间的时间段可以在开始时间376和结束时间378中被定义。在一个示例中,规则推荐对计算机资源的访问仅在每天的特定时间段期间被准许,例如工作时间。在各种示例中,这些值可以基于训练数据集的特性、有关用户或域(例如组织)的特性或者这些或其他因素的组合而被生成。

在某些实现中,管理用户界面345也可以包括针对规则而被定义的被准许的物理的参数380,诸如被准许的地理位置382A、被准许的设备382B、或者被准许的网络382C。例如,字段382A可以定义从其可以访问计算机资源的地理区域。字段382B可以定义从其可以访问计算机资源的一个或多个设备。字段382C可以定义从其可以访问计算机资源的一个或多个网络域。

例如,在字段346中所标识的计算机资源可以具有在字段382A中被定义的美国的地理区域,并且该计算机资源仅可以从美国内被访问。在另一个示例中,雇员工作计算机或智能手机可以在字段382B中被定义,使得计算机资源仅可以从这些已定义的设备被访问。在又一个示例中,公司网络域可以在字段382C中被定义,以使得计算机资源仅可以从公司网络内被访问。

管理用户界面345也可以包括被准许的用途参数390。例如,字段392A可以定义可以被用于访问计算机资源的特定的应用。字段392B可以被用于定义计算机资源内有限的数据存储库,对这些有限的数据存储库的访问是被准许的。字段392C可以定义计算机资源内的一个或多个域,对该一个或多个域的访问是被准许的。

例如,在域346中所标识的计算机资源可以被限于使用在字段392A中所定义的文字处理应用或数据库应用来访问。在另一个示例中,访问可以被限于在字段392B中所定义的特定的数据库。在又一个示例中,访问被限于在字段392C中所定义的计算机资源内的公司域。

注意,本文中所描述的所提议的参数仅是示例。更少、更多或者不同类型的参数可以在使用界面被呈现给管理用户的访问控制规则350中被提议。同样,参数中的一些参数可以被保留以由管理用户定义,而不是由自动访问控制策略生成系统120推荐。例如,开始日期372和结束日期374可以是管理用户所定义的值。应容易地认识到,在不脱离本公开的范围的情况下,可以针对规则来定义超越图3B的示例中所图示的那些参数的多种不同的参数。

图4是示出系统中的消息传输场景400的说明性示例的消息图,在该系统中,一个或多个访问控制规则已经由自动访问控制策略生成系统生成并且由管理用户选择以供应用。在该示例中,在402处,管理员340利用图3A的管理应用342以及图3B的管理用户界面344来选择与计算机资源相关的一个或多个访问控制规则,该一个或多个访问控制规则被存储在访问规则存储库332中,用于对用户访问请求的应用。

在410处,图3A中的用户306,向服务器312发送访问请求,该访问请求包括针对用户的标识符(例如用户(A))以及针对计算机资源的计算机资源标识符(例如文件(X))。在412处,服务器312向规则引擎330发送计算机资源标识符。在414处,规则引擎330使用计算机资源标识符,以针对有关该计算机资源标识符的一个或多个访问控制规则(例如具有匹配该计算机资源标识符的规则或者具有有关该计算机资源标识符的域标识符的规则)来搜索访问规则存储库332。在420处,规则引擎330从访问规则存储库332获取相关的访问控制规则并且向访问请求应用该规则。

在430处,在该示例中,如果访问请求属性未通过规则(例如访问请求未落入在访问规则中被定义的被允许的参数内),则规则引擎通知服务器312访问尝试被拒绝。在432处,服务器312向用户306发送拒绝访问尝试的消息。注意,多个访问规则可以有关计算机资源,并且规则引擎330可以以各种方式被设计以向访问请求应用多个规则,诸如,如果访问请求满足规则中的任何一个规则的参数则允许访问,或者仅在如果访问请求落入规则中的所有规则的参数内时允许访问。

如果访问请求的属性通过规则(例如访问请求属性落入在访问规则中被定义的被允许的参数内),则在440处,规则引擎通知服务器312访问尝试被允许。在442处,服务器312向用户306发送准予登录或访问尝试的消息。

将理解在与图3A和图4相关联的示例中所示的架构和消息是说明性的并且不限制所公开的技术的范围。本领域技术人员将容易地认识到,在符合所公开的技术的情况下,其他架构和消息协议可以被利用。

图5A是示出根据本文中所公开的一个示例的图示过程500的各方面的示例的流程图,过程500用于在图1A中的自动访问控制策略生成系统中生成访问控制规则。在该示例中,过程500可以在各种上下文中被调用(诸如在背景中),并且被呈现给管理员340以供考虑,管理员340利用具有管理用户界面344的管理应用342来选择将被存储在访问规则存储库332中的一个或多个访问规则。

在502处,针对计算机资源的历史访问数据被收集(例如通过数据收集器122)。在504处,历史访问数据被分成训练数据集和验证数据集(例如通过数据分离器124)。在506处,训练数据集被用于生成针对计算机资源的访问控制规则(例如通过策略生成器130)。

在510处,访问控制规则通过向验证数据集应用规则而被验证。如果访问控制规则产生超过预确定的或所选择的水平的访问率的拒绝(例如阻止率),则控制分支到514并且访问控制规则被拒绝为无效的。否则,控制分支到512,其中访问控制规则通过用户界面或API被呈现给管理员。

图5B图示根据所公开的技术的一个方面的过程的一个示例的流程图,该过程用于验证图5A的示例中的操作510中的访问控制规则。在520处,访问控制规则被应用到验证数据集以获取针对该访问控制规则的访问请求阻止水平。在524处,阻止水平与阈值参数522相比较。阈值参数的示例是预定的值、算法所定义的值或者由管理员选择的值。一个或多个参数值可以被存储在图1中的参数存储库142中并且从其被获取。

在530处,如果阻止率低于参数,则控制分支到532并且向过程500返回有效的指示。如果阻止率不低于参数,则控制分支到534并且向过程500返无效的指示。

图5C图示根据所公开的技术的一个方面的过程的另一个示例的流程图,该过程用于验证图5A的示例中的操作510中的访问规则,其中访问控制规则被应用到验证数据集的子集,并且针对子集的阻止率被加权并且被收集以确定得分。

在540A处,访问控制规则被应用到验证数据的第一子集(例如有关特定组织的验证的子集),并且,在542A处,所得到的第一阻止率针对第一参数X1而被评分,在一些示例中,第一参数X1可以反映被分配给第一阻止率的权重。

在540B处,访问控制规则被应用到验证数据的第二子集(例如有关与特定组织相关的行业或活动的验证的子集),并且,在542B处,得到的第二阻止率针对第二参数X2而被评分,在一些示例中,第二参数X2可以反映被分配给第一阻止率的权重。例如,X1比X2包含更高的权重,因为X1与通常访问计算机资源的组织更密切地相关。

如在540N处所反映的,可以基于设计标准以及目标来实现数据的子集以及相关联的参数的多个水平,其中访问控制规则被应用到验证数据的第N子集,在542N处,所得到的第N阻止率针对第N参数XN而被评分。

在550处,验证数据的子集中的每个子集的得分被收集并且被评分以产生累积的得分。在552处,累积的得分被与阈值得分值相比较。如果累积的得分少于阈值得分,则,在554处,向过程500返回有效的指示。否则,在556处,向过程500返回无效的指示。

如以上所提到的,使用UI或API,访问控制被呈现给管理用户以供考虑。图5D是图示过程560的示例的流程图,过程560用于从管理用户接收选择由所公开的技术的自动控制策略生成系统生成的访问控制规则的输入。在563处,选择访问控制规则的输入信号经由UI或API从管理员被接收。在564处,响应于管理员对访问控制规则的选择,规则被存储在访问规则存储库332中以用于对用户访问请求的应用。

注意,在一些实现中,管理员可以经由UI或API修改被呈现给管理员的访问控制规则。在这样的实现中,在563处从管理员接收的输入信号可以包括由管理员做出的对访问控制规则的修改或者已修改的访问控制规则。

图5E是图示过程570的示例的流程图,过程570用于向访问请求应用访问控制规则。在572处,针对计算机资源的访问请求从用户被接收。在576处,针对有关在访问请求中被标识的计算机资源的访问控制规则,访问规则存储库332或者用于访问控制规则的类似的存储库被搜索。

在580处,访问控制规则被应用到访问请求的属性,例如访问请求的用户标识符、日期、一天中的时间、地理位置、设备、网络等。如果访问请求属性落入参数访问控制规则的参数内,则在582处,对计算机资源的访问被准许。否则,在584处,访问请求被拒绝。

本领域技术人员将容易地理解,在不脱离所公开的技术的范围的情况下,可以利用各种方法来基于历史访问数据自动地生成访问控制规则以及应用那些规则。

通过基于历史访问数据自动地生成针对计算机资源的访问控制规则,所公开的技术促进对访问控制规则更有效的管理。通过使访问控制规则的生成更简单,管理员更可能引入访问控制规则来保护计算机资源并且降低计算机资源对恶意攻击的展露。例如,被呈现有从至少部分地已定义的从历史访问数据生成的访问控制规则的管理员可以更容易地考虑以及实现访问控制规则。

应理解,虽然本文中所公开的实施例已经主要在基于历史访问数据自动地生成访问控制规则用于限制对计算机资源的访问请求的环境中被呈现。但是,本文中所公开的技术可以被类似地应用到其他上下文中,其中类似的功能性被利用来基于历史访问数据自动地生成访问控制策略以控制对计算机资源的访问。

图6是示出用于计算机600的架构的计算机架构图,计算机600能够执行本文中所描述的软件组件。图6中所图示的架构是用于以下的架构:服务器计算机、移动电话、电子阅读器、智能手机、台式计算机、笔记本计算机、平板计算机、膝上型计算机、或另一种类型的适合于执行本文所呈现的软件组件的计算设备。

在这方面,应理解图6中所示的计算机600可以被利用来实现能够执行本文中所呈现的软件组件中的任何软件组件的计算设备。例如,并且没有限制,参考图6所描述的计算架构可以被利用来实现计算设备104或计算设备164、或者图1A中所图示的自动访问控制策略生成系统的模块、或者图2和图3A中所图示并且在上文中所描述的系统200和300的组件中的一些组件或所有组件,其能够执行以上所描述的各种软件组件,诸如图5A-图5E中所图示的过程的操作。

图6中所图示的计算机包括中央处理单元602(“CPU”)、系统存储器604(包括随机存取存储器606(“RAM”)和只读存储器(“ROM”)608)、以及将存储器604耦合到CPU 602的系统总线610。基本输入/输出系统(“BIOS”或“固件”)被存储在ROM 608中,该基本输入/输出系统包含帮助在计算机600内的元件之间传输信息(诸如在启动期间)的基本例程。计算机600还包括一个或多个大容量存储设备612用于存储操作系统621、应用程序622以及其他类型的程序和数据,包括但不限于计算机资源624和访问规则存储库626。计算机资源624和存取规则626可以被存储在与彼此不同的存储设备中。

大容量存储设备612通过被连接到总线610的大容量存储控制器(未示出)而被连接到CPU 602。大容量存储设备612以及其相关联的计算机可读介质提供用于计算机600的非易失性存储装置。尽管本文中所包含的对计算机可读介质的描述指的是大容量存储设备(诸如硬盘、CD-ROM驱动、DVD-ROM驱动、或USB存储密钥)但是本领域技术人员应理解,计算机可读介质可以是可以由计算机600访问的任何可用的计算机存储介质或通信介质。

通信介质包括经调制的数据信号(诸如载波)或者其他传输机制中的计算机可读指令、数据结构、程序模块或者其他数据,并且包括任何传递介质。术语“经调制的数据信号”意为以在信号中编码信息的方式使其特性中的一个或多个特性被改变或者被设置的信号。作为示例而非限制,通信介质包括有线介质(诸如有线网络或直接连线的连接)以及无线介质(诸如声学的、射频、红外的以及其他无线介质)。以上中的任何的组合也应被包括在计算机可读介质的范围内。

作为示例而非限制,计算机存储介质可以包括以用于信息(诸如计算机可执行指令、数据结构、程序模块或者其他数据)的存储的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。例如,计算机存储介质包括但不限于RAM、ROM、EPROM、EEPROM、闪存或其他固态存储技术,CD-ROM、数字多功能磁盘(“DVD”)、HD-DVD、蓝光或其他光学存储装置,盒式磁带、磁带、磁盘存储装置或其他磁性存储设备,或者可以被用于存储所期望的信息并且可以由计算机600访问的任何其他介质。出于权利要求的目的,短语“计算机存储介质”及其变体不包括波或信号本身或者通信介质。

根据各种配置,计算机600可以通过网络(诸如网络618)使用到远程计算机的逻辑连接在联网的环境中操作。计算机600可以通过被连接到总线610的网络接口单元620连接到网络618。应理解,网络接口单元620也可以被利用来连接到其他类型的网络以及远程计算机系统。计算机也可以包括输入/输出控制器616用于接收以及处理来自多个其他设备的输入。类似地,该输入/输出控制器616包括键盘、鼠标、触摸输入或电子触控笔(在图6中未示出)。类似地,输入/输出控制器616可以向显示器屏幕或者其他类型的输出设备(在图6中也未示出)提供输出。

应理解,本文中所描述的软件组件当被加载到CPU 602中并且被执行时,可以将CPU 602以及总体的计算机600从通用计算设备变换成被定制化以促进本文中所呈现的功能性的专用计算设备。CPU 602可以从任何数目的晶体管或者其他分立电路元件被构建,这些晶体管或者其他分立电路元件可以单独地或集体地假设任何数目的状态。更具体地,CPU602可以响应于本文中所公开的软件模块内所包含的可执行指令,作为有限状态机操作。这些计算机可执行指令可以通过指定CPU 602如何在状态之间转变而变换CPU 602,由此变换组成CPU 602的晶体管或者其他分立硬件元件。

编码本文中所呈现的软件模块也可以变换本文中所呈现的计算机可读介质的物理结构。在本描述的不同实现中,物理结构的具体变换取决于各种因素。这样的因素的示例包括但不限于被用于实现计算机可读介质的技术、计算机可读介质被表征为主存储装置还是二级存储装置等。例如,如果计算机可读介质被实现为基于半导体的存储器,则本文中所公开的软件可以通过变换半导体存储器的物理状态而被编码在计算机可读介质上。例如,软件可以变换构成半导体存储器的晶体管、电容器或其他分立电路元件的状态。软件也可以变换这样的组件的物理状态以便在其上存储数据。

作为另一个示例,本文中所公开的计算机可读介质可以使用磁性或光学技术来实现。在这样的实现中,本文中所呈现的软件可以在软件被编码在磁性或光学介质中时,变换该磁性或光学介质的物理状态。这些变换可以包括更改给定的磁性介质内的特定位置的磁性特性。这些变换也可以包括更改给定的光学介质内的特定位置的物理特征或特性,以改变那些位置的光学特性。在不脱离本描述的范围和精神的情况下,物理介质的其他变换也是可能的,提供前述示例仅是为了促进该讨论。

鉴于以上,应理解许多类型的物理变换可以发生在计算机600中以便存储和执行本文中所呈现的软件组件。也应理解,图6中所示出的用于计算机600的架构或者类似的架构可以被利用来实现其他类型的计算设备,包括手持式计算机、视频游戏设备、嵌入式计算机系、诸如智能手机和平板的移动设备、以及本领域技术人员已知的其他类型的计算设备。也考虑到计算机600可以不包括图6中所示的组件中的所有组件,可以包括图6中未明确地所示出的其他组件,或者可以利用与图6中所示的架构完全不同的架构。

图7示出了说明性的分布式计算环境702的各方面,分布式计算环境702可以提供云来源的资源(用于自动访问控制策略生成系统的资源),本文中所描述的软件组件可以在其中被执行。因此,图7中所图示的分布式计算环境702可以被用于执行能够提供以上关于图1-图5所描述的功能性的程序代码和/或本文中所描述的其他软件组件中的任何软件组件。

根据各种实现,分布式计算环境702可以在网络708上操作、与网络708通信或者作为网络708的部分。一个或多个客户端设备706A-706N(以下笼统地和/或一般地被称为“设备706”)可以经由网708和/或其他连接(图7中未图示)与分布式计算环境702通信。

在所图示的配置中,设备706包括:计算设备706A,诸如膝上型计算机、台式计算机或其他计算设备;“板”或平板计算设备(“平板计算设备”)706B;移动计算设备706C,诸如移动电话、智能手机或其他移动计算设备;服务器计算机706D;和/或其他设备706N。应理解任何数目的设备706可以与分布式计算环境702通信。本文中参考图6和图8图示并且描述了用于设备706的两个示例计算架构。应理解,所图示的客户端设备706以及本文中所图示和描述的计算架构是说明性的,并且不应以任何方式被解释为是限制性的。

在所图示的配置中,分布式计算环境702包括应用服务器704、数据存储装置710以及一个或多个网络接口712。根据各种实现,应用服务器704的功能性可以由一个或多个服务器计算机提供,该一个或多个服务器计算机作为网络708的部分而执行或者与网络708通信。应用服务器704可以托管各种服务,诸如虚拟机、门户和/或其他资源。在所图示的配置中,应用服务器704托管用于托管应用(诸如用于实现以上关于图1-图5所描述的功能性的程序组件)的一个或多个虚拟机714。应理解,该配置是说明性的,并且不应以任何方式被解释为是限制性的。应用服务器704也可以托管一个或多个web门户、链接页面、网站和/或其他信息(“web门户”)716或者提供对它们的访问。

根据各种实现,应用服务器704也包括一个或多个邮箱服务718以及一个或多个消息服务720。邮箱服务718可以包括电子邮件(“email”)服务。邮箱服务718也可以包括各种个人信息管理(“PIM”)服务,包括但不限于日历服务、联系人管理服务、协作服务和/或其他服务。消息服务720可以包括但不限于即时(“IM”)服务、聊天服务、论坛服务、和/或其他通信服务。

应用服务器704也可以包括一个或多个社交联网服务722。社交联网服务722可以提供各种类型的社交联网服务,包括但不限于用于分享或发布状态更新、即时消息、链接、照片、视频和/或其他信息的服务,用于评论文章、产品、博客或其他资源或者显示对其的兴趣的服务,和/或其他服务。在一些配置中,社交联网服务722可以由以下提供,或包括以下:FACEBOOK社交联网服务、LINKEDIN职业联网服务、FOURSQUARE地理联网服务等。在其他的配置中,社交联网服务722由可以被称为“社交联网供应商”的其他服务、站点和/或供应商提供。例如,一些网站允许用户在各种活动和/或上下文(诸如阅读已发表的文章、评论商品或服务、发表、协作、游戏等)期间经由电子邮件、聊天服务和/或其他方式与彼此交互。其他服务是可能的并且被考虑。

社交网络服务722可以包括评论、博客和/或微博服务。这样的服务的示例包括但不限于YELP评论服务、KUDZU评价服务、OFFICETALK企业微博服务、TWITTER消息服务和/或其他服务。应理解,以上服务的列表不是详尽的,并且大量附加的和/或备选的社交联网服务722为了简洁在本文中未被提及。像这样,以上所描述的配置是说明性的,并且不应以任何方式被解释为是限制性的。

如图7还示出的,应用服务器704也可以托管其他服务、应用、门户和/或其他资源(“其他服务”)724。这些服务可以包括但不限于像是流视频服务(像是NETFLIX流视频服务)以及生产力服务(诸如来自GOOGLE INC.的GMAIL电子邮件服务)。因此可以理解,由分布式计算环境702的用户执行的活动可以包括各种邮箱、消息、社交联网、小组对话、生产力、娱乐、以及其他类型的活动。对这些服务以及其他的使用可以被检测并且被用于定制化利用本文中所公开的技术的计算设备的操作。

如以上所提及的,分布式计算环境702可以包括数据存储装置710。根据各种实现,数据存储装置710的功能性由一个或多个数据库提供,该一个或多个数据库在网络708上操作或者与网络708通信。数据存储装置710的功能性也可以由一个或多个服务器计算机提供,该一个或多个服务器计算机被配置为托管用于分布式计算环境702的数据。数据存储装置710可以包括、托管或者提供一个或多个真实或虚拟的数据存储库726A-726N(以下笼统地和/或一般地被称为“数据存储库726”)。数据存储库726被配置为托管由应用服务器704使用或者创建的数据和/或其他数据。

分布式计算环境702可以与网络接口712通信,或者通过网络接口712被访问。网络接口712可以包括用于支持两个或更多个计算设备之间的通信的各种类型的网络硬件和软件,该两个或更多个计算设备包括但不限于不限于设备706和应用服务器704。应理解,网络接口712也可以被利用来连接其他类型的网络和/或计算机系统。

应理解,本文中所描述的分布式计算环境702可以使用任何数目的虚拟计算资源和/或其他分布式计算功能性来实现本文中所描述的软件元件的任何方面,这些虚拟计算资源和/或其他分布式计算功能性可以被配置为执行本文中所公开的软件组件的任何方面。也应理解,设备706也可以包括真实或虚拟的机器,包括但不限于服务器计算机、web服务器、个人计算机、游戏控制台或其他类型的游戏设备、移动计算设备、智能手机、和/或其他设备。像这样,本文中所公开的各种实现使被配置为访问分布式计算环境702的任何设备能够利用本文中所描述的功能性。

现在转向图8,说明性的计算设备架构800将被描述用于能够执行本文中所描述的各种软件组件的计算设备,诸如图1A和图1B中所图示的访问控制策略生成系统120或计算设备164,或者图2和图3A中所图示的系统200和系统300的组件中的一些组件或全部组件。计算设备架构800适用于部分地由于尺寸因素、无线连接性和/或电池供能的操作而促进移动计算的计算设备。在一些配置中,计算设备包括但不限于移动电话、平板设备、板设备、便携式视频游戏设备等。

计算设备架构800也适用于图7中所示的设备706中的任何设备。此外,计算设备架构800的各方面适用于传统的台式计算机、便携式计算机(例如,膝上型电脑、笔记本、超便携式电脑、以及上网本)、服务器计算机以及其他计算机设备,诸如本文中所描述的那些。例如,以下本文中所公开的单触摸(single-touch)和多触摸(multi-touch)方面可以被应用到利用触摸屏或某种其他启用触摸的设备(诸如启用触摸的轨迹板或启用触摸的鼠标)的台式、膝上型、可转换的、智能手机、或者平板计算机设备。计算设备架构800也可以被利用来实现图1A和图1B中所图示的自动访问控制策略生成系统120或计算设备164,或者在图2和图3A中所图示的系统200和系统300的组件中的一些组件或全部组件,和/或用于实现或者消耗本文中所描述的功能性的其他类型的计算设备。

图8中所图示的计算设备架构800包括处理器802、存储器组件804、网络连接性组件806、传感器组件808、输入/输出组件810以及功率组件812。在所图示的配置中,处理器802与存储器组件804、网络连接性组件806、传感器组件808、输入/输出(“I/O”)组件810以及功率组件812通信。尽管没有图8中所示出的单独的组件之间的连接被示出,但是这些组件可以被电连接以便交互以及执行设备功能。在一些配置中,组件被布置为经由一个或多个总线(未示出)通信。

处理器802包括一个或多个CPU核,该一个或多个CPU核被配置为处理数据、执行一个或多个应用程序的计算机可执行指令以及与计算设备架构800的其他组件通信,以便执行本文中所描述的各种功能性。处理器802可以被利用来执行本文中所呈现的软件组件的各方面,并且尤其是至少部分地利用启用触摸的输入的那些。

在一些配置中,处理器802包括图形处理单元(“GPU”),该图像处理单元被配置为加速由CPU执行的操作,包括但不限于通过执行通用科学和工程计算应用而执行的操作,以及图形密集的计算应用(诸如高分辨率视频(例如,720P、1080P、4K以及更大)、视频游戏、3D建模应用等)。在一些配置中,处理器802被配置为与分立的GPU(未示出)通信。在任何情况下,CPU和GPU可以根据协同处理CPU/GPU计算模型而被配置,其中应用的顺序部分在CPU上执行并且计算密集的部分由GPU加速。

在一些配置中,处理器802是片上系统(“SoC”)或者连同本文中以下所描述的其他组件中的一个或多个组件一起被包括在片上系统中。例如,SoC可以包括处理器802、GPU、网络连接性组件806中的一个或多个网络连接性组件、以及传感器组件808中的一个或多个传感器组件。在一些配置中,处理器802部分地利用封装叠加(“PoP”)集成电路封装技术而被制造。此外,处理器802可以是单核处理器或多核处理器。

可以根据从英国剑桥的ARM HOLDINGS可获得许可的ARM架构来创建处理器802。备选地,可以根据x86架构(诸如从加利福利亚山景城的INTEL CORPORATION以及其他可获得的)来创建处理器802。在一些配置中,处理器802是从加利福利亚圣迭戈的QUALCOMM可获得的SNAPDRAGON SoC、从加利福利亚圣巴巴拉的NVIDIA可获得的TEGRA SoC、从韩国首尔的SAMSUNG可获得的HUMMINGBIRD SoC、从德克萨斯达拉斯的TEXAS INSTRUMENTS可获得的开放多媒体应用平台(“OMAP”)SoC、以上SoC中的任何SoC的定制化版本、或者专属SoC。

存储器组件804包括RAM 814、ROM 816、集成存储存储器(“集成存储装置”)818以及可移除存储存储器(“可移除存储装置”)820。在一些配置中,RAM 814或其部分、ROM 816或其部分、和/或RAM 814和ROM 816的某种组合被集成在处理器802中。在一些配置中,ROM816被配置为存储固件、操作系统或其部分(例如,操作系统内核)、和/或从集成存储装置818或可移除存储装置820加载操作系统内核的引导程序(bootloader)。

集成存储装置818可以包括固态存储器、硬盘、或者固态存储器和硬盘的组合。集成存储装置818可以被焊接或以其他方式被连接到逻辑板,本文中所描述的处理器802和其他组件也可以被连接在该逻辑板上。像这样,集成存储装置818被集成在计算设备中。集成存储装置818可以被配置为存储本文中所描述的操作系统或其部分、应用程序、数据、以及其他软件组件。

可移除存储装置820可以包括固态存储器、硬盘、或者固态存储器和硬盘的组合。在一些配置中,可移除存储装置820代替集成存储装置818而被提供。在其他配置中,可移除存储装置820被提供为附加的可选存储装置。在一些配置中,可移除存储装置820被逻辑地与集成存储装置818组合,以使得总可用存储作为集成存储装置818和可移除存储装置820的总的组合容量而可用并且被向用户示出。

可移除存储装置820被配置为被插入到可移除存储存储器槽(未示出)中,或者被插入可移除存储装置820通过其被插入并且固定以促进连接的其他机构中,可移除存储装置820可以通过该连接与计算设备的其他组件(诸如处理器802)通信。可移除存储装置820可以用各种存储器卡格式被体现,包括但不限于PC卡、COMPACTFLASH卡、记忆棒,安全数字(“SD”)、miniSD、microSD、通用集成电路卡(“UICC”)(例如,订户身份模块(“SIM”)或通用SIM(“USIM”))、专属格式等。

可以理解,存储器组件802中的一个或多个组件可以存储操作系统。根据各种配置,操作系统包括但不限于来自MICROSOFT CORPORATION的WINDOWS操作系统、来自加利福尼亚库比蒂诺的APPLE INC.的IOS操作系统、以及来自加利福尼亚山景城的GOOGLE INC.的ANDROID操作系统。其他操作系统也可以被利用。

网络连接性组件806包括无线广域网组件(“WWAN组件”)822、无线局域网组件(“WLAN组件”)824、以及无线个人区域网组件(“WPAN组件”)826。网络连接性组件806促进向网络828的通信以及来自网络828的通信,网络828可以是WWAN、WLAN或者WPAN。尽管图示了单个网络828,但是网络连接性组件806可以促进与多个网络的同时通信。例如,网络连接性组件806可以经由WWAN、WLAN或者WPAN中的一个或多个来促进与多个网络的同时通信。

网络828可以是WWAN,诸如移动电信网络,该移动电信网络利用一个或多个移动电信技术经由WWAN组件822来向利用计算设备架构800的计算设备提供语音和/或数据服务。移动电信技术可以包括但不限于全球移动通信系统(“GSM”)、码分多址(“CDMA”)ONE、CDMA2000、通用移动电信系统(“UMTS”)、长期演进(“LTE”)以及全球微波接入互操作性(“WiMAX”)。

此外,网络828可以利用各种信道接入方法(前面提及的标准可能使用或可能不使用),包括但不限于时分多址(“TDMA”)、频分多址(“FDMA”)、CDMA、宽带CDMA(“W-CDMA”)、正交频分复用(“OFDM”)、空分多址(“SDMA”)等。可以使用以下来提供数据通信:通用分组无线服务(“GPRS”)、全球增强数据速率演进(“EDGE”)、包括高速下行链路分组访问(“HSDPA”)的高速分组访问(“HSPA”)的协议族、增强型上行链路(“EUL”)或称为高速上行链路分组访问(“HSUPA”)、演进的HSPA(“HSPA+”)、LTE以及各种其他当前和将来的无线数据访问标准。网络128可以被配置为利用上述技术中任意组合来提供语音和/或数据通信。网络828可以被配置为或者被适配为根据下一代技术提供语音和/或数据通信。

在一些配置中,WWAN组件822被配置为提供对网络828的双-多-模式连接性。例如,WWAN组件822可以被配置为提供到网络828的连接性,其中网络828经由GSM和UMTS技术或者经由技术的一些其他组合来提供服务。备选地,多个WWAN组件822可以被利用来执行这样的功能性和/或提供附加的功能性以支持其他不兼容的技术(即,不能由单个WWAN组件支持)。WWAN组件822可以支持到多个网络(例如,UMTS网络和LTE网络)的类似的连接性。

网络828可以是根据一个或多个电气和电子工程师协会(“IEEE”)104.11标准(诸如IEEE 104.11a、104.11b、104.11g、104.11n和/或未来的104.11标准)(在本文中被统称为WI-FI)而操作的WLAN。草案104.11标准也被考虑。在一些配置中,WLAN利用一个或多个无线WI-FI接入点而被实现。在一些配置中,无线WI-FI接入点中的一个或多个无线WI-FI接入点是充当WI-FI热点的具有到WWAN的连接性另一个计算设备。WLAN组件824被配置为经由WI-FI接入点连接到网络828。这样的连接可以经由各种加密技术被保障,加密技术包括但不限于WI-FI受保护接入(“WPA”)、WPA2、有线等效隐私(“WEP”)等。

网络828可以是根据红外数据协会(“IrDA”)、蓝牙、无线通用串行总线(“USB”)、Z-Wave、ZIGBEE或者某种其他短距离无线技术而操作的WPAN。在一些配置中,WPAN组件826被配置为经由WPAN促进与其他设备(诸如外设、计算机或者其他计算设备)的通信。

传感器组件808包括磁力计830、环境光传感器832、接近传感器834、加速度计836、陀螺仪838以及全球定位系统传感器(“GPS传感器”)840。考虑其他传感器也可以被合并到计算设备架构800中,诸如但不限于温度传感器或者冲击检测传感器。

磁力计830被配置为测量磁场的强度和方向。在一些配置中,磁力计830向被存储在存储器组件802中的一个存储器组件内的罗盘应用程序提供测量,以便向用户提供参考系中的准确的方向,包括北、南、东以及西的基本方向。类似的测量可以被提供给包括罗盘组件的导航应用。也考虑由磁力计830获取的测量的其他使用。

环境光传感器832被配置为测量环境光。在一些配置中,环境光传感器832向被存储在一个存储器组件内804的应用程序提供测量,以便自动地调整(以下所描述的)显示器的亮度以补偿弱光和强光环境。也考虑由环境光传感器832获取的测量的其他使用。

接近传感器834被配置为在无直接接触的情况下检测接近计算设备的物体或事物的存在。在一些配置中,接近传感器834检测用户的身体(例如,用户的脸)的存在并且向被存储在存储器组件804中的一个存储器组件内的应用程序提供该信息,该应用程序利用接近信息来启用或停用计算设备的某种功能性。例如,响应于接收接近信息,电话应用程序可以自动地停用(以下所描述的)触摸屏,因而用户的脸不在通话期间无意地结束通话或者启用/停用电话应用程序内的其他功能性。也考虑由接近传感器834检测的接近的其他使用。

加速度计836被配置为测量适当的加速度。在一些配置中,来自加速度计836的输出由应用程序作为控制该应用程序的某种功能性的输入机制使用。在一些配置中,来自加速度计836的输出被提供给应用程序以供在在横向和纵向模式之间切换、计算坐标加速度或检测跌倒中使用。也考虑加速度计836的其他使用。

陀螺仪838被配置为测量和维持定向。在一些配置中,来自陀螺仪838由应用程序作为控制该应用程序的某种功能性的输入机制使用。例如,陀螺仪838可以被用于视频游戏应用或某个其他应用的3D环境内的移动的准确识别。在一些配置中,应用程序利用来自陀螺仪838和加速度计836的输出来增强用户输入操作。也考虑陀螺仪838的其他使用。

GPS传感器840被配置为接收来自GPS卫星的信号以供在计算位置中使用。由GPS传感器840计算的位置可以由要求位置信息或者从位置信息中获益的任何应用程序使用。例如,由GPS传感器840计算的位置可以被与导航应用程序一起使用,以提供从位置到目的地的方向或者从目的地到位置的方向。此外,GPS传感器840可以被用于向外部基于位置的服务(诸如E911服务)提供位置信息。GPS传感器840可以利用网络连接性组件806中的一个或多个网络连接性组件来获取经由WI-FI、WIMAX、和/或蜂窝三角测量技术而被生成的位置信息以协助GPS传感器840获取位置修正。GPS传感器840也可以被使用在辅助GPS(“A-GPS”)系统中。

I/O组件810包括显示器842、触摸屏844、数据I/O接口组件(“数据I/O”)846、音频I/O接口组件(“音频I/O”)848、视频I/O接口组件(“视频I/O”)850以及相机852。在一些配置中,显示器842和触摸屏844被组合。在一些配置中数据I/O组件846、音频I/O组件848以及视频I/O组件850中的两个或更多个被组合。I/O组件810可以包括被配置为支持以下所描述的各种接口的分立的处理器,或者可以包括被内置到处理器802的处理功能性。

显示器842是输出设备,其被配置为以可视的形式呈现信息。尤其,显示器842可以呈现图形用户界面(“GUI”)元素、文本、图像、视频、通知、虚拟按钮、虚拟键盘、消息传递数据、互联网内容、设备状态、时间、日期、日历数据、偏好、地图信息、位置信息、以及能够以可视的形式被呈现的任何其他信息。在一些配置中,显示器842是利用任何有源或无源矩阵技术以及任何背光技术(若被使用)的液晶显示器(“LCD”)。在一些配置中,显示器842是有机发光二极管(“OLED”)显示器。考虑其他显示器类型。

触摸屏844是被配置为检测触摸的存在和位置的输入设备。触摸屏844可以是电阻式触摸屏、电容式触摸屏、表面声波触摸屏、红外触摸屏、光学成像触摸屏、色散信号触摸屏、声脉冲识别触摸屏,或者可以利用任何其他触摸屏技术。在一些配置中,触摸屏844作为透明层被合并在显示器842顶层上,以使用户能够使用一个或多个触摸来与被呈现在显示器842上的对象或其他信息交互。在其他配置中,触摸屏844是被合并在不包括显示器842的计算设备的表面上的触摸板。例如,计算设备可以具有被合并在显示器842顶层上的触摸屏以及显示器842对面的表面上的触摸板。

在一些配置中,触摸屏844是单触摸触摸屏。在其他配置中,触摸屏844是多触摸触摸屏。在一些配置中,触摸屏844被配置为检测离散的触摸、单个触摸手势、和/或多触摸手势。为方便起见,这些在本文中被统称为“手势”。现在将描述一些手势。应理解,这些手势是说明性的并且不旨在限制所附权利要求书的范围。此外,所描述的手势、附加的手势、和/或备选的手势可以被实现在软件中以供与触摸屏844一起使用。像这样,开发者可以创建特定于具体应用程序的手势。

在一些配置中,触摸屏844支持敲击(tap)手势,在其中用户在显示器842上所呈现的项上敲击触摸屏844一次。敲击手势可以被用于各种原因,包括但不限于打开或者启动用户敲击的无论什么内容(诸如图形的图标)。在一些配置中,触摸屏844支持双击(doubletap)手势,在其中用户在显示器842上所呈现的项上敲击触摸屏844两次。双击手势可以被用于各种原因,包括但不限于分阶段放大或缩小。在一些配置中,触摸屏844支持敲击并保持(tap and hold)手势,在其中用户敲击触摸屏844并且维持接触至少预定义的时间。敲击并保持手势可以被用于各种原因,包括但不限于打开上下文特定的菜单。

在一些配置中,触摸屏844支持平移(pan)手势,在其中用户将手指放在触摸屏844上,并且在将手指在触摸屏844上移动的同时,维持与触摸屏844的接触。平移手势可以被用于各种原因,包括但不限于以受控制的速率在屏幕、图像或菜单中移动。也考虑多个手指平移手势。在一些配置中,触摸屏844支持轻拂(flick)手势,在其中用户在用户想要屏幕移动的方向上滑动手指。轻拂手势可以被用于各种原因,包括但不限于在菜单或页面中水平或垂直地滚动。在一些配置中,触摸屏844支持捏合和拉伸(pinch and stretch)手势,在其中用户在触摸屏844上用两个手指(例如,拇指和食指)做出捏合动作或者将两个手指移动分开。捏合和拉伸手势可以被用于各种原因,包括但不限于逐渐地放大或缩小网页、地图或图片。

尽管已经参考使用一个或多个手指用于执行手势呈现了以上所描述的手势,但是其他附属肢体(诸如脚趾)或者物体(诸如触控笔)可以被用于与触摸屏844交互。像这样,以上的手势应被理解为是说明性的,并且不应以任何方式被解释为是限制性的。

数据I/O接口组件846被配置为促进向计算设备的数据的输入以及从计算设备的数据的输出。在一些配置中,数据I/O接口组件846包括连接器,该连接器被配置为提供计算设备和计算机系统之间的有线连接性,例如,用于同步操作目的。连接器可以是专属连接器或者标准化的连接器(诸如USB、micro-USB、mini-USB、USB-C等)。在一些配置中,连接器是对接(dock)连接器,用于将计算设备与另一个设备(诸如对接站、音频设备(例如,数字音乐播放器)、或者视频设备)对接。

音频I/O接口组件848被配置为向计算设备提供音频输入和/或输出能力。在一些配置中,音频I/O接口组件848包括被配置为收集音频信号的麦克风。在一些配置中,音频I/O接口组件848包括耳机插孔,该耳机插孔被配置为针对耳机或其他外部扬声器提供连接性。在一些配置中,音频接口组件848包括用于输出音频信号的扬声器。在一些配置中,音频I/O接口组件848包括光学音频电缆输出。

视频I/O接口组件850被配置为向计算设备提供视频输入和/或输出能力。在一些配置中,视频I/O接口组件850包括视频连接器,该视频连接器被配置为从另一个设备(例如,诸如DVD或蓝光播放器的视频媒体播放器)接收视频作为输入或者向另一个设备(例如,监控器、电视、或者某种其他外部显示器)发送视频作为输出。在一些配置中,视频I/O接口组件850包括高清晰度多媒体接口(“HDMI”)、mini-HDMI、micro-HDMI、DisplayPort、或者用于输入/输出视频内容的专属连接器。在一些配置中,视频I/O接口组件850或其部分与音频I/O接口组件848或其部分被组合。

相机852可以被配置为捕获静止图像/或视频。相机852可以利用电荷耦合器件(“CCD”)或互补金属氧化物半导体(“CMOS”)图像传感器来捕获图像。在一些配置中,相机852包括闪光灯以协助在低光环境中拍照。针对相机852的设置可以被实现为硬件或软件按钮。

尽管未被图示,但是一个或多个硬件按钮也可以被包括在计算设备架构800中。硬件按钮可以被用于控制计算设备的某个操作性的方面。硬件按钮可以是专用的按钮或者多用途按钮。硬件按钮可以是机械的或者基于传感器的。

所图示的功率组件812包括一个或多个电池854,该一个或多个电池854可以被连接到电池量表856。电池854可以是可充电的或者一次性的。可充电的电池类型包括但不限于锂聚合物、锂离子、镍镉和镍金属氢化物。电池854中的每个电池可以由一个或多个芯制成。

电池量表856可以被配置为测量电池参数,诸如电流、电压以及温度。在一些配置中,电池量表856被配置为测量电池的放电速率、温度、寿命和其他因素的影响,以在一定的误差百分比内预测剩余寿命。在一些配置中,电池量表856向应用程序提供测量,该应用程序被配置为利用测量向用户呈现有用的功率管理数据。功率管理数据可以包括以下一项或多项:已使用的电池的百分比、剩余电池的百分比、电池状态、剩余时间、剩余容量(例如,以瓦特小时)电流消耗以及电压。

功率组件812也可以包括功率连接器(未示出),该功率连接器可以与前面所提及的I/O组件810中的一个或多个I/O组件810被组合。功率组件812可以经由功率I/O组件810与外部功率系统或者充电仪器对接。也可以利用其他配置。

本文中所呈现的公开也包括在以下条款中阐述的主题。

条款1.一种用于生成访问控制规则的计算机实现的方法,该访问控制规则用于控制对计算机资源的访问,该方法包括:收集针对对计算机资源的用户访问的历史访问数据;将历史访问数据分成训练数据集和验证数据集;基于训练数据集中对计算机资源的用户访问的一个或多个属性来生成针对该计算机资源的访问控制规则;针对验证数据集验证访问控制规则,其中如果从向验证数据集应用访问控制规则而被获取的拒绝率水平低于阈值参数值,则访问控制规则被确定为是有效的;并且如果访问控制规则被确定为是有效的,则向管理界面提供访问控制规则。

条款2.条款1的计算机实现的方法,其中针对验证数据集验证访问控制规则的步骤,其中如果从向验证数据集应用访问控制规则而被获取的拒绝率水平低于阈值参数值,则访问控制规则被确定为是有效的,包括:向验证数据集中的、针对计算机资源的用户访问请求应用访问控制规则,以获取拒绝率水平;将拒绝率水平和阈值参数值进行比较;并且,如果拒绝率水平低于阈值参数值,则确定访问控制规则是有效的。

条款3.条款1的计算机实现的方法,其中针对验证数据集验证访问控制规则的步骤,其中如果从向验证数据集应用访问控制规则而被获取的拒绝率水平低于阈值参数值,则访问控制规则被确定为是有效的,包括:向验证数据集的多个子集中的、针对计算机资源的用户访问请求应用访问控制规则,以获取针对多个子集的每个子集的拒绝率水平;针对多个阈值参数值中的对应的一个阈值参数值,将针对多个子集的每个子集的拒绝率水平评分为针对多个子集的每个子集的得分;收集针对多个子集的每个子集的得分,以获取累积的得分;并且如果累积的得分低于阈值得分值,则确定访问控制规则是有效的。

条款4.条款1的计算机实现的方法,其中阈值参数值由以下一项或多项确定:预设值、算法所确定的值、以及从管理员接收的值中。

条款5.条款1的计算机实现的方法,该方法还包括:从管理界面接收选择消息,该选择消息指示对访问控制规则的选择;并且响应于该选择消息,将访问控制规则存储在访问规则存储库中。

条款6.条款5的计算机实现的方法,该方法还包括:接收针对计算机资源的用户访问请求;从访问规则存储库获取针对计算机资源的访问控制规则;向所接收的用户访问请求应用访问控制规则,以确定所接收的用户访问请求的一个或多个属性是否落入访问控制规则的一个或多个被准许的参数内;如果所接收的用户访问请求的一个或多个属性落入访问控制规则的一个或多个被准许的参数内,则准许用户访问请求;以及如果所接收的用户访问请求的一个或多个属性未落入访问控制规则的一个或多个被准许的参数内,则拒绝用户访问请求。

条款7.条款1的计算机实现的方法,其中基于训练数据集中对计算机资源的用户访问的一个或多个属性来生成针对该计算机资源的访问控制规则还包括:基于利用以下一项或多项对训练数据集中对该计算机资源的用户访问的一个或多个属性的分析,来生成针对计算机资源的访问控制规则:机器学习、统计分析、贝叶斯分析、直方图的分析以及用户特性的聚类。

条款8.一种自动访问控制策略生成系统,该自动访问控制策略生成系统包括:一个或多个处理器;以及至少一个计算机存储介质,具有被存储在其上的计算机可执行指令,该计算机可执行指令当由一个或多个处理器执行时,使该一个或多个处理器:收集针对对计算机资源的用户访问的历史访问数据;将历史访问数据分成训练数据集和验证数据集;基于训练数据集中对计算机资源的用户访问的一个或多个属性来生成针对该计算机资源的访问控制规则;针对验证数据集验证访问控制规则,其中如果从向验证数据集应用访问控制规则而被获取的拒绝率水平低于阈值参数值,则访问控制规则被确定为是有效的;并且如果访问控制规则被确定为是有效的,则向管理界面提供访问控制规则。

条款9.条款8的自动访问控制策略生成系统,其中针对验证数据集验证访问控制规则的操作,其中如果从向验证数据集应用访问控制规则而被获取的拒绝率水平低于阈值参数值,则访问控制规则被确定为是有效的,包括:向验证数据集中针对计算机资源的用户访问请求应用访问控制规则,以获取拒绝率水平;将拒绝率水平与阈值参数值进行比较;以及,如果拒绝率水平低于阈值参数值,则确定访问控制规则是有效的。

条款10.条款8的自动访问控制策略生成系统,其中针对验证数据集验证访问控制规则的操作,其中如果从向验证数据集应用访问控制规则而被获取的拒绝率水平低于阈值参数值,则访问控制规则被确定为是有效的,包括:向验证数据集的多个子集中的针对计算机资源的用户访问请求应用访问控制规则,以获取针对多个子集的每个子集的拒绝率水平;针对多个阈值参数值中的对应的一个阈值参数值,将针对多个子集的每个子集的拒绝率水平评分为针对多个子集的每个子集的得分;收集多个子集的每个子集的得分以确定累积的得分;并且如果累积的得分低于阈值得分值,则确定访问控制规则是有效的。

条款11.条款8的自动访问控制策略生成系统,其中阈值参数值由以下一项或多项确定:预设值、算法确定的值、以及从管理员接收的值。

条款12.条款8的自动访问控制策略生成系统,其中该系统还被配置为:从管理界面接收选择消息,该选择消息指示对访问控制规则的选择;并且响应于该选择消息,将访问控制规则存储在访问规则存储库中。

条款13.条款12的自动访问控制策略生成系统,其中该系统还被配置为:接收针对计算机资源的用户访问请求;从访问规则存储库获取针对计算机资源的访问控制规则;向所接收的用户访问请求应用访问控制规则,以确定所接收的用户访问请求的一个或多个属性是否落入访问控制规则的一个或多个被准许的参数内;如果所接收的用户访问请求的一个或多个属性落入访问控制规则的一个或多个被准许的参数内,则准许用户访问请求;并且如果所接收的用户访问请求的一个或多个属性未落入访问控制规则的一个或多个被准许的参数内,则拒绝用户访问请求。

条款14.条款8的自动访问控制策略生成系统,其中基于训练数据集中对计算机资源的用户访问的一个或多个属性来生成针对该计算机资源的访问控制规则的操作还包括:基于利用以下一项或多项对训练数据集中对该计算机资源的用户访问的一个或多个属性的分析来生成针对计算机资源的访问控制规则:机器学习、统计分析、贝叶斯分析、直方图的分析以及用户特性的聚类。

条款15.一种计算机存储介质,具有被存储在其上的计算机可执行指令,该计算机可执行指令在由一个或多个处理器执行时,使该处理器执行用于生成访问控制规则的方法,该访问控制规则用于控制对计算机资源的访问,该方法包括:收集针对对计算机资源的用户访问的历史访问数据;将历史访问数据分成训练数据集和验证数据集;基于训练数据集中对计算机资源的用户访问的一个或多个属性来生成针对该计算机资源的访问控制规则;针对验证数据集验证访问控制规则,其中如果从向验证数据集应用访问控制规则而被获取的拒绝率水平低于阈值参数值,则访问控制规则被确定为是有效的;并且如果访问控制规则被确定为是有效的,则向管理界面提供访问控制规则。

条款16.条款15的计算机存储介质,其中针对验证数据集验证访问控制规则的步骤,其中如果从向验证数据集应用访问控制规则而被获取的拒绝率水平低于阈值参数值,则访问控制规则被确定为是有效的,包括:向验证数据集中针对计算机资源的用户访问请求应用访问控制规则,以获取拒绝率水平;将拒绝率水平和阈值参数值进行比较;并且,如果拒绝率水平低于阈值参数值,则确定访问控制规则是有效的。

条款17.条款15的计算机存储介质,其中针对验证数据集验证访问控制规则的步骤,其中如果从向验证数据集应用访问控制规则而被获取的拒绝率水平低于阈值参数值,则访问控制规则被确定为是有效的,包括:向验证数据集的多个子集中的、针对计算机资源的用户访问请求应用访问控制规则,以获取针对多个子集的每个的拒绝率水平;针对多个阈值参数值中的对应的一个阈值参数值,将针对多个子集的每个子集的拒绝率水平评分为针对多个子集中的每个子集的得分,其中多个子集的每个子集的得分具有对应的权重;收集多个子集的每个子集的得分以确定累积的得分;并且如果累积的得分低于阈值得分值,则确定访问控制规则是有效的。

条款18.条款17的计算机存储介质,其中:多个子集的第一子集与由单独用户进行的用户访问对应;以及多个子集的第二子集与由包括该个体用户的域中的用户进行的用户访问对应。

条款19.条款15的计算机存储介质,其中:训练数据集包括在第一时间段期间所收集的用户访问请求;验证数据集包括在第二时间段期间所收集的用户访问请求;并且第一时间段早于第二时间段。

条款20.条款15的计算机存储介质,其中该方法还包括:从管理界面接收选择消息,该选择消息指示对访问控制规则的选择以及包括一个或多个对访问控制规则的修改;并且响应于该选择消息,将访问控制规则与一个或多个修改一起存储在访问规则存储库中。

基于前文,应理解,已经公开了一种自动访问控制策略生成方法,该方法通过基于历史访问数据自动生成访问控制规则来提高安全性,该历史访问数据将对计算机资源的访问限制到历史上已经访问了该计算机资源的用户。尽管已经用特定于计算机结构化特征、方法和变换动作、特定的计算机器、计算机可读介质的语言描述了本文中所呈现的主题,但是应该理解,所附权利要求书中阐述的主题不必被限制为本文中所描述的特定的特征、动作或介质。而是,将特定的特征、动作和介质公开为实现所要求保护的主题的示例形式。

以上所描述的主题仅以说明的方式被提供,并且不应被解释为是限制性的。可以在不遵循所图示和所描述的示例配置和应用、并且不背离在所附权利要求书中阐述的本公开的范围的情况下,对本文中所描述的主题做出各种修改和改变。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号