应用特定客户端证书的自动生成制造技术

技术编号:27011409 阅读:13 留言:0更新日期:2021-01-08 17:22
本文中公开了用于应用特定客户端证书的自动生成的技术。在一个实施例中,一种方法包括:在web服务器处在包含共同打包的web客户端的打包应用中接收来自web客户端的连接请求和来自web客户端的客户端证书的第一副本。在接收到客户端证书时,web服务器可以使用由web服务器针对共同打包的web客户端先前生成的客户端证书的第二副本认证来自web客户端的连接请求。响应于成功地认证,基于客户端证书的第一副本和第二副本两者,web服务器可以与web客户端建立安全连接,以允许web客户端访问计算设备上的系统级服务。否则,web服务器将拒绝连接。

【技术实现步骤摘要】
【国外来华专利技术】应用特定客户端证书的自动生成
技术介绍
在计算中,web应用(webapplication)或web应用(webapp)是一种遵循客户端服务器模型的计算机程序,在客户端服务器模型中,客户端(通常包括用户界面和客户端逻辑)在web浏览器中运行。web应用可以使用以标准格式(诸如由各种web浏览器支持的超文本标记语言(HTML)和)编写的网络文档(网页)。示例web应用包括网络邮件、在线零售、在线拍卖、Wiki、即时消息服务和很多其他应用。在会话期间,web浏览器解释和显示网络文档,并且充当任何web应用的通用客户端。这样,web应用可以为经由各种不同计算设备(诸如台式计算机、智能电话和平板计算机)进行访问提供极大的灵活性。
技术实现思路
提供本“
技术实现思路
”以便以简化的形式介绍一些概念,这些概念将在下面的“具体实施方式”中进一步描述。本“
技术实现思路
”既不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。尽管web应用可以为用户和开发人员提供极大的可访问性和其他好处,但是在某些情况下,将应用部署为web应用可能会导致某些操作困难。例如,通过在web浏览器内运行web应用,web应用通常无权访问计算设备上的系统级服务,因为web浏览器中的安全边界或“沙盒”将web应用与计算设备的主机操作系统隔离。这样的系统级服务的示例可以包括各种配置服务(例如,改变机器名称)或由计算设备上的主机操作系统提供的其他合适类型的服务。前述困难的一种解决方案是将web应用与专用web服务器一起作为打包应用部署在计算设备上。这种配置有时被称为“同一盒子”配置。在操作中,web服务器可以被授予系统级访问权限,并且服务于来自web应用的对系统级服务的请求。但是,前述解决方案存在来自其他web应用的潜在安全漏洞的风险,因为web服务器不仅可以服务于来自共同打包的web应用的请求,而且还可以服务于来自在同一计算设备上运行的其他未授权web应用的请求。这样,没有系统级访问权限的另一web应用可以通过请求web服务器执行某些操作来获取系统级访问权限。这样的操作可以绕过计算设备上的安全设置。所公开的技术的几个实施例可以通过在打包应用中实现应用特定客户端证书的自动生成来解决上述挑战的某些方面。在一种实现中,在安装、访问许可修改或打包应用启动期间,web服务器可以被配置为自动生成服务器证书和客户端证书。服务器证书和客户端证书可以分别包括表示私钥、公钥、签名、绑定到前述组件的主题(例如,web服务器)的数据、或其他合适的安全性数据。然后,web服务器可以将所生成的服务器证书和客户端证书存储在由例如主机操作系统分配给打包应用的专用存储器位置。专用存储器位置只能由web服务器和对应web客户端访问。在服务器证书和客户端证书的创建和存储完成之后,web服务器可以被配置为通过例如在web浏览器中启动web客户端来激活web客户端。在激活期间,web服务器可以被配置为例如作为函数调用中的变元或其他合适类型的激活指令来向web客户端传递web服务器的数字签名(或“缩略图”)或公钥或者作为可信证书颁发机构的web服务器的标识。在接收到激活指令时和/或在web浏览器中启动web客户端期间,web客户端可以从专用存储器位置取回由web服务器创建的客户端证书的副本。使用自动生成的服务器/客户端证书,web服务器和共同打包的web客户端可以彼此认证,以降低或防止未授权web应用访问计算设备上的web服务器的风险。在某些实施例中,打包应用可以在web服务器与web客户端之间实现传输层安全性(TLS)或安全套接字层(SSL)握手。例如,web客户端可以向web服务器传输连接请求连同web客户端的标识或其他合适的参数。作为响应,web服务器可以传输由web服务器自签名的服务器证书的副本(例如,包含web服务器的公钥)。在一种实现中,web客户端可以通过将服务器证书与在激活期间作为变元而接收的证书进行比较来认证web服务器。在另一实现中,web客户端可以将web服务器标识为可信证书颁发机构,并且使用web服务器的公钥来认证服务器证书。在其他实现中,web客户端可以按照其他合适的方式认证web服务器。web客户端还可以将客户端证书的副本传输到web服务器以进行认证。在接收到客户端证书时,web服务器可以使用存储在专用存储器位置中的客户端证书的副本来以与上面关于验证web服务器所述的方式大体上相似的方式来认证和验证web客户端。一旦通过认证,web服务器就可以允许所请求的连接,web客户端可以基于该连接经由web服务器访问各种系统级服务。在其他实施例中,打包应用还可以实现3路、4路或其他合适类型的握手协议,以在打包应用中在web服务器与web客户端之间建立连接。所公开的技术的几个实施例因此可以降低或防止未授权web客户端访问打包应用中的web服务器的风险。当未授权web客户端请求与web服务器的连接时,未授权web客户端将无法访问分配给打包应用的专用存储器位置。因此,未授权web客户端无法向web服务器提供任何或正确的客户端证书以进行认证。结果,打包应用中的web服务器将拒绝连接请求,从而防止未授权web客户端经由web服务器访问任何系统级服务。附图说明图1A和图1B是示出根据所公开的技术的实施例的支持被配置为自动生成应用特定客户端证书的打包应用的主机的示意图。图2A至图2E是根据所公开的技术的实施例的在用于在打包应用中的web服务器与web客户端之间建立连接的操作阶段期间图1A和图1B的主机的某些硬件/软件组件的示意图。图3A至图3C是示出根据所公开的技术的实施例的用于客户操作系统的存储器分配的某些过程的流程图。图4是适合于图1中的计算设备的某些组件的计算设备。具体实施方式下面描述用于应用特定客户端证书的自动生成的系统、设备、组件、模块、例程、数据结构和过程的某些实施例。在以下描述中,包括组件的具体细节以提供对所公开的技术的某些实施例的透彻理解。相关领域的技术人员还将理解,该技术可以具有其他实施例。该技术也可以在没有下面参考图1A至图4描述的实施例的几个细节的情况下实践。如本文中使用的,“主机计算设备”或“主机”通常是指被配置为支持一个或多个应用或计算机程序的执行的计算设备。在某些实施例中,主机可以包括被配置为支持应用或计算机程序的执行的主机操作系统。在其他实施例中,主机还可以支持例如一个或多个虚拟机(VM)、容器或其他合适的虚拟化组件的实现。例如,主机可以包括具有配置为支持一个或多个虚拟机、容器或其他合适类型的虚拟组件的管理程序的服务器。一个或多个虚拟机或容器可以用于启动和执行合适的应用或计算机程序以提供对应计算服务。本文中还使用的“主机操作系统”通常是指被部署为直接与计算机设备(例如,服务器)的硬件组件交互并且可以授予或拒绝对由主机操作系统提供的服务的系统级访问的操作系统。在某些实现中,管理程序(例如,托管的管理程序)可以在主机操作系统之上运行,而不是直接与计算设备的硬件本文档来自技高网...

