CN106209741A - 一种虚拟主机及隔离方法、资源访问请求处理方法及装置 - Google Patents

一种虚拟主机及隔离方法、资源访问请求处理方法及装置 Download PDF

Info

Publication number
CN106209741A
CN106209741A CN201510226829.8A CN201510226829A CN106209741A CN 106209741 A CN106209741 A CN 106209741A CN 201510226829 A CN201510226829 A CN 201510226829A CN 106209741 A CN106209741 A CN 106209741A
Authority
CN
China
Prior art keywords
host computer
fictitious host
resource
container
access request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510226829.8A
Other languages
English (en)
Other versions
CN106209741B (zh
Inventor
李楠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Cloud Computing Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510226829.8A priority Critical patent/CN106209741B/zh
Priority to TW104142275A priority patent/TWI701596B/zh
Priority to US15/146,002 priority patent/US11068586B2/en
Priority to PCT/US2016/030812 priority patent/WO2016179300A1/en
Priority to EP16790027.3A priority patent/EP3292468B1/en
Publication of CN106209741A publication Critical patent/CN106209741A/zh
Application granted granted Critical
Publication of CN106209741B publication Critical patent/CN106209741B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Mining & Analysis (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施方式公开了一种虚拟主机隔离方法。该方法包括:确定虚拟主机在网络服务器的根目录之下与所述虚拟主机对应的目录,将与所述虚拟主机对应的目录中的最上层目录确定为所述虚拟主机的根目录;在所述虚拟主机的根目录下创建公共资源利用目录,建立所述公共资源利用目录与网络服务器根目录之下的公共资源共享目录之间的映射关系,以形成虚拟主机用于运行进程的容器,通过所述容器实现虚拟主机之间的隔离。本申请实施方式还公开了虚拟主机以及资源访问请求处理方法及装置。本申请实施方式可以实现虚拟主机的安全隔离。

Description

一种虚拟主机及隔离方法、资源访问请求处理方法及装置
技术领域
本申请涉及网络服务器技术领域,尤其涉及一种虚拟主机隔离方法、虚拟主机、资源访问请求处理方法及其对应装置。
背景技术
为了充分利用网络服务器的运算处理、存储空间等资源,一个网络服务器可以通过一定的技术同时为多个资源使用者提供相对独立的服务,这种情况下,相当于把一个网络服务器划分成了多个“子网络服务器”,常见的虚拟主机即是这种资源利用方式的一种实现。位于网络服务器上的各个虚拟主机具有相对独立的系统资源,比如IP地址、磁盘空间、内存、CPU使用时间等,从而可以对外提供完整的WEB服务器功能。在虚拟主机以外的对象看来,每一台虚拟主机和一台独立的服务器没有什么特别不同。
网络服务器通过其自身的各个虚拟主机向资源使用者提供WEB服务,但是,由于多个虚拟主机位于同一服务器之上,原有的防火墙等网管设备已不复存在,虚拟主机之间的边界不甚明确,相互之间存在干扰的可能,从而导致出现安全问题。比如,网络服务器上的某个虚拟主机出现黑客入侵,不仅影响到该虚拟主机自身的安全,还可能对该虚拟主机以外的其他虚拟主机造成安全威胁。为了使网络服务器上的虚拟主机相互独立,需要对虚拟主机进行隔离。在现有技术中,一种隔离方式是对虚拟主机的资源使用者的访问权限通过专门配置进行限制,只有在预先配置范围内的资源才允许访问。然而,对访问权限的配置通常通过某种特定语言(比如,PHP语言)来实现,这导致对虚拟主机的隔离停留在语言级别,不使用该配置语言的使用者通过其他语言可以容易绕过权限配置,从而导致虚拟主机之间没有实现真正隔离,仍然存在安全风险。
发明内容
为了解决现有技术中的技术问题,本申请实施方式提供一种网络服务器的虚拟主机隔离方法、虚拟主机以及资源访问请求处理方法及其装置,以实现虚拟主机之间的安全隔离,改善或提高资源访问请求处理过程的安全性能。
本申请实施方式提供了一种网络服务器的虚拟主机隔离方法,包括:
确定虚拟主机在网络服务器的根目录之下与所述虚拟主机对应的目录,将与所述虚拟主机对应的目录中的最上层目录确定为所述虚拟主机的根目录;
在所述虚拟主机的根目录下创建公共资源利用目录,建立所述公共资源利用目录与网络服务器根目录之下的公共资源共享目录之间的映射关系,以形成虚拟主机用于运行进程的容器,通过所述容器实现虚拟主机之间的隔离。
优选地,所述将与所述虚拟主机对应的目录中的最上层目录确定为所述虚拟主机的根目录包括:
调用根目录改变函数将与所述虚拟主机对应的目录中的最上层目录修改为所述虚拟主机的根目录。
优选地,所述建立所述公共资源利用目录与网络服务器的根目录之下的公共资源共享目录之间的映射关系包括:
调用目录挂载函数将网络服务器的根目录之下的公共资源共享目录以只读挂载的方式挂载到所述虚拟主机的公共资源利用目录。
优选地,所述方法还包括:使利用网络服务器和/或虚拟主机资源的一个或多个进程在虚拟主机的容器内运行,在一个虚拟主机的容器内运行的进程与其他虚拟主机的容器内运行的进程具有不同的进程命名空间,在虚拟主机的容器内运行的进程在相同进程命名空间内具有不同的进程标识。
优选地,所述使利用网络服务器和/或虚拟主机资源的一个或多个进程在虚拟主机的容器内运行包括:
将待在虚拟主机内运行的进程的原始根目录修改为虚拟主机的根目录,以及将待在虚拟主机内运行的进程的进程标识修改为按照虚拟主机的进程命名空间命名的进程标识,以使进程在虚拟主机的容器内运行。
优选地,虚拟主机的容器内具有容器管理器进程,所述容器管理器进程的根目录为虚拟主机的根目录,所述容器管理器进程按照当前虚拟主机的进程命名空间命名进程标识,所述使利用网络服务器和/或虚拟主机资源的一个或多个进程在虚拟主机的容器内运行包括:
继承所述容器管理器进程,以生成在虚拟主机的容器内运行的利用网络服务器和/或虚拟主机资源的一个或多个进程。
本申请实施方式还提供了一种网络服务器的虚拟主机。该虚拟主机包括用于运行进程的容器,所述容器的根目录为所述虚拟主机的根目录,所述虚拟主机的根目录为所述虚拟主机在网络服务器的根目录之下与所述虚拟主机对应的目录中的最上层目录,在所述虚拟主机的根目录下具有公共资源利用目录,所述公共资源利用目录与网络服务器的根目录之下的公共资源共享目录之间具有映射关系。
优选地,在所述容器内能运行利用网络服务器和/或虚拟主机资源的一个或多个进程,在一个虚拟主机的容器内运行的进程与其他虚拟主机的容器内运行的进程具有不同的进程命名空间,在虚拟主机的容器内运行的进程在相同进程命名空间内具有不同的进程标识。
优选地,所述容器内具有容器管理器进程,所述容器管理器进程的根目录为虚拟主机的根目录,所述容器管理器进程按照当前虚拟主机的进程命名空间命名进程标识。
本申请实施方式还提供了一种资源访问请求处理方法,所述方法应用于包括上述虚拟主机的网络服务器,该方法包括:
接收网络服务器转发的访问动态资源的资源访问请求,所述访问动态资源的资源访问请求包括待访问的动态资源所在的虚拟主机的标识;
在虚拟主机的容器内处理所述访问动态资源的资源访问请求,将处理结果返回给网络服务器,以便网络服务器返回给发送所述资源访问请求的请求端。
优选地,所述在虚拟主机的容器内处理所述访问动态资源的资源访问请求包括:
将第一脚本解释器进程的原始根目录修改为所述虚拟主机的根目录,以及将所述第一脚本解释器进程的进程标识修改为按照所述虚拟主机的进程命名空间命名的进程标识,以使第一脚本解释器进程在所述虚拟主机的容器内运行;
通过在虚拟主机的容器内运行的第一脚本解释器进程处理所述访问动态资源的资源访问请求。
优选地,所述虚拟主机的容器内具有容器管理器进程,所述容器管理器进程的根目录为虚拟主机的根目录,所述容器管理器进程按照当前虚拟主机的进程命名空间命名进程标识,则所述在虚拟主机的容器内处理所述访问动态资源的资源访问请求包括:
在接收到网络服务器转发的访问动态资源的资源访问请求后,继承所述容器管理器进程,以生成第二脚本解释器进程;
通过在虚拟主机的容器内运行的第二脚本解释器进程处理所述访问动态资源的资源访问请求。
优选地,在接收到网络服务器转发的访问动态资源的资源访问请求之前,向网络服务器发送所述容器管理器进程的注册请求,所述注册请求包括所述容器管理器进程的进程标识以及虚拟主机的标识;
接收网络服务器在建立所述容器管理器进程的进程标识与所述虚拟主机的标识之间的对应关系后发送的注册成功消息,以便在接收到所述注册成功消息后,接收网络服务器根据所述对应关系转发给所述容器管理器进程的访问动态资源的资源访问请求。
优选地,所述资源访问请求为访问静态资源的资源访问请求时,网络服务器读取所述静态资源,以便返回给发送所述资源访问请求的请求端。
本申请实施方式还提供了一种资源访问请求处理装置,所述装置应用于包括上述虚拟主机的网络服务器,该装置包括访问请求接收单元和访问请求处理单元,其中:
所述访问请求接收单元,用于接收网络服务器转发的访问动态资源的资源访问请求,所述访问动态资源的资源访问请求包括待访问的动态资源所在的虚拟主机的标识;
所述访问请求处理单元,用于在虚拟主机的容器内处理所述访问动态资源的资源访问请求,将处理结果返回给所述网络服务器,以便网络服务器返回给发送所述资源访问请求的请求端。
优选地,所述访问请求处理单元包括第一脚本解释器进程创建子单元和第一访问请求处理子单元,其中:
所述第一脚本解释器进程创建子单元,用于将第一脚本解释器的原始根目录修改为所述虚拟主机的根目录,以及将所述第一脚本解释器进程的进程标识修改为按照所述虚拟主机的进程命名空间命名的进程标识,以使第一脚本解释器进程在所述虚拟主机的容器内运行;
所述第一访问请求处理子单元,用于通过在虚拟主机的容器内运行的第一脚本解释器进程处理所述访问动态资源的资源访问请求。
优选地,所述虚拟主机的容器内具有容器管理器进程,所述容器管理器进程的根目录为虚拟主机的根目录,所述容器管理器进程按照当前虚拟主机的进程命名空间命名进程标识,所述访问请求处理单元包括第二脚本解释器进程创建子单元和第二访问请求处理子单元,其中:
所述第二脚本解释器进程创建子单元,用于在接收到网络服务器转发的访问动态资源的资源访问请求后,继承所述容器管理器进程,以生成第二脚本解释器进程;
所述第二访问请求处理子单元,用于通过在虚拟主机的容器内运行的第二脚本解释器进程处理所述访问动态资源的资源访问请求。
优选地,所述装置包括注册单元,用于在接收到网络服务器转发的访问动态资源的资源访问请求之前,向网络服务器发送所述容器管理器进程的注册请求,所述注册请求包括所述容器管理器进程的进程标识以及虚拟主机的标识;所述访问请求接收单元,还具体用于接收网络服务器在建立所述容器管理器进程的进程标识与所述虚拟主机的标识之间的对应关系后发送的注册成功消息,以便在接收到所述注册成功消息后,接收网络服务器根据所述对应关系转发给所述容器管理器进程的访问动态资源的资源访问请求。
本申请实施方式提供的虚拟主机隔离方法、虚拟主机建立(或拥有)属于虚拟主机自身的目录体系,在虚拟主机内建立(或拥有)用于运行进程的容器,与现有技术相比,通过该方式使利用网络服务器资源和/或虚拟主机资源的进程的根目录为虚拟主机的根目录,且运行在容器内,具有较大的独立性,不会和其他虚拟主机的进程发生相互干扰,从而确保了虚拟主机之间的安全隔离,有利于改善或增强利用所述虚拟主机进行资源访问请求处理的安全性能。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请的网络服务器的虚拟主机隔离方法的实施例的流程示意图;
图2(a)为Linux系统的目录结构示意图;
图2(b)为Linux系统中包含虚拟主机的目录结构示意图;
图3为本申请虚拟主机隔离方法的形象化实施过程示意图;
图4为本申请的资源访问请求处理方法的一个实施例流程图;
图5为本申请的资源访问请求处理方法的又一个实施例流程图;
图6(a)为网络服务器与脚本解释器进程的通信过程示意图;
图6(b)为网络服务器与CPM进程的通信过程示意图;
图7(a)为本申请的资源访问请求处理方法再一个实施例流程图;
图7(b)为本申请的资源访问请求处理过程的信令交互图;
图8为本申请的资源访问请求处理装置的实施例的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请的具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如前所述,一台网络服务器上可以存在多个虚拟主机,这些虚拟主机就如同一间大房屋(类似于网络服务器)中的各个出租房间(类似于虚拟主机)。通常情况下,住在各个出租房间内的住户(类似于虚拟主机的用户)互不了解,无法判断自己出租房间的相邻房间的住户是否存在恶意或者存在恶意的可能。如果该相邻出租房间被窃贼破门而入,那么极有可能从该相邻出租房间的窗户(类似于网络服务器/虚拟主机上的系统漏洞等)钻入到自己的出租房间,从而对自己的出租房间造成威胁。由此可见,位于同一个网络服务器上的多个虚拟主机之间应当进行有效隔离,使它们相互之间的影响减少到最小,甚至消除相互影响。为此,本申请提供了一种虚拟主机的隔离方法的实施例。参见图1,该图示出了对网络服务器上的虚拟主机进行安全隔离的方法的流程,该流程包括:
步骤S11:确定虚拟主机在网络服务器的根目录之下与所述虚拟主机对应的目录;
网络服务器具有自身的目录结构体系。在其目录结构体系中,最上面的一层目录为网络服务器的根目录,在根目录之下存在适应各种实际需要的子目录,子目录之下又可能存在孙目录,孙目录之下又可能存在孙孙目录等,同时,在一个层级上,也可能存在多个目录,这些由横向、纵向的各级、各层目录形成的目录结构体系如同“树形”一般,因此,网络服务器的目录结构体系又被称为目录树。以网络服务器的系统为Linux系统为例,其目录结构体系如图2(a)所示。在该图中,“/”表示网络服务器的根目录,在根目录“/”的下一层级存在多个“子目录”,如图中所示的“bin/”、“etc/”、“lib/”、“usr/”、“home/”等。在这种目录结构体系中,由于网络服务器具有多个虚拟主机,每个虚拟主机在网络服务器的目录结构体系中具有与其自身对应的目录。参见图2(b)所示,在网络服务器的目录结构体系中,根目录“/”下有“home/”目录,在“home/”目录下有“alice/”目录及其以下的目录(包括“etc/”、“dev/”、“lib/”等目录)。该“alice/”目录及其以下的目录对应“alice”用户的虚拟主机目录,当然在“home/”目录下,还可以具有其他虚拟主机的用户对应的虚拟主机目录。在本申请实施方式中,确定与所述虚拟主机对应的目录便是确定虚拟主机在网络服务器的目录体系结构中属于虚拟主机的目录,如上例中的“alice/”目录以及“alice/”目录之下的“etc/”、“dev/”、“lib/”等目录。这些目录同样形成一个与虚拟主机对应的目录结构体系。
步骤S12:将与所述虚拟主机对应的目录中的最上层目录确定为所述虚拟主机的根目录;
通过前述步骤确定了与虚拟主机对应的目录后,将该目录中的最上层目录确定为虚拟主机的根目录,如上例中,将“alice/”目录确定为与“alice”虚拟主机对应的根目录。在现有技术中,“alice”虚拟主机的根目录为整个网络服务器的根目录,即“/”。为实现这种根目录的改变,可以使用多种具体方式。比如,在本申请的一个实施例中,可以通过调用根目录改变函数将虚拟主机对应的目录中的最上层目录修改为虚拟主机的根目录,从而将虚拟主机的根目录由原来网络服务器的根目录改变为与该虚拟主机对应的根目录。以Linux系统为例,根目录改变函数可以是chroot系统函数,其调用方式是“chroot(‘目标根目录’)”,在上例中目标根目录为“/home/alice”,将虚拟主机目录系统的根目录确定后,在该根目录之外的文件将无法“看见”该根目录之下的内容。如果网络服务器上具有多个虚拟主机,那么每个虚拟主机都可以通过上述方式获得自己专属的“根目录”,而不用再共享网络服务器的根目录。
步骤S13:在所述虚拟主机的根目录下创建公共资源利用目录;
通过前述步骤确定虚拟主机的根目录后,便可以在该虚拟主机的根目录下创建各种子目录,以便某些进程使用这些目录或者目录中的资源。在这些子目录中,可以包括公共资源利用目录,该目录的创建可以使虚拟主机的进程利用某些公共资源,比如,网络服务器的操作系统中的系统配置文件、系统提供的工具、共享库文件等。这里的“公共资源”具有“公共属性”,不专属于某个虚拟主机,而可能由两个或多个虚拟主机共同使用,甚至网络服务器下的所有虚拟主机均会使用。
步骤S14:建立所述公共资源利用目录与网络服务器根目录之下的公共资源共享目录之间的映射关系,以形成虚拟主机用于运行进程的容器,通过所述容器实现虚拟主机之间的隔离。
在虚拟主机的根目录下创建了公共资源利用目录后,还需要给这些目录赋予“内容”,但是,由于公共资源是多个虚拟主机要共享的,如果每一个虚拟主机下的公共资源利用目录均直接将公共资源复制到(或者自身重新建立)自身根目录之下,那么将导致网络服务器的整个目录结构体系非常臃肿,为了避免这种情况的出现,本实施例采取的方式是在虚拟主机的公共资源利用目录与网络服务器根目录之下的公共资源共享目录之间建立映射关系,这样在某些进程要使用虚拟主机的公共资源利用目录时,便可通过这种映射关系“链接”到网络服务器根目录之下的公共资源共享目录。在实际应用过程中,可以有多种创建这种映射关系的方式,比如,在Linux操作系统中,可以通过调用目录挂载函数(比如,mount系统调用的bind功能)将一个目录挂载到另一个目录下,从而实现两类目录之间映射关系的建立。
本实施例通过前述步骤为虚拟主机建立了独立的目录结构体系,使其根目录与其他虚拟主机的根目录各自隔离,而不在共同拥有网络服务器的根目录,而且,对公共资源的利用也仅仅直接映射到网络服务器的根目录下的公共资源共享目录,而不会与其他虚拟主机的根目录下的公共资源利用目录发生关联,从而将虚拟主机的访问权限限制在一个固定的目录下,这种方式使各个虚拟主机之间形成了一个较为独立的容器,通过该容器将不同的虚拟主机之间进行了有效隔离,达到一个虚拟主机下的进程无法访问另一个虚拟主机下的资源的目的。
下面结合图3进行详细说明。图3示出了本申请实施方式针对Linux系统的一种形象化实施过程。在网络服务器的目录结构体系中,对于“alice”这个虚拟主机而言,其原本的目录结构体系是“alice/etc/、alice/dev/、alice/lib/、alice/htdocs/”等,这些目录均以网络服务器的根目录“/”为根目录,但是,通过根目录改变函数choor(“home/alice”)可以将alice虚拟主机的根目录改变为“/home/alice/”,相当于将“/home/alice/”整体看成虚拟主机原来所视为的根目录“/”,即如图3中实线箭头所示,通过这个新的根目录相当于在虚拟主机上建立了与alice虚拟主机对应的一个容器(alice’s container),该容器与其他虚拟主机是相互隔离的。此外,在虚拟主机的根目录之下,还可以建立“etc/、dev/、lib/、htdocs/”等目录,这些目录可以按照性质划分为两类:一类是在虚拟机内部使用且不依赖于虚拟主机之外的其他目录的目录,在本例中即专属于“alice”虚拟主机的目录;一类是在虚拟主机内部使用但使用过程必须依赖于虚拟主机之外的其他目录的目录。对于第二类目录,必须建立与当前虚拟主机以外的目录与虚拟主机相应目录之间的映射关系,这样,在需要利用到虚拟主机下的这些目录时,便可通过映射关系“链接”到当前虚拟主机以外的其他目录。虚拟主机上的公共资源利用目录即属于第二类目录。虚拟主机上的公共资源利用目录在使用过程中需要借助于网络服务器提供的公共资源共享目录,为此需要建立当前虚拟主机的公共资源利用目录与网络服务器的公共资源共享目录之间的映射关系,即如图3中的虚箭头所示。
本申请实施例提供的虚拟主机隔离方法,使虚拟主机建立(或拥有)属于虚拟主机自身的目录体系,在虚拟主机内建立(或拥有)用于运行进程的容器,与现有技术相比,通过该方式使利用网络服务器资源和/或虚拟主机资源的进程的根目录为虚拟主机的根目录,且运行在容器内,具有较大的独立性,不会和其他虚拟主机的进程发生相互干扰,从而确保了虚拟主机之间的安全隔离。
在上述实施例中,通过对虚拟主机根目录的变化以及公共资源利用目录的建立,形成了与虚拟主机对应的容器(该容器从虚拟主机的用户的维度进行创建,把不同虚拟主机的进程和资源分配在不同的容器内),使不同虚拟主机之间通过容器实现了隔离。在实际应用过程中,还可以通过进程命名空间(PIDNamespace)进行更深层的隔离(比如,进程级别的隔离)。具体地,可以使在虚拟主机容器内运行的全部进程具有统一(相同)的进程命名空间,但在该命名空间内每个进程具有不同的进程ID(进程标识),可以通过进程ID来实现检索,而在虚拟主机与虚拟主机之间进程命名空间则各不相同,这样,不同虚拟主机内运行的进程便可以相互隔离,从而不会出现一个虚拟主机的进程可以杀掉、调试另外一个虚拟主机内的进程。需要注意的是,虽然在不同容器内的进程命名体系不同,但并不意味着不同容器的进程在功能、结构、作用等方面一定存在差异,也就是说,可能存在这样一种情形,一个进程可以加入多个容器,从而具有多个独立的PID Namespace。
与虚拟主机的目录结构体系相对应的,容器的进程命令体系也可能形成一个命名空间树,不同虚拟主机容器内的进程可以位于PID Namespace树中同一级的不同的PID Namespace中,而网络服务器的进程命名体系对应地可以是所有虚拟主机的PID Namespace的父Namespace,这样网络服务器可以看见所有虚拟主机下容器内的进程,但某个虚拟主机则无法看到别的虚拟主机或网络服务器上的进程。
在上述这种虚拟主机的隔离方法之下,形成了与虚拟主机对应的容器,该容器内可以用于运行各种利用网络服务器和/或虚拟主机资源的进程。要使进程在虚拟主机的容器内运行可以通过多种方式实现,具体采用哪种方式取决于进程自身的情况。比如,如果某个进程先前(或者现有技术中)是在容器外(或者没有容器的情形下)运行的,则可以将该进程放入到容器内运行,具体地,将待在虚拟主机内运行的进程的原始根目录修改为虚拟主机的根目录,以及将待在虚拟主机内运行的进程的进程标识修改为按照虚拟主机的进程命名空间命名的进程标识。通过对进程的原始根目录和进程标识进行修改,实现了该进程对容器的适应,从而达到了将进程放入虚拟主机容器内运行的目的。
还比如,在某些情况下,虚拟主机的容器内具有容器管理器进程,该容器管理器进程的根目录为虚拟主机的根目录,容器管理器进程也按照虚拟主机的进程命名空间命名进程标识(这些工作可以在容器管理器进程创建时进行完毕),这时,要使利用网络服务器和/或虚拟主机资源的一个或多个进程在虚拟主机的容器内运行可以采取如下方式:继承所述容器管理器进程,以生成在虚拟主机的容器内运行的利用网络服务器和/或虚拟主机资源的一个或多个进程。通过对容器管理器进程进行继承,容器管理器进程的根目录以及进程命名空间也将继承在生成的新进程之中,从而实现了该进程对容器的适应,达到在虚拟主机容器内运行的目的。
通过上述虚拟主机的隔离方法的实施例的描述可以看出,实际上已经形成了一种独特的虚拟主机,该虚拟主机包括用于运行进程的容器,包括这种容器的虚拟主机至少具有如下两个特点,一是该容器的根目录为虚拟主机的根目录,所述虚拟主机的根目录为所述虚拟主机在网络服务器的根目录之下与所述虚拟主机对应的目录中的最上层目录,二是在所述虚拟主机的根目录下具有公共资源利用目录,所述公共资源利用目录与网络服务器的根目录之下的公共资源共享目录之间具有映射关系。在这种虚拟主机中,虚拟主机用户需要的系统资源在容器中,利用资源的进程也在虚拟主机容器内运行,不在当前虚拟主机容器中的资源对于当前虚拟主机而言,不可见,这一方面使得在当前虚拟主机容器内运行的进程仅能访问到该虚拟主机容器内的资源,而不能访问到其他虚拟主机中的资源,另一方面在其他虚拟主机中运行的进程也无法访问到该虚拟主机的进程,从而真正实现了不同虚拟主机之间的隔离。
在上述这种虚拟主机中,虚拟主机容器内可以运行一个或多个进程,这些进程可以为一种“平等”地位关系,也可以为“不平等”的地位关系。在“平等”的情形下,如果同时在容器内运行有多个进程,就容器内的各个进程而言,这些进程在相同进程命名空间内具有不同的进程标识,就当前容器与其他容器内的进程而言,各个进程具有不同的进程命名空间。在“不平等”的情形下,可以设置一个容器管理器进程(CPM,Container Process Manager),由该进程来管理容器内的各个进程。比如,将CPM进程作为祖先进程,在容器内运行的其他进程都根据该进程产生,从中继承包括进程根目录和进程命名空间在内的属性(该过程可以成为“fork”过程),通过这种fork过程可以保证容器内运行的所有进程都在容器内。通过这种方式产生的多个进程之间地位不平台,CPM进程处于管理地位,其他进程为CPM进程的子进程。
上述内容详细描述了网络服务器上的不同虚拟主机之间的安全隔离方法以及由此形成的独特的虚拟主机。在上述这种虚拟主机上,可以实现对来自客户端的资源访问请求的处理。通常而言,在网络服务器上,存在两类不同性质的资源:一是静态资源,比如,HTML文件、CSS文件、JS文件、图片文件等,这些文件资源可以由网络服务器直接读取,并返回给资源访问请求的发起端(比如,客户端);二是动态资源(又称为脚本),这类资源需要由网络服务器上的脚本解释器进行解释运行,经过解释运行后产生的结果作为输出内容通过网络服务器返回给客户端。这两类资源的性质不同,给网络服务器带来的安全性程度存在差异。对于静态资源而言,由于不需要通过网络服务器上的某个程序(进程)进行解释运行,不进行诸如运算、加工、处理等工作,而是直接由网络服务器反馈给客户端,因此,相对比较安全,即使静态资源中已带有病毒、木马等危险程序,因网络服务器本身不对该资源进行执行操作,将不会对网络服务器造成安全威胁。但是,对于动态资源而言,则存在较大差别,其需要执行解释运行操作,在执行过程中可能导致系统的配置权限被改变、动态资源上携带的病毒程序被引发感染到网络服务器(的虚拟主机),如果对此不加以控制,将存在极大的安全风险。
为此,本申请还提供了一种资源访问请求处理方法的实施例,该处理方法应用于包括前述所述的虚拟主机的网络服务器。参见图4,该图示出了本申请的资源访问请求处理方法的一种实施例的流程图,该流程包括:
步骤S41:接收网络服务器转发的访问动态资源的资源访问请求,所述资源访问请求包括待访问的动态资源所在的虚拟主机的标识;
步骤S42:在虚拟主机的容器内处理所述访问动态资源的资源访问请求,将处理结果返回给所述网络服务器,以便网络服务器返回给发送所述资源访问请求的请求端。
在该实施例中,由于是将动态资源访问请求的处理安排在虚拟主机的容器内进行处理,而虚拟主机相互之间通过容器进行了隔离,这样便保证了虚拟主机的安全。在上述资源访问请求的处理实施例中主要是从网络服务器的某个虚拟主机的角度对其过程进行描述,实际上,整个处理流程还可以站在网络服务器的角度进行描述,从而形成又一个实施例(参见图5):
首先是网络服务器接收到来自客户端的资源访问请求,该资源访问请求中包括待访问的动态资源所在的虚拟主机的标识,然后,由网络服务器对该访问请求的类型进行判断,如果该资源访问请求是动态资源请求,则根据动态资源访问请求中的虚拟主机的标识信息转发到对应的虚拟主机上。该虚拟主机接收到该动态资源访问请求后,在容器内运行脚本解释器,利用该脚本解释器进行解释运行。然后将解释运行的结果反馈给网络服务器,由网络服务器将结果反馈给发送资源访问请求的客户端。
在前述资源访问请求实施例中,提到在虚拟主机的容器内处理访问动态资源的资源访问请求。在实际应用过程中,可能存在多种资源访问请求的处理方式,不同的处理方式与处理资源访问请求的进程有关。下面示例性地给出两种实施方式,本领域技术人员可以在此基础上得到其他的实施方式,这些实施方式均在本申请的保护范围之内。
示例性实施方式之一:改造现有脚本解释器的方式。动态资源访问请求需要脚本解释器的解释执行作用,才能获得相应的响应结果。参见图6(a),在这种方式中,现有的脚本解释器在虚拟主机中启动,但是,该脚本解释器并不当然在虚拟主机创建的容器内运行,为了将该脚本解释器放入虚拟主机的容器内运行,需要将脚本解释器的原始根目录修改为虚拟主机的根目录,以及将脚本解释器进程的进程标识修改为按照虚拟主机的进程命名空间命名的进程标识,从而使脚本解释器进程在虚拟主机的容器内运行,这样,便可以利用该改造后的脚本解释器进程处理动态资源访问请求。这种方式由于将脚本解释器放入到了虚拟主机的容器内,而容器具有较高的安全性,从而保证了动态资源访问的安全性。
示例性实施方式之二:生成新脚本解释器的方式。在上一种示例性实施方式中,通过改变脚本解释器的根目录和进程命名空间实现了动态资源访问请求的安全处理。但是,这种方式需要修改脚本解释器的源代码,侵入性较强,耦合性较高。而且,对于不同的动态资源访问请求,还需要维护多个脚本解释器版本。为了降低系统耦合度,本申请提供了另外一种方式,参见图6(b),该方式在虚拟主机的容器内具有容器管理器进程,该容器管理器进程的根目录为虚拟主机的根目录,容器管理器进程的进程标识按照虚拟主机的进程命名空间命名,这种情况下,在接收到网络服务器转发的访问动态资源的资源访问请求后,继承容器管理器进程,以生成一个脚本解释器(为了语言叙述上的方便,该新生成的脚本解释器可以称为第二脚本解释器,前述示例性方式中称为第一脚本解释器),从而通过该新的脚本解释器进行动态资源访问请求的处理。
在上述第二种示例性实施方式中提及存在一个CPM进程(容器管理器进程)。通常而言,该进程可以通过虚拟主机作为“桥梁”与网络服务器(网络服务器进程)实现通信,即网络服务器接收到客户端的资源访问请求后,由于该请求中具有待访问资源在哪个虚拟主机的标识(对于动态资源而言,如果访问的资源是静态资源,资源访问请求中为该资源所在位置的地址信息),从而可以将访问请求传递到虚拟主机上,再由虚拟主机将该请求交给该虚拟主机的容器管理器进程,进而启动容器管理器进程进行新脚本解释器的生成步骤,以及随后利用生成的脚本解释器对资源访问请求的处理步骤,从而实现动态资源的处理。
上述通过虚拟主机的桥梁作用实现了网络服务器与CPM进程之间的通信,但是,为了减少通信的中间环节以及增强安全性,在本申请的另一个实施例中,可以在网络服务器与CPM进程之间建立直接的通信关系,从而可以在网络服务器接收到资源访问请求后,如果该资源访问请求是对动态资源的访问请求,那么可以由网络服务器直接将需要脚本解释器运行器进行的工作委托给CPM进程。基于此,需要建立网络服务器与CPM之间的通信协议。在本申请中,可以按照如下方式进行建立:
CPM进程向网络服务器发送容器管理器进程的注册请求,该注册请求包括所述容器管理器进程的进程标识以及虚拟主机的标识;
网络服务器接收到注册请求后,建立所述容器管理器进程的进程标识与所述虚拟主机的标识之间的对应关系,比如,记录CPM进程的进程标识和虚拟主机的标识,然后向CPM进程发送注册成功的消息。
经过上述注册过程,如果网络服务器接收到资源访问请求后,经判断,该资源访问请求是动态资源访问请求,则根据所述对应关系直接将该请求转发给相应的CPM进程,CPM接收到该请求后,根据CPM进程创建脚本解释器进程,然后运行脚本,再将运行结果返回给网络服务器,在网络服务器收到CPM返回结果后,响应客户端的请求。上述资源访问请求的处理过程以及CPM进程的注册过程可以通过图7反映出来,其中:图7(a)为本申请的资源访问请求处理方法的再一个实施例的流程示意图,图7(b)为本申请的资源访问请求处理过程的信令交互图。在该图中,如果资源访问请求为对静态资源的访问,则可以如图所示,由网络服务器直接读取静态文件的内容,然后将其作为结果响应请求端。
上述内容详细叙述了本申请基于隔离的虚拟主机进行资源访问请求方法实施例,与此对应地,本申请还提供了资源访问请求处理的装置实施例。参见图8,该图示出了本申请的资源访问请求处理装置的结构框图。该处理装置应用于包括前述所述的虚拟主机的网络服务器,该装置包括访问请求接收单元U81和访问请求处理单元U82,其中:
访问请求接收单元U81,用于接收网络服务器转发的访问动态资源的资源访问请求,所述资源访问请求包括待访问的动态资源所在的虚拟主机的标识;
访问请求处理单元U82,用于在虚拟主机的容器内处理所述访问动态资源的资源访问请求,将处理结果返回给所述网络服务器,以便网络服务器返回给发送所述访问请求的请求端。
上述资源访问请求处理装置的工作过程是:访问请求接收单元U81接收网络服务器转发的访问动态资源的资源访问请求,然后,由访问请求处理单元U82在虚拟主机的容器内处理所述访问动态资源的资源访问请求,将处理结果返回给所述网络服务器,以便网络服务器将其返回给发送所述资源访问请求的请求端。该处理装置将对动态资源的访问请求在虚拟主机创建的容器内进行处理,而虚拟主机之间通过容器实现了隔离,从而改善或提高了资源访问请求处理过程的安全性能。
尽管上述装置实施例已能较好地实现本申请的发明目的,但是,基于各种实际应用需要,可以对上述装置实施例进行改进,从而进一步优化上述装置实施例的技术效果。对上述装置实施例的改进可以采取多种方式,比如,对于访问请求处理单元,可以包括第一脚本解释器进程创建子单元和第一访问请求处理子单元U82,其中:所述第一脚本解释器进程创建子单元,用于将第一脚本解释器的原始根目录修改为所述虚拟主机的根目录,以及将所述第一脚本解释器进程的进程标识修改为按照所述虚拟主机的进程命名空间命名的进程标识,以使第一脚本解释器进程在所述虚拟主机的容器内运行;所述第一访问请求处理子单元,用于通过在虚拟主机的容器内运行的第一脚本解释器进程处理所述访问动态资源的资源访问请求。这种方式将原有的脚本解释器进行了改造,从而适应了虚拟主机的容器,能够在容器内处理访问请求,保证了安全性。
除了上述这种对访问请求的处理外,在实际应用过程中,对于访问请求处理单元U82,在某些情况下,比如在虚拟主机的容器内具有容器管理器进程,所述容器管理器进程的根目录为虚拟主机的根目录、进程标识按照当前虚拟主机的进程命名空间命名进程标识的情况下,访问请求处理单元U82可以包括第二脚本解释器进程创建子单元U821和第二访问请求处理子单元U822,其中:
第二脚本解释器进程创建子单元U821,用于在接收到网络服务器转发的访问动态资源的资源访问请求后,继承所述容器管理器进程,以生成第二脚本解释器进程;
第二访问请求处理子单元U822,用于通过在虚拟主机的容器内运行的第二脚本解释器进程处理所述访问动态资源的资源访问请求。
上述这种访问请求处理单元的结构相对于对现有的脚本解释器具有较多好处,比如,不需要对脚本解释器的源代码本身进行修改,侵入性较弱、耦合性较低。在这种访问请求处理单元结构的情况下,上述装置实施例还可以包括注册单元,用于在接收到网络服务器转发的访问动态资源的资源访问请求之前,向网络服务器发送所述容器管理器进程的注册请求,所述注册请求包括所述容器管理器进程的进程标识以及虚拟主机的标识;所述访问请求接收单元U82,还具体用于接收网络服务器在建立所述容器管理器进程的进程标识与所述虚拟主机的标识之间的对应关系后发送的注册成功消息,以便在接收到所述注册成功消息后,接收网络服务器根据所述对应关系转发给所述容器管理器进程的访问动态资源的资源访问请求。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备、装置和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (18)

1.一种网络服务器的虚拟主机隔离方法,其特征在于,包括:
确定虚拟主机在网络服务器的根目录之下与所述虚拟主机对应的目录,将与所述虚拟主机对应的目录中的最上层目录确定为所述虚拟主机的根目录;
在所述虚拟主机的根目录下创建公共资源利用目录,建立所述公共资源利用目录与网络服务器根目录之下的公共资源共享目录之间的映射关系,以形成虚拟主机用于运行进程的容器,通过所述容器实现虚拟主机之间的隔离。
2.根据权利要求1所述的方法,其特征在于,所述将与所述虚拟主机对应的目录中的最上层目录确定为所述虚拟主机的根目录包括:
调用根目录改变函数将与所述虚拟主机对应的目录中的最上层目录修改为所述虚拟主机的根目录。
3.根据权利要求1所述的方法,其特征在于,所述建立所述公共资源利用目录与网络服务器的根目录之下的公共资源共享目录之间的映射关系包括:
调用目录挂载函数将网络服务器的根目录之下的公共资源共享目录以只读挂载的方式挂载到所述虚拟主机的公共资源利用目录。
4.根据权利要求1至3中任何一项所述的方法,其特征在于,所述方法还包括:使利用网络服务器和/或虚拟主机资源的一个或多个进程在虚拟主机的容器内运行,在一个虚拟主机的容器内运行的进程与其他虚拟主机的容器内运行的进程具有不同的进程命名空间,在虚拟主机的容器内运行的进程在相同进程命名空间内具有不同的进程标识。
5.根据权利要求4所述的方法,其特征在于,所述使利用网络服务器和/或虚拟主机资源的一个或多个进程在虚拟主机的容器内运行包括:
将待在虚拟主机内运行的进程的原始根目录修改为虚拟主机的根目录,以及将待在虚拟主机内运行的进程的进程标识修改为按照虚拟主机的进程命名空间命名的进程标识,以使进程在虚拟主机的容器内运行。
6.根据权利要求4所述的方法,其特征在于,虚拟主机的容器内具有容器管理器进程,所述容器管理器进程的根目录为虚拟主机的根目录,所述容器管理器进程按照虚拟主机的进程命名空间命名进程标识,所述使利用网络服务器和/或虚拟主机资源的一个或多个进程在虚拟主机的容器内运行包括:
继承所述容器管理器进程,以生成在虚拟主机的容器内运行的利用网络服务器和/或虚拟主机资源的一个或多个进程。
7.一种网络服务器的虚拟主机,其特征在于,所述虚拟主机包括用于运行进程的容器,所述容器的根目录为所述虚拟主机的根目录,所述虚拟主机的根目录为所述虚拟主机在网络服务器的根目录之下与所述虚拟主机对应的目录中的最上层目录,在所述虚拟主机的根目录下具有公共资源利用目录,所述公共资源利用目录与网络服务器的根目录之下的公共资源共享目录之间具有映射关系。
8.根据权利要求7所述的虚拟主机,其特征在于,在所述容器内能运行利用网络服务器和/或虚拟主机资源的一个或多个进程,在一个虚拟主机的容器内运行的进程与其他虚拟主机的容器内运行的进程具有不同的进程命名空间,在虚拟主机的容器内运行的进程在相同进程命名空间内具有不同的进程标识。
9.根据权利要求7或8所述的虚拟主机,其特征在于,所述容器内具有容器管理器进程,所述容器管理器进程的根目录为虚拟主机的根目录,所述容器管理器进程按照当前虚拟主机的进程命名空间命名进程标识。
10.一种资源访问请求处理方法,其特征在于,所述方法应用于包括权利要求7至9中任何一项所述虚拟主机的网络服务器,该方法包括:
接收网络服务器转发的访问动态资源的资源访问请求,所述资源访问请求包括待访问的动态资源所在的虚拟主机的标识;
在虚拟主机的容器内处理所述访问动态资源的资源访问请求,将处理结果返回给所述网络服务器,以便网络服务器返回给发送所述资源访问请求的请求端。
11.根据权利要求10所述的方法,其特征在于,所述在虚拟主机的容器内处理所述访问动态资源的资源访问请求包括:
将第一脚本解释器进程的原始根目录修改为所述虚拟主机的根目录,以及将所述第一脚本解释器进程的进程标识修改为按照所述虚拟主机的进程命名空间命名的进程标识,以使第一脚本解释器进程在所述虚拟主机的容器内运行;
通过在虚拟主机的容器内运行的第一脚本解释器进程处理所述访问动态资源的资源访问请求。
12.根据权利要求10所述的方法,其特征在于,所述虚拟主机的容器内具有容器管理器进程,所述容器管理器进程的根目录为虚拟主机的根目录,所述容器管理器进程按照虚拟主机的进程命名空间命名进程标识,则所述在虚拟主机的容器内处理所述访问动态资源的资源访问请求包括:
在接收到网络服务器转发的访问动态资源的资源访问请求后,继承所述容器管理器进程,以生成第二脚本解释器进程;
通过在虚拟主机的容器内运行的第二脚本解释器进程处理所述访问动态资源的资源访问请求。
13.根据权利要求12所述的方法,其特征在于,
在接收到网络服务器转发的访问动态资源的资源访问请求之前,向网络服务器发送所述容器管理器进程的注册请求,所述注册请求包括所述容器管理器进程的进程标识以及虚拟主机的标识;
接收网络服务器在建立所述容器管理器进程的进程标识与所述虚拟主机的标识之间的对应关系后发送的注册成功消息,以便在接收到所述注册成功消息后,接收网络服务器根据所述对应关系转发给所述容器管理器进程的访问动态资源的资源访问请求。
14.根据权利要求10至13中任何一项所述的方法,其特征在于,所述资源访问请求为访问静态资源的资源访问请求时,网络服务器读取所述静态资源,以便返回给发送所述资源访问请求的请求端。
15.一种资源访问请求处理装置,其特征在于,所述装置应用于包括权利要求7至9中任何一项所述虚拟主机的网络服务器,该装置包括访问请求接收单元和访问请求处理单元,其中:
所述访问请求接收单元,用于接收网络服务器转发的访问动态资源的资源访问请求,所述访问动态资源的资源访问请求包括待访问的动态资源所在的虚拟主机的标识;
所述访问请求处理单元,用于在虚拟主机的容器内处理所述访问动态资源的资源访问请求,将处理结果返回给所述网络服务器,以便网络服务器将其返回给发送所述资源访问请求的请求端。
16.根据权利要求15所述的装置,其特征在于,所述访问请求处理单元包括第一脚本解释器进程创建子单元和第一访问请求处理子单元,其中:
所述第一脚本解释器进程创建子单元,用于将第一脚本解释器的原始根目录修改为所述虚拟主机的根目录,以及将所述第一脚本解释器进程的进程标识修改为按照所述虚拟主机的进程命名空间命名的进程标识,以使第一脚本解释器进程在所述虚拟主机的容器内运行;
所述第一访问请求处理子单元,用于通过在虚拟主机的容器内运行的第一脚本解释器进程处理所述访问动态资源的资源访问请求。
17.根据权利要求15所述的装置,其特征在于,所述虚拟主机的容器内具有容器管理器进程,所述容器管理器进程的根目录为虚拟主机的根目录,所述容器管理器进程按照当前虚拟主机的进程命名空间命名进程标识,所述访问请求处理单元包括第二脚本解释器进程创建子单元和第二访问请求处理子单元,其中:
所述第二脚本解释器进程创建子单元,用于在接收到网络服务器转发的访问动态资源的资源访问请求后,继承所述容器管理器进程,以生成第二脚本解释器进程;
所述第二访问请求处理子单元,用于通过在虚拟主机的容器内运行的第二脚本解释器进程处理所述访问动态资源的资源访问请求。
18.根据权利要求17所述的装置,其特征在于,所述装置包括注册单元,用于在接收到网络服务器转发的访问动态资源的资源访问请求之前,向网络服务器发送所述容器管理器进程的注册请求,所述注册请求包括所述容器管理器进程的进程标识以及虚拟主机的标识;所述访问请求接收单元,还具体用于接收网络服务器在建立所述容器管理器进程的进程标识与所述虚拟主机的标识之间的对应关系后发送的注册成功消息,以便在接收到所述注册成功消息后,接收网络服务器根据所述对应关系转发给所述容器管理器进程的访问动态资源的资源访问请求。
CN201510226829.8A 2015-05-06 2015-05-06 一种虚拟主机及隔离方法、资源访问请求处理方法及装置 Active CN106209741B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201510226829.8A CN106209741B (zh) 2015-05-06 2015-05-06 一种虚拟主机及隔离方法、资源访问请求处理方法及装置
TW104142275A TWI701596B (zh) 2015-05-06 2015-12-16 一種虛擬主機及隔離方法、資源存取請求處理方法及裝置
US15/146,002 US11068586B2 (en) 2015-05-06 2016-05-04 Virtual host isolation
PCT/US2016/030812 WO2016179300A1 (en) 2015-05-06 2016-05-04 Virtual host isolation
EP16790027.3A EP3292468B1 (en) 2015-05-06 2016-05-04 Virtual host isolation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510226829.8A CN106209741B (zh) 2015-05-06 2015-05-06 一种虚拟主机及隔离方法、资源访问请求处理方法及装置

Publications (2)

Publication Number Publication Date
CN106209741A true CN106209741A (zh) 2016-12-07
CN106209741B CN106209741B (zh) 2020-01-03

Family

ID=57222908

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510226829.8A Active CN106209741B (zh) 2015-05-06 2015-05-06 一种虚拟主机及隔离方法、资源访问请求处理方法及装置

Country Status (4)

Country Link
US (1) US11068586B2 (zh)
EP (1) EP3292468B1 (zh)
CN (1) CN106209741B (zh)
TW (1) TWI701596B (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106603550A (zh) * 2016-12-28 2017-04-26 中国银联股份有限公司 一种网络隔离方法及装置
CN107229467A (zh) * 2017-05-10 2017-10-03 北京海杭通讯科技有限公司 一种基于android容器的device mapper隔离方法
CN107608768A (zh) * 2017-07-26 2018-01-19 广州亦云信息技术股份有限公司 基于命令行模式的资源访问方法、电子设备及存储介质
CN107800779A (zh) * 2017-09-30 2018-03-13 北京京东尚科信息技术有限公司 优化负载均衡的方法及系统
CN108334396A (zh) * 2017-01-19 2018-07-27 阿里巴巴集团控股有限公司 一种数据处理方法和装置、资源组的创建方法和装置
CN109753320A (zh) * 2019-01-03 2019-05-14 中国银行股份有限公司 一种应用参数的处理方法及装置
CN111274008A (zh) * 2020-01-08 2020-06-12 百度在线网络技术(北京)有限公司 进程控制方法、服务器和电子设备
CN112084003A (zh) * 2020-08-17 2020-12-15 北京字节跳动网络技术有限公司 一种隔离数据的方法、装置、介质和电子设备
CN112799740A (zh) * 2021-02-08 2021-05-14 联想(北京)有限公司 一种控制方法、装置及电子设备
CN113094737A (zh) * 2019-12-23 2021-07-09 斑马智行网络(香港)有限公司 信息处理方法、装置及设备
CN114064594A (zh) * 2021-11-22 2022-02-18 马上消费金融股份有限公司 数据处理方法和装置
CN115374444A (zh) * 2022-10-27 2022-11-22 北京安帝科技有限公司 基于虚拟主机行为分析的病毒检测方法和装置
CN116578968A (zh) * 2023-04-24 2023-08-11 国网冀北电力有限公司信息通信分公司 对电力控制系统中应用程序提供安全防护的方法及装置
CN111984510B (zh) * 2019-05-21 2024-05-17 阿里巴巴集团控股有限公司 调度系统的性能测试方法及装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102120567B1 (ko) 2015-06-22 2020-06-08 시스딕, 인크. 컨테이너들에서 고립된 애플리케이션들의 모니터링
US11586455B2 (en) * 2019-02-21 2023-02-21 Red Hat, Inc. Managing containers across multiple operating systems
CN112527461B (zh) * 2020-12-17 2024-01-09 中国人民解放军国防科技大学 一种面向飞腾平台的微虚拟机在线迁移方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110173251A1 (en) * 2009-12-14 2011-07-14 Citrix Systems, Inc. Systems and methods for service isolation
US20120239825A1 (en) * 2011-03-14 2012-09-20 Mash5 Technologies, Inc. Intercloud Application Virtualization
CN102707990A (zh) * 2012-05-14 2012-10-03 华为技术有限公司 基于容器的处理方法、装置和系统
CN103324535A (zh) * 2012-03-23 2013-09-25 百度在线网络技术(北京)有限公司 一种计算资源的分配方法和装置
US20140130038A1 (en) * 2010-04-26 2014-05-08 Vmware, Inc. Cloud platform architecture

Family Cites Families (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6044439A (en) 1997-10-27 2000-03-28 Acceleration Software International Corporation Heuristic method for preloading cache to enhance hit rate
US6976258B1 (en) 1999-11-30 2005-12-13 Ensim Corporation Providing quality of service guarantees to virtual hosts
US6633954B1 (en) 2000-03-31 2003-10-14 Emc Corporation Method for enhancing host application performance with a DASD using task priorities
US7062642B1 (en) 2000-05-20 2006-06-13 Ciena Corporation Policy based provisioning of network device resources
US20060036941A1 (en) 2001-01-09 2006-02-16 Tim Neil System and method for developing an application for extending access to local software of a wireless device
US6829704B2 (en) 2001-04-13 2004-12-07 General Electric Company Method and system to automatically activate software options upon initialization of a device
US7047297B2 (en) 2001-07-17 2006-05-16 Mcafee, Inc. Hierarchically organizing network data collected from full time recording machines and efficiently filtering the same
US6968398B2 (en) 2001-08-15 2005-11-22 International Business Machines Corporation Method of virtualizing I/O resources in a computer system
US20050052992A1 (en) 2003-08-01 2005-03-10 Cloonan Thomas J. Method and system for dynamically managing cable data bandwidth based on channel congestion state and subscriber usage profile
US7457870B1 (en) 2004-02-27 2008-11-25 Packeteer, Inc. Methods, apparatuses and systems facilitating classification of web services network traffic
WO2005093576A1 (en) 2004-03-28 2005-10-06 Robert Iakobashvili Visualization of packet network performance, analysis and optimization for design
US7590830B2 (en) 2004-05-28 2009-09-15 Sun Microsystems, Inc. Method and structure for concurrent branch prediction in a processor
US20060143617A1 (en) 2004-12-29 2006-06-29 Knauerhase Robert C Method, apparatus and system for dynamic allocation of virtual platform resources
US8195443B2 (en) 2005-02-18 2012-06-05 Opnet Technologies, Inc. Application level interface to network analysis tools
US7617314B1 (en) 2005-05-20 2009-11-10 Network General Technology HyperLock technique for high-speed network data monitoring
US20060288015A1 (en) 2005-06-15 2006-12-21 Schirripa Steven R Electronic content classification
US7639613B1 (en) 2005-06-24 2009-12-29 Packeteer, Inc. Adaptive, flow-based network traffic measurement and monitoring system
US8121043B2 (en) 2005-08-19 2012-02-21 Cisco Technology, Inc. Approach for managing the consumption of resources using adaptive random sampling
US8244745B2 (en) 2005-12-29 2012-08-14 Nextlabs, Inc. Analyzing usage information of an information management system
US20070276989A1 (en) 2006-05-29 2007-11-29 Sandisk Il Ltd. Predictive data-loader
JP4240062B2 (ja) 2006-05-31 2009-03-18 日本電気株式会社 計算機システムおよび性能計測方法ならびに管理サーバ装置
US8782047B2 (en) 2009-10-30 2014-07-15 Hitachi Data Systems Corporation Fixed content storage within a partitioned content platform using namespaces
JP2008217216A (ja) 2007-03-01 2008-09-18 Hitachi Ltd 負荷分散方法及び計算機システム
CN101272530A (zh) 2007-03-19 2008-09-24 华为技术有限公司 业务触发方法及系统
US7752360B2 (en) 2007-05-16 2010-07-06 Nuova Systems, Inc. Method and system to map virtual PCIe I/O devices and resources to a standard I/O bus
CN101425021A (zh) * 2007-10-31 2009-05-06 卢玉英 基于虚拟机技术的个人计算机可迁移应用模式
US8141094B2 (en) 2007-12-03 2012-03-20 International Business Machines Corporation Distribution of resources for I/O virtualized (IOV) adapters and management of the adapters through an IOV management partition via user selection of compatible virtual functions
US8849971B2 (en) 2008-05-28 2014-09-30 Red Hat, Inc. Load balancing in cloud-based networks
US9208003B2 (en) 2008-06-09 2015-12-08 International Business Machines Corporation Hypervisor to I/O stack conduit in virtual real memory
JP5427011B2 (ja) 2009-12-17 2014-02-26 株式会社日立製作所 仮想ハードディスクの管理サーバおよび管理方法、管理プログラム
US8452835B2 (en) 2009-12-23 2013-05-28 Citrix Systems, Inc. Systems and methods for object rate limiting in multi-core system
US8874744B2 (en) 2010-02-03 2014-10-28 Vmware, Inc. System and method for automatically optimizing capacity between server clusters
US8719804B2 (en) 2010-05-05 2014-05-06 Microsoft Corporation Managing runtime execution of applications on cloud computing systems
US8938774B2 (en) 2010-05-28 2015-01-20 Dell Products, Lp System and method for I/O port assignment and security policy application in a client hosted virtualization system
US8391886B1 (en) 2010-07-14 2013-03-05 Cellco Partnership Systems and methods for providing mobile handset position to software applications
US9936333B2 (en) 2010-08-10 2018-04-03 Microsoft Technology Licensing, Llc Location and contextual-based mobile application promotion and delivery
AU2011308518B2 (en) 2010-09-30 2014-12-04 Commvault Systems, Inc. Efficient data management improvements, such as docking limited-feature data management modules to a full-featured data management system
CN108429800B (zh) 2010-11-22 2020-04-24 杭州硕文软件有限公司 一种移动设备
US20130283273A1 (en) 2011-01-05 2013-10-24 Hirohisa Miyazaki Service reservation management method, virtual machine system and storage medium
US8904136B2 (en) 2011-03-15 2014-12-02 Symantec Corporation Optimized shrinking of virtual disks
US20120324572A1 (en) 2011-06-16 2012-12-20 Telefonaktiebolaget L M Ericsson (Publ) Systems and methods that perform application request throttling in a distributed computing environment
US8997171B2 (en) 2011-08-19 2015-03-31 Microsoft Technology Licensing, Llc Policy based application suspension and termination
US9152405B2 (en) 2011-08-22 2015-10-06 International Business Machines Corporation Rapid provisioning of virtual machines based on multi-dimensional user request patterns in a cloud
CN103036930B (zh) 2011-09-30 2015-06-03 国际商业机器公司 用于管理存储设备的方法和设备
US8893261B2 (en) * 2011-11-22 2014-11-18 Vmware, Inc. Method and system for VPN isolation using network namespaces
WO2013079113A1 (en) 2011-12-01 2013-06-06 Fundacio Privada Barcelona Digital Centre Tecnologic Secure cloud browsing client-server system and method of secure remote browsing using the same
CN102567075B (zh) * 2011-12-05 2015-01-21 中标软件有限公司 一种云计算环境中虚拟机上下文设置方法
CN103186337A (zh) 2011-12-31 2013-07-03 三星电子(中国)研发中心 一种对智能终端进行控制的方法及系统
US20150120914A1 (en) 2012-06-13 2015-04-30 Hitachi, Ltd. Service monitoring system and service monitoring method
US9092341B2 (en) 2012-07-10 2015-07-28 International Business Machines Corporation Methods of cache preloading on a partition or a context switch
US9075638B2 (en) * 2012-08-14 2015-07-07 Atlassian Corporation Pty Ltd. Efficient hosting of virtualized containers using read-only operating systems
CN111614980B (zh) 2012-08-14 2022-04-12 俄亥俄州立创新基金会 用于通过移动设备来优化网络带宽的使用的系统和方法
US9451403B2 (en) 2012-08-30 2016-09-20 Ebay Inc. Systems and method for configuring mobile device applications based on location
US20140177497A1 (en) 2012-12-20 2014-06-26 Seven Networks, Inc. Management of mobile device radio state promotion and demotion
CN103118327A (zh) 2013-01-25 2013-05-22 无锡万事通科技有限公司 基于WiFi的信息传递系统及方法
US20140223427A1 (en) 2013-02-04 2014-08-07 Thomas C. Bootland System, Method and Apparatus for Determining Virtual Machine Performance
CN104111800B (zh) 2013-04-18 2018-02-23 阿里巴巴集团控股有限公司 一种虚拟磁盘的io口调度方法及其调度装置
CN103369508B (zh) 2013-06-25 2016-12-28 华为技术有限公司 数据加载方法和终端设备
CN103440113B (zh) 2013-09-16 2016-09-14 北京搜狐新媒体信息技术有限公司 一种磁盘io资源分配方法和装置
US10193963B2 (en) * 2013-10-24 2019-01-29 Vmware, Inc. Container virtual machines for hadoop
EA201301283A1 (ru) * 2013-11-26 2015-05-29 Общество С Ограниченной Ответственностью "Параллелз" Способ целевой виртуализации ресурсов в контейнере
US9262192B2 (en) 2013-12-16 2016-02-16 Vmware, Inc. Virtual machine data store queue allocation
US9400643B2 (en) 2014-03-03 2016-07-26 Google Inc. Methods and systems for updating components on a computing device
WO2015136624A1 (ja) 2014-03-11 2015-09-17 株式会社日立製作所 アプリケーション性能監視方法および装置
CN103870341A (zh) 2014-03-12 2014-06-18 汉柏科技有限公司 一种调整虚拟机资源的方法和系统
US9690685B2 (en) 2014-05-30 2017-06-27 Apple Inc. Performance management based on resource consumption
WO2016009285A1 (en) 2014-07-16 2016-01-21 Tensera Networks Ltd. Efficient content delivery over wireless networks using guaranteed prefetching at selected times-of-day
US9336040B2 (en) 2014-09-15 2016-05-10 Intel Corporation Techniques for remapping sessions for a multi-threaded application
US9256467B1 (en) * 2014-11-11 2016-02-09 Amazon Technologies, Inc. System for managing and scheduling containers
US9612758B1 (en) 2015-03-10 2017-04-04 EMC IP Holding Company LLC Performing a pre-warm-up procedure via intelligently forecasting as to when a host computer will access certain host data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110173251A1 (en) * 2009-12-14 2011-07-14 Citrix Systems, Inc. Systems and methods for service isolation
US20140130038A1 (en) * 2010-04-26 2014-05-08 Vmware, Inc. Cloud platform architecture
US20120239825A1 (en) * 2011-03-14 2012-09-20 Mash5 Technologies, Inc. Intercloud Application Virtualization
CN103324535A (zh) * 2012-03-23 2013-09-25 百度在线网络技术(北京)有限公司 一种计算资源的分配方法和装置
CN102707990A (zh) * 2012-05-14 2012-10-03 华为技术有限公司 基于容器的处理方法、装置和系统

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106603550B (zh) * 2016-12-28 2019-08-13 中国银联股份有限公司 一种网络隔离方法及装置
CN106603550A (zh) * 2016-12-28 2017-04-26 中国银联股份有限公司 一种网络隔离方法及装置
CN108334396B (zh) * 2017-01-19 2022-12-30 阿里巴巴集团控股有限公司 一种数据处理方法和装置、资源组的创建方法和装置
CN108334396A (zh) * 2017-01-19 2018-07-27 阿里巴巴集团控股有限公司 一种数据处理方法和装置、资源组的创建方法和装置
CN107229467A (zh) * 2017-05-10 2017-10-03 北京海杭通讯科技有限公司 一种基于android容器的device mapper隔离方法
CN107608768B (zh) * 2017-07-26 2021-03-23 广州亦云信息技术股份有限公司 基于命令行模式的资源访问方法、电子设备及存储介质
CN107608768A (zh) * 2017-07-26 2018-01-19 广州亦云信息技术股份有限公司 基于命令行模式的资源访问方法、电子设备及存储介质
CN107800779A (zh) * 2017-09-30 2018-03-13 北京京东尚科信息技术有限公司 优化负载均衡的方法及系统
CN109753320A (zh) * 2019-01-03 2019-05-14 中国银行股份有限公司 一种应用参数的处理方法及装置
CN109753320B (zh) * 2019-01-03 2022-02-22 中国银行股份有限公司 一种应用参数的处理方法及装置
CN111984510B (zh) * 2019-05-21 2024-05-17 阿里巴巴集团控股有限公司 调度系统的性能测试方法及装置
CN113094737A (zh) * 2019-12-23 2021-07-09 斑马智行网络(香港)有限公司 信息处理方法、装置及设备
CN111274008A (zh) * 2020-01-08 2020-06-12 百度在线网络技术(北京)有限公司 进程控制方法、服务器和电子设备
CN111274008B (zh) * 2020-01-08 2023-07-18 百度在线网络技术(北京)有限公司 进程控制方法、服务器和电子设备
CN112084003A (zh) * 2020-08-17 2020-12-15 北京字节跳动网络技术有限公司 一种隔离数据的方法、装置、介质和电子设备
CN112084003B (zh) * 2020-08-17 2024-05-24 北京火山引擎科技有限公司 一种隔离数据的方法、装置、介质和电子设备
CN112799740A (zh) * 2021-02-08 2021-05-14 联想(北京)有限公司 一种控制方法、装置及电子设备
CN112799740B (zh) * 2021-02-08 2022-07-26 联想(北京)有限公司 一种控制方法、装置及电子设备
CN114064594B (zh) * 2021-11-22 2023-09-22 马上消费金融股份有限公司 数据处理方法和装置
CN114064594A (zh) * 2021-11-22 2022-02-18 马上消费金融股份有限公司 数据处理方法和装置
CN115374444A (zh) * 2022-10-27 2022-11-22 北京安帝科技有限公司 基于虚拟主机行为分析的病毒检测方法和装置
CN116578968A (zh) * 2023-04-24 2023-08-11 国网冀北电力有限公司信息通信分公司 对电力控制系统中应用程序提供安全防护的方法及装置

Also Published As

Publication number Publication date
EP3292468A1 (en) 2018-03-14
TWI701596B (zh) 2020-08-11
EP3292468A4 (en) 2018-10-31
EP3292468B1 (en) 2020-11-25
TW201643713A (zh) 2016-12-16
US11068586B2 (en) 2021-07-20
US20160330073A1 (en) 2016-11-10
CN106209741B (zh) 2020-01-03

Similar Documents

Publication Publication Date Title
CN106209741A (zh) 一种虚拟主机及隔离方法、资源访问请求处理方法及装置
US11206253B2 (en) Domain pass-through authentication in a hybrid cloud environment
US10270781B2 (en) Techniques for data security in a multi-tenant environment
US9003006B2 (en) Intercloud application virtualization
US11050607B2 (en) Proxy with a function as a service (FAAS) support
US8938775B1 (en) Dynamic data loss prevention in a multi-tenant environment
CN101657804B (zh) 可扩展和可编程多承租人服务体系结构
US20170052807A1 (en) Methods, apparatuses, and computer program products for deploying and managing software containers
US20170351536A1 (en) Provide hypervisor manager native api call from api gateway to hypervisor manager
JP2019528005A (ja) クラウドコンピューティングシステムにおいて仮想マシンが物理サーバにアクセスするための方法、装置、およびシステム
CN113711561A (zh) 基于意图的治理服务
JP2009009566A (ja) アクセス制御システムおよびアクセス制御方法
CN105765901B (zh) 智能防火墙访问规则
US20190098107A1 (en) Geographic location based user computing asset provisioning in distributed computing systems
US11151551B2 (en) Systems and methods related to executing transactions in a hybrid cloud environment
US10785056B1 (en) Sharing a subnet of a logically isolated network between client accounts of a provider network
CN114039751B (zh) 一种网络动态感知装置、系统和方法
US10257262B2 (en) Mobile itinerant software agent carrying itinerary and data within
CN115185637A (zh) PaaS组件管理端和虚拟机代理的通信方法及装置
CN114070637A (zh) 基于属性标签的访问控制方法、系统、电子设备及存储介质
US11297065B2 (en) Technology for computing resource liaison
US9038169B2 (en) Method and system for managing and controlling direct access of an administrator to a computer system
CN113742768A (zh) 一种在线应用的隐私保护方法、装置与系统
US20180210856A1 (en) Enabling session level restrictions for devices having disjoint stacks
CN113535429A (zh) 数据处理方法、装置、设备、介质及程序产品

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230525

Address after: Room 1-2-A06, Yungu Park, No. 1008 Dengcai Street, Sandun Town, Xihu District, Hangzhou City, Zhejiang Province

Patentee after: Aliyun Computing Co.,Ltd.

Address before: Box 847, four, Grand Cayman capital, Cayman Islands, UK

Patentee before: ALIBABA GROUP HOLDING Ltd.