用于当连接至网络时识别安全应用程序的系统和方法【专利说明】用于当连接至网络时识别安全应用程序的系统和方法[0001]领域[0002]本发明的实施例涉及应用程序认证,且具体来说涉及当连接至网络时识别安全应用程序。【
背景技术:
】[0003]移动装置上的用户通常希望访问存在于诸如受控网络或企业网络的安全网络上的防火墙内的信息。防火墙可以具有诸如网关的访问代理,其可以向用户提供对安全网络的访问。组织可以通过网络(例如,互联网)向用户提供一种或多种云服务。这种云服务可以包括通过IP限制可能安全也可能不安全的计算、软件、数据访问、存储服务、承包服务等,其物理地驻留在用户可以从公司所拥有的计算机进行访问的任何地方(例如,另一台计算机或组织数据中心)。对于企业网络具体实施来说,当雇员用自己的装置(“BY0D”)访问企业网络时,雇员的装置通常被阻止访问企业网络。【
发明内容】[0004]描述了一种用于访问云资源的系统。在一个实施例中,访问代理接收应用程序访问组织的网络内的资源的请求。该应用程序在组织的网络外部的用户装置上运行。访问代理进一步识别应用程序的用户的用户标识符、用户装置的装置标识符和应用程序的应用程序标识符。访问代理还确定用户标识符、装置标识符和应用程序标识符的组合是否满足访问策略。如果用户标识符、装置标识符和应用程序标识符的组合满足访问策略,那么访问代理准予应用程序访问组织的网络内的资源。[0005]在一个实施例中,该资源是私有云资源或公共云资源中的至少一者。在一个实施例中,应用程序的请求包括通过应用程序私有密钥签名的断言中所包含的用户标识符、装置标识符和应用程序标识符。访问代理可以进一步使用来自应用程序供应服务的应用程序公共密钥从该请求中提取用户标识符、装置标识符和应用程序标识符。在一个实施例中,准予应用程序访问组织的网络内的资源包括确定哪些云资源可用于用户装置。[0006]在另一个实施例中,该系统进一步包括接收启动应用程序以访问云资源的用户请求的用户装置。用户装置还可以获得应用程序的访问证书,这些访问证书包括用户标识符、装置标识符和应用程序标识符。用户装置可以进一步通过网络向访问代理发送包括访问证书和云资源的标识符的访问请求。用户装置可以从访问代理接收对访问请求的响应,该响应指示该访问请求已被准予还是被拒绝。[0007]在一个实施例中,确定用户标识符、装置标识符和应用程序标识符的组合是否满足访问策略包括将与该请求相关联的用户标识符、装置标识符和应用程序标识符的组合与用户标识符、装置标识符和应用程序标识符的有效组合的列表进行比较。获得访问证书可以包括提供用户接口以有助于用户标识符、装置标识符和应用程序标识符中的至少一者的用户输入。[0008]描述了一种用于访问云资源的方法。在一个实施例中,一个计算机系统,诸如访问代理,接收应用程序访问组织的网络内的资源的请求。该应用程序在组织的网络外部的用户装置上运行。访问代理可以识别应用程序的用户的用户标识符、用户装置的装置标识符和应用程序的应用程序标识符。访问代理可以进一步确定用户标识符、装置标识符和应用程序标识符的组合是否满足访问策略。如果用户标识符、装置标识符和应用程序标识符的组合满足访问策略,那么访问代理还可以准予应用程序访问组织的网络内的资源。[0009]另外,还描述了一种用于访问云资源的非暂态计算机可读存储介质网络。示例性计算机可读存储介质提供指令,这些指令在由处理器执行时,使得处理器执行诸如以上所讨论的示例性方法等方法。【附图说明】[0010]根据下文给出的详细描述并且根据本发明的各种实施例的附图将更全面地理解本发明,然而,所述详细描述和所述附图不应视为使本发明限于特定的实施例,而是仅作为解释和理解之用。[0011]图1本发明的实施例可以在其中操作的样本网络体系结构的框图。[0012]图2是根据一个实施例的示出访问控制模块的框图。[0013]图3是根据一个实施例的示出认证模块的框图。[0014]图4是根据一个实施例的示出用于云资源的访问控制方法的流程图。[0015]图5是根据另一个实施例的示出用于云资源的访问控制方法的流程图。[0016]图6是根据一个实施例的示出计算机系统的一个实施例的框图。【具体实施方式】[0017]描述了当连接至一个网络时用于识别一个安全应用程序以访问云服务或云资源的一种方法和设备的实施例。在某些实施例中,访问代理使用用户身份、装置身份和应用程序身份的组合来将访问管理和身份认证相结合。访问代理可以阻止用户的个人装置上的一些应用程序访问云资源,同时允许用户的个人装置上的另一个应用程序访问同一云资源。[0018]图1是本文所述的本发明的实施例可以在其中操作的样本网络体系结构100的框图。网络体系结构100可以包括企业网络(私有云)130、公共云140(包括不由企业管理并且包含在私有云130中的服务)和能够通过网络106与企业网络130和公共云140进行通信的用户装置102。网络106可以包括例如诸如局域网(LAN)等私有网络、广域网(WAN)、诸如互联网等全球局域网(GAN)或此类网络的组合,并且可以包括有线网络或无线网络。[0019]云计算(“云”)可以是指通过计算机网络访问计算资源。云计算允许在用户工作时,在所用计算资源与物理机器之间实现功能分离。用户可以使用用户装置来访问云(例如,企业网络130或公共云140)中的资源。用户装置可以包括受管理的用户装置和不受管理的用户装置。受管理的用户装置是指企业可以对其进行一定程度的控制的用户装置(由企业或用户所拥有)。具体来说,企业可以控制在受管理的用户装置上可以安装和运行哪些应用程序或程序。不受管理的用户装置是用户所拥有的没有受到企业控制的用户装置,诸如雇员的家用计算机或个人移动电话。图1所示的用户装置102表示用户的不受管理的便携式装置,诸如平板计算机、智能电话、个人数字助理(PDA)、便携式媒体播放器、上网本等。[0020]用户可以从一个或多个应用程序商店110向用户装置102下载各种应用程序。应用程序商店110可以通过一种应用程序供应服务进行管理,该应用程序供应服务可以是企业网络130或公共云140或任何其他网络或实体的一部分。应用程序商店110可以包括包装应用程序以供下载。用户可以从应用程序商店110向用户装置102下载包装应用程序107。包装应用程序107包括一个由可以执行策略、认证和加密的安全层所包装的应用程序(简称为“app”)108。应用程序108可以是任何类型的应用程序、可执行码(executable)、程序等。示例包括:本机应用程序(其可以使用第三方框架进行编码)、网页剪辑、或者快捷键、安全的网页应用程序(连接至一个URL的“包装的”无系统窗口(chrome-less)浏览器)、“存储器指针”(其中正分配的对象是进入商业应用程序商店客户端的深链接)等。应用程序包装是在应用程序108分配之前,将策略执行“包装代码”添加到应用程序108。[0021]应用程序的包装具有多种用途,包括例如认证。非活动超时是可配置的,并且可以允许逐个应用程序地进行离线认证。在线应用程序内认证与特定协议无关,但可以通过使用轻量级目录访问协议(LDAP)连接至活动目录(AD)来调整本地用户/组存储设备(例如,本地身份提供者(IdP)、身份断言提供者等)。例如,包装应用程序107可能需要在允许用户访问应用程序108之前进行在线认证。在另一个示例中,认证包括检查该装置的操作系统是否已以可能对该装置或网络上的其他装置构成安全威胁的方式(例如,通过“获取超级用户”或“越狱”技术)被修改或改变,并且拒绝对修改的或改变的装置进行认证。[0022]管理应用程序商店110的应用程序供应服务可以只允许授权用户访问和浏览可用应用程序107。在所述配置中,应用程序商店110向用户呈现登录屏幕,在该登录屏幕上,用户输入他们的用户证书。应用程序供应服务可以验证这些证书或使用另一个系统或模块来验证这些证书。如果用户已提供了有效证书,那么应用程序商店110准予访问其包装应用程序库。在另一个实施例中,应用程序供应服务只允许授权装置访问应用程序商店。对于这种配置来说,访问应用程序商店110的请求来自装置。用户可以输入该装置标识符或该装置标识符可以被自动添加到访问应用程序商店110的用户请求。与验证用户证书类似,如果装置经过验证,那么它可以访问应用程序商店110。[0023]在一个实施例中,通过安装在用户装置102上的可下载的客户端访问应用程序商店110。这个可下载的应用程序商店客户端使得用户能够从他们可以访问的应用程序集合中浏览和选择包装应用程序107。一旦选择了应用程序107,那么应用程序商店客户端和与应用程序商店110相关联的服务器一起工作以将应用程序107安装在装置102上。与应用程序商店110相关联的服务器维持安装在装置上的应用程序107的数据库,以及装置-用户关联度。[0024]企业网络130和公共云140可以各自包括授权用户装置通过网络106可访问的一组云资源和/或云服务132、142。私有云资源132可以包括例如电子邮件服务、文档管理服务、客户关系管理(CRM)服务、视频通信服务或一些其他云服务。可以使得挑选出来的用户能够通过网络106使用用户装置102访问企业网络130中的私有云资源132。可以对私有云资源132加密。[0025]网络体系结构100还可以被设计成具有安全特征以保护对由组织当前第1页1 2 3 4