用于动态控制对网络的访问的方法和系统 相关专利申请
根据35U.S.C.§119,本专利申请要求2007年2月1日提交的标题为“Dynamic Security Control”的第60/899,276号美国临时专利申请的优先权,该申请的全部公开由此通过引入被完整地并入本文。
【发明领域】
本发明通常涉及用于企业广域网的安全方法和结构。更具体地说,本发明涉及确定服务请求是否将被网络接受的动态安全的系统和方法。
背景
随着互联网的增长,公司已经努力采用使它们的计算网络安全而防止未授权的用户的方法。公司已经将开发工作集中在它们的私有网络的安全性上。为了使这些网络更加安全,很多公司采用防火墙、登录屏蔽、安全令牌和其它对于本领域普通技术人员众所周知的方法,以试图只允许授权的个人访问企业网络。虽然公共用户可能有权访问公司网络的一些部分,但是公司网络的大量部分被限制于员工,并且在大多数情况下,员工只能访问网络的特定部分。
随着时间的推移,用于使公司的网络更易经由互联网访问的技术已经被开发出来。一个重要的开发领域是在通过使用虚拟专用网络的非现场访问、无线访问和WiFi的领域中,仅举几例。这些技术使员工更容易实质上从任何地方访问公司网络的资源。这样的访问已经考虑到增长的员工生产力。此外,通常,在不对公众提供访问权的情况下,在公司之间共享信息的能力已经提高了公司进行外包服务的能力,同时仍然使信息保持在安全网络上。
然而,用于使访问公司网络变得更容易的技术具有几个缺点。增加的易访问性的出现也已经使那些打算通过欺骗、捎带(piggy-backing)和其它众所周知的对网络进行未授权访问的方法对网络进行破坏的人更容易访问这些网络。此外,传统技术未提供方法来持续监控访问网络的设备或一方以确定在访问网络的该设备或该方中是否出现改变,这使得对是否继续允许设备访问网络进行再评估变得必要。因此,一旦人从一设备登录并且被允许访问系统,那么访问权持续有效,直到该设备或该方选择退出网络为止。因此,如果被给予访问权的一方在未退出的情况下离开了该设备,那么任何其它人将有权继续访问该网络,而无论这个人是否应该被允许访问。此外,传统技术不监控访问网络的设备或人的位置以基于位置判断访问是否被允许。
因此,在本领域中,存在对一种产品或方法的需要,即,该产品或方法通过基于对个人、设备特征和发出请求的位置确定服务请求是否将被接受或拒绝,来允许企业广域网的动态安全性。本发明解决了本领域的这些需要和其它需要。
【发明内容】
动态访问评估系统可接收来自于试图访问网络的设备的服务请求。在一个示例性的实施方式中,该请求用于访问网络上提供的应用或服务。该系统可接收关于进行请求的人(“请求者”)、进行请求的设备和/或请求者和设备的位置的信息。进一步地,系统可对所被请求的应用或服务的一组或多组规则进行分析以确定对请求者、设备和/或位置的验证是否是必要的。该系统可访问授权数据库,以接收有权访问被请求的应用或服务的用户的列表。此外,授权数据库可提供用户登录信息。该系统可将请求中接收到的关于请求者地信息与授权数据库中关于请求者的信息进行比较,以确定该信息是一样的还是相似的。系统也可接收关于进行请求的设备的信息,并且将它与关于该设备的历史信息进行比较,以确定该设备是否是可靠的,或者该设备是否已经被改变为允许它访问网络,或落在被请求的应用或服务的规则之外。此外,作为请求的部分或除了请求以外,该系统可接收设备和请求者的位置信息。设备和请求者的位置信息可被比较,以确定它们是否是在一样的或相似的位置。此外,在允许访问网络之后,系统可继续监控关于请求者、设备或位置的信息,并且可基于被监控的信息中的违反了设备正在访问的服务或应用的规则的改变而终止该设备对网络的访问。
对于本发明的一个方面,动态访问评估系统可接收来自一设备处的请求者对网络进行访问的请求。动态访问评估系统可接收请求者的验证信息。在一个示例性的实施方式中,验证信息可被包含在访问请求中,或者包含在对动态访问评估系统的分离传输中。动态访问评估系统可从授权数据库中取回关于请求者的授权信息。授权信息可包括,但不局限于,关于被允许访问网络或网络上的特定服务或应用的人的信息。动态访问评估系统将验证信息与授权信息进行比较,以确定该请求者是否是可靠的。在一个示例性的实施方式中,如果认证信息和授权信息是相同的或者实质上是相似的,那么请求者是可靠的。然后,可基于验证信息与授权信息的比较通过动态访问评估系统产生验证评分。策略引擎可使用该验证评分来确定是否允许该设备访问网络。
对于本发明的另一方面,动态访问评估系统可接收一设备对网络的访问的请求。动态访问评估系统也可接收关于进行请求的设备的信息。在一个示例性的实施方式中,关于设备的信息可被包含在访问网络的请求中,或者为对动态访问评估系统的分离传输的一部分。动态访问评估系统可将设备信息与历史设备信息进行比较。在一个示例性的实施方式中,历史设备信息包括,但不局限于,计算机资产与这些资产中的每一个相关的信息,其包括:设备类型、设备序列号、每个设备的存储器分配和每个设备的操作系统等级,动态访问评估系统可基于设备信息与历史设备信息的比较确定设备是否是可靠的。然后,它可基于比较产生验证评分。然后,可基于验证评分确定是否允许该设备访问网络。
对于本发明的又一个方面,动态访问评估系统可接收来自一设备处的请求者的对网络进行访问的请求。动态访问评估系统可进一步接收设备和请求者的位置。在一个示例性的实施方式中,设备和/或请求者的位置可被包含在初始请求中,或者为对动态访问评估系统的分离传输的一部分。在另一个示例性的实施方式中,请求者的位置可基于在场信源(presence feed)、生物统计数据或独立于该设备进行的访问网络的请求的其它设备来确定。动态访问评估系统可将设备的位置与请求者的位置进行比较,以确定它们是否是一样的或者实质上是相似的。在一个示例性的实施方式中,设备的位置可比请求者的位置一般,或者反之亦然。如果更具体的位置处于更不具体位置的区域内,那么这些位置可被认为实质上是相似的。在可选的实施方式中,如果设备的位置位于请求者的位置的预定距离内,包括但不局限于,50英尺、100英尺、500英尺、1000英尺、0.5英里或1英里,那么该位置可被认为是实质上相似的。可基于对设备和请求者的位置是一样的或实质上相似的判断来允许该设备访问网络。
对于本发明的又一个方面,评估系统可包括用于接收关于使用设备的请求者的信息并确定请求者的可靠性的第一逻辑组件。系统还可包括用于接收关于进行访问网络的请求的设备的信息并确定该设备是否是可靠的第二逻辑组件。此外,系统可包括用于接收关于设备的位置和请求者的位置的信息并确定设备的位置和请求者的位置是否是相同或实质上相似的第三逻辑组件,如上所述。
附图简述
为了更完整地了解本发明和其中的优点,现在结合附图参考下面的描述,其中:
图1是示出了用于实现本发明的各个实施方式的示例性的操作环境;
图2是示出了根据本发明的示例性的实施方式的用于验证做出服务请求的人的身份的过程的流程图;
图3是示出了根据本发明的示例性的实施方式的用于验证进行服务请求的设备的身份的过程的流程图;以及
图4是示出了根据本发明的示例性的实施方式的用于验证进行服务请求的设备和人的位置的过程的流程图。
发明描述
本发明支持用于管理来自于代理的服务请求的动态安全性以确定服务请求是否将被接受到网络中的计算机实现的方法和系统。通过参考附图可更容易地理解本发明的示例性实施方式。尽管本发明的示例性的实施方式通常将在软件模块和硬件模块以及在网络上运行的操作系统的上下文中被描述,但是本领域技术人员将认识到,本发明也可结合其它类型计算机的其它程序模块来实现。此外,本领域技术人员将认识到,本发明可在独立的或者在分布式计算环境中实现。另外,本领域技术人员将认识到,本发明可在计算机硬件、计算机软件或计算机硬件与软件的组合中实现。
在分布式计算环境中,程序模块可物理地位于不同的本地存储设备或远程存储设备中。程序模块的执行可以按独立的方式在本地发生或者以客户/服务器的方式远程地发生。这种分布式计算环境的实例包括局域网、企业广域计算机网络和全球互联网。
下面的详细描述主要是根据通过传统计算组件进行的操作的过程和符号表示而表现的,这些组件包括处理单元、存储设备、显示设备和输入设备。这些过程和操作可利用分布式计算环境中的传统计算机组件。
由计算机执行的过程和操作包括通过处理单元或远程计算机操作信号并且使这些信号保持在位于一个或多个本地或远程存储设备中的数据结构中。这样的数据结构对储存在存储设备中的数据集合强加了物理机制并且表示具体的电子或磁性元件。符号表示是计算机编程和计算机结构领域中的技术人员使用来最有效地将教学和发现传递给本领域其它技术人员的工具。
本发明的示例性的实施方式包括体现本文描述的和图中示出的功能的计算机程序和/或计算机硬件。应该明显,可能存在以计算机编程实现本发明的很多不同的方式,其包括但不局限于,专用集成电路(“ASIC”)和数据阵列;然而,本发明不应该被解释为被限制于任何一组计算机编程指令。此外,熟练的编程人员将能够写这样的计算机程序以基于附图和应用文档中的相关联的描述不费力地实现本发明的所公开的实施方式。因此,公开或一组特定的程序代码指令不被认为是对充分地理解如何产生和利用本发明所必要的。本计算机程序的创造性功能将在下面的描述中被更详细地解释并且将结合剩余的图被公开。
现在参考附图,其中,在几个图中相同的号码表示相同的元件,将描述用于实现本发明的方面和示例性的操作环境。图1是示出了根据本发明的示例性的实施方式的用于实现动态安全控制过程的示例性的系统级结构100的方框图。现在参照图1,示例性的系统100包括是谁、是什么、哪里(“W3”)设备105、授权数据库115、配置管理数据库120、网络信息125、在场信源130、应用信息135、网络功能和基础结构145以及代理110。示例性的W3设备105包括是谁逻辑(who logic)150、是什么逻辑(what logic)155、在哪里逻辑(where logic)160、策略引擎165以及网络功能和基础结构170。在一个示例性的实施方式中,W3设备105位于公司的内部数据中心与外部数据中心之间的网络的边缘上。在另一个示例性的实施方式中,一个或多个W3设备105可位于公司内的一个或多个企业数据中心的功能和基础结构145之间。
是谁逻辑150经由分布式计算机网络被通信地连接于授权数据库115和策略引擎165。在一个示例性的实施方式中,授权数据库115储存关于被允许访问网络上的特定服务的人的信息。授权数据库115的实例包括AAA服务器和RADIUS数据库。示例性的是谁逻辑150确定人是否被允许访问受保护的网络中的应用或服务。
图2表示用于确定人是否被允许访问网络的示例性过程,该示例性的过程是由图1的W3设备105的是谁逻辑150完成的。图2的示例性过程200是在开始步骤处开始的,并且前进至步骤205,其中,W3设备105接收访问应用或服务的请求(“服务请求”)。在一个示例性的实施方式中,请求是一XML信源(或者任何其它类型的已知传输信源)的一部分,其由策略引擎165经由互联网175接收到并被传递给是谁逻辑150。在可选的实施方式中,该请求是由是谁逻辑150经由互联网175从代理110处接收到的XML信源的一部分。在步骤210中,在代理110处对请求者的一或两因素验证是作为服务请求的一部分由是谁逻辑150接收的。在一个示例性的实施方式中,两因素验证包括安全标识如安全令牌和个人识别码(“PIN”);然而,其它认证方法如生物统计可被额外使用或者替代安全令牌或PIN来使用。
在步骤215中,是谁逻辑150将安全令牌或安全令牌和PIN与授权数据库115中的信息进行相互对照。在步骤220中,是谁逻辑150确定请求方是否有权访问所被请求的服务。在一个示例性的实施方式中,是谁逻辑150通过将安全令牌中的信息与授权数据库115中的信息进行比较,并基于是谁逻辑150中的一组规则确定信息是否是相同的或实质上相似的来做出判断。在一个示例性的实施方式中,所述一组规则包括查找列出了被允许使用服务的已知用户的用户数据库(未示出)。在步骤225中,由是谁逻辑150获得的信息被传输至策略引擎165,在那里,这些信息可被进一步分析。
在一个示例性的实施方式中,策略引擎165评估从是谁逻辑150接收到的信息和服务请求中的信息,并计算来自于是谁逻辑150的多少信息是可信的或来自于是谁逻辑150的多少信息需要被信任,作为策略引擎165对是否允许服务请求进行连接进行判断的一部分。例如,除了这个人处于建筑物中的刷卡证明和来自于手机的全球定位系统数据以及对位于银行金库中的安全电话线的声纹确认以外,策略引擎165的规则可能需要是谁逻辑150通过使用虹膜扫描仪或指纹进行特定请求生物统计确认。此外,该规则可要求正在使用的设备必须没有病毒和恶意软件并且必须一直使用加密的硬盘驱动器。
当请求者被连接时,策略引擎165监控连接和信源并根据规则响应任何检测到的改变。使用上面的实施例,如果策略引擎165接收到请求者已经刷卡离开银行金库的信息或者请求者的身份已经改变的信息,这由是谁逻辑150所确定,则策略引擎165将终止请求者与系统之间的连接。该过程从步骤225继续至结束步骤。
是什么逻辑155经由分布式计算机网络被通信地连接于配置管理数据库120和策略引擎165。示例性的配置管理数据库120是由机构所拥有或管理的所有计算机资产和与那些资产中的每一个相关的信息的储存库。设备类型、设备序列号、给每个特定设备的存储分配和每个设备的操作系统级别是可被包含在配置管理数据库120中的信息的实例。示例性的是什么逻辑155确定服务请求所来自于的设备是否与储存在配置管理数据库120中的设备特征相同或实质上相似。
图3表示用于确定提出服务请求的设备是否是可靠的并且因此被允许访问网络的示例性的过程,这由图1的W3设备105中的是什么逻辑155完成。图3的示例性过程300在开始步骤处开始并前进至步骤305,其中,W3设备105接收访问应用或服务的请求。在一个示例性的实施方式中,请求是一XML信源的一部分,其由策略引擎165经由互联网175从代理110接收到并被传递至是什么逻辑155。在可选的实施方式中,请求是由是什么逻辑155经由互联网175从代理110处接收到的一XML信源(或任何其它类型的已知传输信源)的一部分。在步骤310中,是什么逻辑155从代理110接收关于正在进行请求的设备的信息。从代理110接收到的信息可包括设备的指纹数据或对设备上的数据的算法散列。在一个示例性的实施方式中,设备的指纹数据包括下述几项中的一个或多个:序列号、设备配置(包括安装的存储器、中心处理单元速度等),设备的状态(包括恶意软件或病毒是否被安装在设备上、硬盘驱动器是否被加密,以及BIOS密码或PIN是否被用于设备上)。
在步骤315中,是什么逻辑155对从代理110接收到的关于设备的信息与配置管理数据库120的信息进行交叉对照,以确定设备规格是否是一样的或实质上是相似的。在步骤320中,是什么逻辑155做出对所谓正在进行请求的设备的可靠性的判断。在步骤325中,由是什么逻辑155获得的信息可然后被传递给策略引擎165,在引擎165中,它可被进一步分析。例如,用户从一个人计算机进行服务请求。从配置管理数据库120获得的信息表明进行请求的计算机具有500M的随机存取存储器,而来自代理110的信息表明计算机具有1G的随机存取存储器。是什么逻辑155可基于什么逻辑155中提出的规则确定访问是否应该被拒绝或者上述差别是否不会上升至有必要拒绝服务请求的严重程度,或者它可将该信息传递给策略引擎165,以使策略引擎165可做出访问判断。过程继续从步骤325前进至结束步骤。
在哪里逻辑160经由分布式计算机网络被通信地连接于网络信息125、在场信源130和策略引擎165。在一个示例性的实施方式中,在哪里逻辑160试图确定正在进行服务请求的设备的位置,并使用该位置信息确定请求者是否有权访问被请求的服务。网络信息125提供这样的信息,即,其允许在哪里逻辑160确认代理110是在无线电网络、专用网络中或互联网175上的哪个地方。
在一个示例性的实施方式中,可经由无线电网络通过使用去往设备或来自于设备的无线电信号以查明设备的位置来确定代理110的位置,类似于在E911系统用于位置检测的方式。Wifi接入点提供了使用无线电信号以确定设备的位置的另一个实施例。在另一个示例性的实施方式中,在互联网175上来自于代理110的请求的位置可通过在哪里逻辑160接收请求的句柄或IP地址来确定。在哪里逻辑160可将IP地址与将IP地址与详细的全球位置信息相链接的传统数据库进行比较。对于正在专用网络中进行的请求,在哪里逻辑160可例如接收IP地址并将该地址与具有IP地址和它们在专用网络中的地址的内部数据库进行比较。
在场信源130试图使用数据以确定人物理上位于什么位置、人在特定的时间正在干什么,和/或他们是否可用的。在场信源130可包括信息流和与进行请求的人的位置有关的数据的数据库。在场信源130的一个实例是建筑刷卡用卡,它可被用于跟踪卡的位置,并且在持卡人访问安全建筑的不同区域时,推测地跟踪持卡人。在场信源130的另一个实例是设备登录信息。当人被要求登录以访问设备并且设备的位置是已知的时,可假定,正在登录到设备上的人正在设备处,直到他们退出设备为止。在场信源130的额外实例包括调度日历和即时消息设备。本领域普通技术人员将认识到,负面在场信息,例如:知道对人不在他的办公室或者目前不在国内,可被用作在场信源130以确定进行请求的人的位置。
图4表示用于确定从代理110发起的对网络的请求的位置的示例性的过程400,这由图1的W3设备105中的在哪里逻辑160完成。示例性的过程400从开始步骤开始,并且继续至步骤405,其中,策略引擎165经由互联网175从代理110接收以XML信源的形式的服务请求,并将服务请求中的信息传递给在哪里逻辑160。在可选的实施方式中,请求是由在哪里逻辑160经由互联网175从代理110接收到的XML信源(或任何其它类型的已知传输信源)的一部分。在步骤410中,能够被用于识别进行请求的人的信息是根据服务请求被解析的。在一个示例性的实施方式中,该信息是安全令牌。在另一个示例性的实施方式中,来自于是谁逻辑150的能够识别进行请求的人的信息可直接地或通过策略引擎165被传递至在哪里逻辑160。在步骤415中,IP地址或识别设备的其它信息是根据服务请求被解析的。
在步骤420中,网络信息125基于IP地址或设备标识由在哪里逻辑160接收,以确定发起服务请求的位置。在一个示例性的实施方式中,在哪里逻辑160做出关于请求者和设备是否在相同的位置的判断。例如,全球定位系统(“GPS”)将设备置于美国并且将该信息提供给在哪里逻辑160。为了验证请求者的位置,被电连接于GPS的摄像头可被聚焦在请求者的安全识别卡上,并通过在哪里逻辑160进行分析以验证设备和请求者位于相同的位置。在另一个实施例中,GPS单元可包括指纹读出器。作为传递给在哪里逻辑160的请求和信息的一部分,请求者可提供他的/她的指纹以验证请求者与GPS单元和设备位于相同的位置。
在又一个示例性的实施方式中,请求者可经由固定于物理位置的电话线(或者通过电话设备中的GPS,或电话线不是便携式的(即,陆地线))的事实来给在哪里逻辑160提供信息。来自于请求者的语音生物统计数据由在哪里逻辑160接收,并且被分析以确认该请求者是被认为正在进行请求的人,从而验证该设备和请求者位于相同的位置。在一个示例性的实施方式中,关于请求者和设备位于相同的位置的验证导致当由策略引擎165评估时关于信息可信度的更高评分。
在步骤425中,在哪里逻辑160接收被认为正在进行请求的人的在场信源信息130。在步骤430中,在哪里逻辑160确定人的一个或多个可能的位置。在步骤435中,在哪里逻辑160将正在进行请求的人的位置与由网络信息125提供的请求的发起位置进行比较。在步骤440中,在哪里逻辑160使用一组规则以确定两个位置是否相同或实质上相似,位置信息是否是可信的,在场信源信息130是否是可信的,或者基于请求的类型位置判断信息是否是重要的,并且做出请求是否应该被允许的初始确定。在一个示例性的实施方式中,判断位置信息是否是可信,是基于将请求者置于相同的位置的源(即,正在被使用的IP地址,请求者声称他所处的位置、蜂窝电话塔信息、GPS等)的数量。源越多,评分越高。
在步骤445中,在哪里逻辑160输出网络认为服务请求从代理110发出至策略引擎165的位置。策略逻辑165可使用来自于在哪里逻辑160的位置信息,用于额外地处理服务请求。在一个示例性的实施方式中,由在哪里逻辑160提供给策略逻辑165的信息被设置在XML信源中并且包括位置评分和关于请求者和/或设备的位置的细节。由在哪里逻辑160接收和分析的额外信息也可根据需要被传递给策略引擎165。过程从步骤445前进至结束步骤。
策略引擎165经由分布式计算机网络被通信地连接于代理110、W3设备105中的是谁逻辑150、是什么逻辑155、在哪里逻辑160、应用信息135、网络功能和基础结构170,以及功能和基础结构145。策略引擎165获得服务请求背后的事实和信息,并确定W3设备105对那些事实应该做是什么。策略引擎165包括基于可能的商业风险的一组规则,并且策略引擎165使用这些规则以基于每组特定事实确定如何对服务请求做出反应。例如,在目的是管理全球商业的电子商务环境中,策略引擎165可能不评估来自于在哪里逻辑160的信息或者可能不请求在哪里逻辑160管理评估。另一方面,例如,如果系统被设计为只给瑞士位置提供瑞士数据,那么来自于在哪里逻辑160的评估和信息将在决定是否应该允许访问瑞士数据时变得具有更大的重要性。
应用信息135是关于应用如何提供数据的信息的储存库。应用信息135中的信息通常表示软件型资源、电子商务应用和位于设备上的应用。策略引擎165访问应用信息135,以便决定在企业中对应用的访问或使用是否是合适的。应用信息135也可包括定义对特定应用的可访问性的规则。例如,对于每个应用,应用信息135告知策略引擎165与特定应用可连接的设备的类型。
策略引擎135可使用应用信息以及来自于是什么逻辑155的设备信息以决定访问是否应该被拒绝,因为服务请求是由与应用不兼容的设备发出的,或者决定访问是否应该被允许。此外,策略引擎165可访问网络功能和基础结构170中的数据变换引擎184,以确定正在被服务请求所请求的数据是否可被转换为可与进行服务请求的设备连接的对象。例如,来自于个人数字助理(“PDA”)设备的服务请求可能请求通常打算呈现在个人计算机监控器上的信息。策略引擎165可要求数据转换引擎184确定数据是否可被转换为适合于显示在PDA上的类型。如果不能转换,那么策略引擎165可拒绝服务请求,否则,它可使数据经由数据转换引擎184被转换并且被传送至PDA。在另一个实施例中,数据转换引擎184可被用于进行一些数据匿名,同时不对其它数据进行改变。例如,如果信息正在医院建筑物外被请求,那么被并入数据中的社会安全号码可被转换为星号,以使进行服务请求的代理110将不能确定社会安全号码。在一个示例性的实施方式中,策略引擎165的输出是标准网络组件的配置。
此外,策略引擎165在感测到或检测到是谁150、是什么155或哪里160逻辑中的改变时具有动态地改变对应用或信息的访问的控制或权利的能力。例如,如果是谁逻辑150正在接收面部识别或其它生物信息作为对是否允许访问的分析的部分,当面部在提供面部识别数据的照相机前改变时,策略引擎165可将正在根据社会安全号码显示的信息的数据转换变为星号,或者策略引擎165可完全停止对数据或应用的访问。在另一个实施例中,当是什么逻辑155继续监控当前正在接收对受保护的网络或环境中的数据的访问的设备时,如果是什么逻辑155感测到或注意到设备中的改变,例如一USB设备正在被插入,那么策略引擎165将接收来自于是什么逻辑155的信息并且策略引擎165可阻止对该数据的进一步访问。在又一个实施例中,如果一私人银行家在瑞士内时被允许访问瑞士数据,而该银行家通过边界旅行到了德国,则位置的改变可被检测到(例如:通过使用便携式手机或全球移动系统(“GSM”)通信网络上的全球定位系统数据),并且在哪里逻辑160或策略引擎165可停止对瑞士数据的访问。此外,W3105环境中的其它改变,例如:还未被专门讨论的由是谁150、是什么155或哪里160逻辑分析的信息的改变可具有对流出数据中心145的数据流的配置和控制的即时和动态的影响。
代理110是经由分布式计算机网络例如互联网175被通信地连接至策略引擎165的。示例性的代理110为正在对策略引擎165进行服务请求的设备提供了机器状态和操作系统级信息。在可选的实施方式中,进行服务等级请求的设备的机器状态和操作系统级信息可通过使用探测器替代策略引擎165而被获得。网络功能和基础结构170被通信地连接至策略引擎165。在一个示例性的环境中,网络功能和基础结构170包括传统的技术,例如:本领域普通技术人员众所周知的防火墙182、数据转换引擎184、恶意软件防止设备186、网络优化引擎188和虚拟私人网络180、190(“VPN”)。功能和基础结构140经由分布式计算机网络被通信地连接于策略引擎165。功能和基础结构表示企业体系结构中的数据中心。
当需要确定请求者是否应该访问系统时,策略引擎165能够接收是谁150、是什么155和在哪里165逻辑的任意组合。例如,瑞士银行家试图通过远程访问解决方案访问个人信息,其中,策略引擎165的规则表明连接和数据必须只在瑞士国家边界内被访问。是谁信息是由是谁逻辑150通过使用被发给银行家的安全标识和3G SIM来确定的,银行家是与远程访问端点的连接上的呼叫线标识被识别的。此外,通过在规律的持续进行的基础上使用蜂窝三角测量,3G服务供应商给在哪里逻辑160提供了对3G卡的位置进行定位的XML信源。是什么逻辑155接收使用中的设备的标识信源信息,包括设备特征例如CPU的指纹。当设备被连接于网络时,与是谁、是什么和在哪里有关的信息被构造并且通过逻辑组件150、155和160中的每一个被发送到策略引擎165上,并且策略引擎165允许访问网络。因为银行家在火车上,因此银行家和设备的位置总在变化。一旦位置位于瑞士边界线外时,位置信息由在哪里逻辑160提供给策略引擎165,策略引擎165关闭连接并且告知用户该连接已经被终止。
上面的实施例也可被延伸至是谁逻辑150。设备上的摄像头提供了对银行家的观察。面部识别软件由是谁逻辑150使用来以验证银行家的身份。身份信息由是谁逻辑150提供给策略引擎165,只要银行家位于摄像头前,它就保持了对网络的公开连接。一旦银行家不在摄像头的视野范围内和/或另一个人位于摄像头的视野范围内时,不能识别请求者的身份的改变(当没有人在摄像头的视野范围内的情况下)从是谁逻辑150传递至策略引擎165,策略引擎165关闭与网络的连接。
在又一个实施例中,请求者可试图从医院网络访问患者信息。策略引擎的规则或被请求的数据表明,例如,通过使用Wifi三角测量,除非请求者位于医院建筑物内,否则使正在被发送的数据是匿名的,即使请求者和设备是被验证过的。例如,如果在哪里逻辑160确定请求者和设备位于医院中,那么位置信息被提供给策略引擎165,其给请求者提供了对患者记录的访问并且包括患者的社会安全号码。然而,一旦在哪里逻辑160确定请求者或设备不再位于医院中,那么新的位置信息被提供给策略逻辑165,策略逻辑165自动地将提供给请求者的信息变为匿名的,包括例如:对被请求的患者记录,用X取代患者的社会安全号码。
虽然本发明可以进行各种修改和可选的实施方式,但是示例性的实施方式是通过图中的实施例被示出的并且已经在本文中被描述。然而,应该理解,本发明没有被规定为被限制到所公开的示例性的实施方式。更确切地,目的是覆盖落在所描述的发明的精神和范围内的所有修改、等价和替换形式。