【技术保护点】
1.一种具有主机操作系统的主机计算设备上的应用特定客户端证书的自动生成的方法,所述方法包括:/n接收在所述主机操作系统中安装、修改许可或启动打包应用的请求,所述打包应用包含web服务器和对应web客户端两者;以及/n响应于接收到所述请求,/n利用所述web服务器自动生成表示针对所述web客户端的客户端证书和服务器证书的数据;/n将所生成的所述服务器证书和所述客户端证书存储在由所述主机操作系统分配给所述打包应用的专用存储器中;/n在所述服务器证书和所述客户端证书的生成完成时,由所述web服务器激活所述打包应用中的所述web客户端;以及/n在所述web客户端的激活期间,由所述web客户端从所述专用存储器取回所存储的所述客户端证书的副本,由此使得所述web客户端能够在操作期间向所述web服务器认证,以降低由在同一计算设备上执行的另一web客户端对所述web服务器的未授权访问的风险。/n

【技术特征摘要】
【国外来华专利技术】20180531 US 15/994,8941.一种具有主机操作系统的主机计算设备上的应用特定客户端证书的自动生成的方法,所述方法包括:
接收在所述主机操作系统中安装、修改许可或启动打包应用的请求,所述打包应用包含web服务器和对应web客户端两者;以及
响应于接收到所述请求,
利用所述web服务器自动生成表示针对所述web客户端的客户端证书和服务器证书的数据;
将所生成的所述服务器证书和所述客户端证书存储在由所述主机操作系统分配给所述打包应用的专用存储器中;
在所述服务器证书和所述客户端证书的生成完成时,由所述web服务器激活所述打包应用中的所述web客户端;以及
在所述web客户端的激活期间,由所述web客户端从所述专用存储器取回所存储的所述客户端证书的副本,由此使得所述web客户端能够在操作期间向所述web服务器认证,以降低由在同一计算设备上执行的另一web客户端对所述web服务器的未授权访问的风险。


2.根据权利要求1所述的方法,还包括:
每次接收到在所述主机操作系统中安装、修改许可或启动所述打包应用的请求时,重新生成所述服务器证书和所述客户端证书。


3.根据权利要求1所述的方法,其中:
所生成的所述服务器证书和所述客户端证书分别具有生存时间值;并且
所述方法还包括每次在所述生存时间值期满时重新生成所述服务器证书和所述客户端证书。


4.根据权利要求1所述的方法,其中自动生成包括:
利用所述web服务器自动生成表示针对所述web客户端的所述客户端证书和所述服务器证书的数据,所述服务器证书和所述客户端证书分别包括以下一项或多项:
私钥;
公钥;
数字签名;
所述打包应用的已安装实例的标识;
已安装web服务器的标识,或者
所述已安装web服务器的扩展的标识。


5.根据权利要求1所述的方法,其...

【专利技术属性】
技术研发人员:C·S·马丁内兹S·K·纳茨姆斯M·J·威尔逊J·T·特里帕蒂R·埃朗
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1