CN109992956A - 容器的安全策略的处理方法和相关装置 - Google Patents

容器的安全策略的处理方法和相关装置 Download PDF

Info

Publication number
CN109992956A
CN109992956A CN201711472539.7A CN201711472539A CN109992956A CN 109992956 A CN109992956 A CN 109992956A CN 201711472539 A CN201711472539 A CN 201711472539A CN 109992956 A CN109992956 A CN 109992956A
Authority
CN
China
Prior art keywords
container
security strategy
mirror image
computer
index information
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.)
Pending
Application number
CN201711472539.7A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201711472539.7A priority Critical patent/CN109992956A/zh
Priority to PCT/CN2018/123473 priority patent/WO2019128984A1/zh
Priority to EP18895559.5A priority patent/EP3709199A4/en
Publication of CN109992956A publication Critical patent/CN109992956A/zh
Priority to US16/909,596 priority patent/US20200320189A1/en
Pending legal-status Critical Current

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
    • 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/54Monitoring 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 adding security routines or objects to programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供容器的安全策略的处理方法、处理装置和处理***。该处理方法包括:向容器仓库发布容器镜像,与容器镜像关联的安全策略和安全策略的索引信息;容器仓库存储容器镜像,并根据索引信息存储安全策略;从容器仓库获取容器镜像;根据容器镜像确定安全策略的索引信息;根据索引信息获取安全策略;根据容器镜像启动容器;根据安全策略运行容器。本申请提供的容器的安全策略的处理方法、处理装置和处理***,有助于提高容器运行的安全性。

Description

容器的安全策略的处理方法和相关装置
技术领域
本申请涉及容器领域,并且更具体地,涉及容器的安全策略的处理方法、处理***、计算机和计算机可读存储介质。
背景技术
容器与宿主机共享内核,因此,宿主机内核中的漏洞将威胁到宿主机上的所有容器进程,容器进程也可以通过共享内核去攻击宿主机和其他容器。
目前,加强容器安全的主要手段就是实施一定的安全策略,限制容器进程的访问资源范围和行为类型。
例如,docker容器技术中,由容器启动的请求方在启动容器时指定一些安全选项,然后由容器引擎实施这些安全选项组成的安全策略。又如,rkt容器技术中,也是通过一些选项临时形成容器的安全策略。
现有技术中,这些形成安全策略的安全选项通常都是在容器引擎中提前配置好的。当容器引擎运行容器时,若容器引擎中没配置有该容器的行为对应的安全选项时,就会使得容器的运行存在较高的安全隐患。
发明内容
本申请提供一种容器的安全策略的处理方法和相关装置,有助于提高容器运行的安全性。
第一方面,本申请提供了一种容器的安全策略的处理方法。在该方法中,将原始容器镜像与该原始容器镜像对应的安全策略关联,得到容器镜像,使得加载容器镜像时,可以强制加载该容器镜像对应的安全策略,从而可以根据该安全策略运行由该容器镜像启动的容器。
其中,原始容器镜像或者说容器镜像对应的安全策略可以是根据原始容器镜像的运行行为确定的。
在一种实现方式中,第一计算机机将安全策略内嵌到原始容器镜像的根文件***中,得到容器镜像;第一计算机将该容器镜像发布到容器仓库;第二计算机获取容器镜像,该容器镜像的根文件***中包括安全策略;第二计算机根据容器镜像启动容器;第二计算机根据安全策略运行容器。
该实现方式中,由于容器镜像的根文件***中包括安全策略,也就是说,容器镜像与安全策略之间已经建立有固定的关联关系,使得在容器启动时可以强制实施对应的安全策略,从而可以保证容器的安全性和容器进程行为的一致性。
此外,安全策略包含于根文件***中,与安全策略包含于容器镜像的元数据中相比,不需要修改元数据的定义,从而可以保证容器镜像与标准之间的兼容性。
在一种实现方式中,第一计算机将安全策略的索引信息内嵌到原始容器镜像中,得到容器镜像;第一计算机将容器镜像、安全策略和安全策略的索引信息发布到容器仓库;第二计算机获取容器镜像;第二计算机根据容器镜像确定安全策略的索引信息;第二计算机根据索引信息获取安全策略;第二计算机根据容器镜像启动容器;第二计算机根据安全策略运行容器。
该处理方法中,将容器镜像对应的安全策略的索引信息内嵌到容器镜像中,可以使得容器镜像与安全策略之间建立有固定的关联关系,使得在容器启动时可以强制实施对应的安全策略,从而可以保证容器的安全性和容器进程行为的一致性。
在该种实现方式下的一种具体实施方式中,第一计算机将安全策略的索引信息内嵌到原始容器镜像的根文件***或元数据中,得到容器镜像;相应地,第二计算机从容器镜像的根文件***或元数据中获取安全策略的索引信息。
其中,安全策略的索引信息可以包括安全策略的全局唯一标识符。
在该种实现方式下的一种具体的实施中,第一计算机根据容器镜像的元数据和预设的规则,计算得到安全策略的索引信息;相应地,第二计算机根据容器镜像的元数据和预设的规则,计算得到安全策略的索引信息。
这种实现方式中,使得不用对容器镜像进行修改,就可以包含容器镜像与安全策略的固定关联关系。
第二方面,本申请提供了一种计算机。该计算机机具有实现上述方法中第一计算机行为或第二计算机行为的功能。所述功能可以通过硬件实现,也可通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个上述功能相对应的模块。
比如处理器、存储器、接收器和发送器,该存储器存储相关的指令,该接收器和发送器被配置为支持计算机与容器仓库进行通信,处理器执行该存储器中的指令,以完成上述方法中的各个处理步骤。
在一种可能的设计中,所述存储器与处理器耦合。
在一种可能的设计中,所述接收器与发送器耦合。
第三方面,本申请提供了一种容器的安全策略的处理***。该处理***包括第一计算机、第二计算机和容器仓库。第一计算机用于执行第一方面中由第一计算机执行的步骤或操作,第二计算机用于执行第一方面中由第二计算机执行的步骤或操作,容器仓库用于存储容器镜像,或者存储容器镜像和安全策略。
第四方面,本申请提供了一种计算机可读存储介质。该计算机可读存储介质中存储用于计算机执行的程序代码。该程序代码包括用于执行第一方面中任意一种可能的实现方式中的容器的安全策略的处理方法的指令。
第五方面,本申请提供了一种包含指令的计算机程序产品。当该计算机程序产品在计算机上运行时,使得计算机执行第一方面中任意一种可能的实现方式中的容器的安全策略的处理方法。
第六方面,本申请提供了一种***芯片,该***芯片包括输入输出接口、至少一个处理器、至少一个存储器和总线,该至少一个存储器用于存储指令,该至少一个处理器用于调用该至少一个存储器的指令,以进行第一方面中任意一种可能的实现方式中的容器的安全策略的处理方法的操作。
第七方面,本申请提供了一种数据结构。该数据结构用于存储容器镜像及其相关数据。其中,所述容器镜像通过第一方面中方式存储安全策略,或存储安全策略的索引信息。
附图说明
图1是应用本申请实施例的容器的安全策略的处理***的示意性架构图;
图2是容器与宿主机的关系示意图;
图3是本申请一个实施例的容器的安全策略的处理方法的示意性流程图;
图4是本申请另一个实施例的容器的安全策略的处理方法的示意性流程图;
图5是本申请另一个实施例的容器的安全策略的处理方法的示意性流程图;
图6是本申请一个实施例的计算机的示意性结构图;
图7是本申请另一个实施例的计算机的示意性结构图;
图8是本申请另一个实施例的计算机的示意性结构图;
图9是本申请另一个实施例的计算机的示意性结构图;
图10是本申请一个实施例的容器的安全策略的处理***的示意性结构图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
图1是应用本申请实施例的容器的安全策略的处理***的示意性架构图。图1所示的处理***中可以包括测试平台110、容器仓库120和运行平台130。
测试平台110和运行平台130可以分别包括一个或多个计算机。计算机也可以简称为主机。计算机的示例可以包括:服务器、工作站、个人电脑、手机、平板电脑、虚拟机等。
测试平台110和运行平台130中包括的计算机可以相同,也可以不相同。为了叙述方便,可以将测试平台110中的计算机机称为第一计算机,将运行平台130中的计算机称为第二计算机。
计算机上可以部署有计算机的操作***(operating system,OS)。例如,Linux,Unix,Windows系列操作***、Mach OS、Android、iOS等。
在计算机的OS中,可以将一个或一组进程隔离出来组成一个运行环境。该运行环境可以被OS作为一个整体进行调度和资源管控,该运行环境可以称为容器。一个计算机中可以包括一个或多个容器。
如图2所示,计算机200是容器210的载体,是容器210运行的基础环境,容器210与计算机的OS 220可以共享计算机200上的资源,例如可以共享内核。因此,也可以将容器210所在的计算机200称为容器210的宿主机。
可以在容器中运行的、能够实现特定功能的程序代码或指令的集合即为镜像。镜像也可以称为容器镜像。
容器镜像可以包含文件***和元数据(metadata)。该文件***也可以称为根文件***或rootFS。该元数据可以包括控制数据和配置数据。
容器镜像在容器中运行时的实例可以称为容器进程。
计算机的OS中,还可以包括一个或一组进程,这些进程可以实现以下一种或多种功能:容器镜像的下载、本地存储、查询、装载、运行以及容器进程的生命周期管理,等等,这些进程可以称为容器引擎。
容器仓库120用于集中存储和管理容器镜像的实体。容器仓库也可以称为容器服务器。一般而言,在一个分布式平台中,容器仓库可以是一***立的服务器。可选地,在一些实现方式中,容器仓库也可以以软件数据库的形式集成在分布式平台的一个或多个计算机,或者一个或多个管理节点中。
测试平台110和运行平台130均可以与容器仓库120通信,例如,测试平台110可以将容器镜像发布到容器仓库120上;运行平台130可以从容器仓库上获取容器镜像或其他信息。
应理解,本申请实施例并不限于图1所示的***架构中。例如,应用本申请实施例的容器的安全策略的处理***中可以不包括测试平台110。
此外,图1中的设备或模块可以是硬件,也可以是从功能上划分的软件或者以上二者的结合。
下面以图1所示的处理***为例,结合图3至图6介绍本申请实施例的容器的安全策略的处理方法。
图3为本申请一个实施例的容器的安全策略的处理方法的示意性流程图。应理解,图3示出了该处理方法的步骤或操作,但这些步骤或操作仅是示例,本申请实施例还可以执行其他操作或者图3中的各个操作的变形。
S310,第一计算机将安全策略内嵌到原始容器镜像的根文件***中,得到容器镜像。
安全策略是指限制一个或一组进程的行为的规则集合。本申请的实施例中,安全策略具体可以指限制容器的行为的规则集合。
应理解,本申请的实施例中,原始容器镜像是指没有包含或者没有关联安全策略的容器镜像。
将安全策略内嵌到原始容器镜像的根文件***中,使得安全策略与原始容器镜像之间具有固定的关联关系,从而使得原始容器镜像对应的容器启动时,可以强制实施与该容器对应的安全策略,进而可以保证容器的安全性和容器进程行为的一致性。
这里所说的强制实施安全策略,可以理解为:该安全策略不受容器进程或用户选择的影响,而是为特定的原始容器镜像定义和统一实施安全策略。
换句话说,一个原始容器镜像,加载在任何计算机上后,其容器对应的安全策略都是统一的。
此外,将安全策略内嵌到原始容器镜像的根文件***中,与安全策略包含于容器镜像的元数据中相比,不需要修改元数据的定义,从而可以保证容器镜像与标准之间的兼容性。
可选地,该安全策略可以是第一计算机上的容器引擎在容器中运行原始容器镜像后,根据该容器的行为生成的安全策略。为了叙述方便,将第一计算机上的容器引擎称为测试容器引擎。
具体而言,测试容器引擎在容器中加载容器镜像的根文件***,并启动容器;然后,第一计算机上的OS收集容器的行为。因为整个测试平台和原始容器镜像被认为是安全的,因此,第一计算机上的OS收集的容器的行为可以认为是容器的正常行为,所以,该行为可以作为该原始容器镜像加载在其他计算机(例如运行平台130的计算机)上后,对应的容器运行时的行为的参考准则。
也就是说,根据第一计算机上的OS收集的容器的行为可以生成该原始容器镜像的安全策略。或者可以说,根据第一计算机上的OS收集的容器的行为可以生成该原始容器镜像对应的容器的安全策略。
第一计算机将安全策略内嵌到原始容器镜像的根文件***中,可以通过以下方式实现:第一计算机确定用于记录安全策略的文件的路径,并将安全策略写入该路径下的文件。该文件中可以只记录安全策略。
S320,第一计算机将该容器镜像发布到容器仓库。
应理解,这里所说的发布可以是从第一计算机直接发布到容器仓库,也可以是通过其他设备发布到容器仓库。
相应地,容器仓库接收第一计算机发布的容器镜像。
第一计算机向容器仓库发布容器镜像时,可以向容器仓库发送该容器镜像的标识。容器仓库接收到容器镜像后,存储容器镜像,并记录容器镜像的标识与容器镜像在容器仓库上的存储地址的映射关系。
容器仓库还可以管理该容器镜像。容器仓库管理容器镜像,具体可以包括查询、更新或删除容器镜像等操作。
S330,第二计算机从容器仓库获取容器镜像、该容器镜像的根文件***中包括安全策略。
例如,第二计算机可以向容器仓库发送容器镜像(为了描述方面,将该容器镜像称为目标容器镜像)的标识。容器仓库根据该标识,以及容器镜像标识与容器镜像存储地址的映射关系,确定目标容器镜像的存储地址,然后容器仓库读取该存储地址中存储的容器镜像,并发给第二计算机。
S340,第二计算机根据容器镜像启动容器。
第二计算机根据容器镜像启动容器,可以包括:第二计算机分析容器镜像中的元数据的标识和/或各种配置信息,根据这些配置信息配置容器的各种属性,加载容器镜像中的根文件***,等等。
该步骤具体可以是容器引擎执行的。
容器引擎中可以记录有用于记录安全策略的文件的路径,因此,容器引擎可以读取该路径下的文件中的安全策略。
S350,第二计算机根据安全策略运行容器。
例如,第二计算机在容器的运行过程中,将容器的每个行为与安全策略中记录的行为作比较。如果容器的行为与安全策略中记录的行为不符,则第二计算机上的OS可以拒绝容器的行为对应的***服务请求,从而可以保证容器的安全性。
该处理方法中,由于容器镜像的根文件***中包括安全策略,也就是说,容器镜像与安全策略之间已经建立有固定的关联关系,且该安全策略是根据容器镜像的行为生成的,使得在容器启动时可以强制实施对应的安全策略,从而可以保证容器的安全性和容器进程行为的一致性。
图4为本申请另一个实施例的容器的安全策略的处理方法的示意性流程图。应理解,图4示出了该处理方法的步骤或操作,但这些步骤或操作仅是示例,本申请实施例还可以执行其他操作或者图4中的各个操作的变形。
S410,第一计算机发布容器镜像、与容器镜像关联的安全策略和安全策略的索引信息。
安全策略是指限制一个或一组进程的行为的规则集合。本申请的实施例中,安全策略具体可以指限制容器的行为的规则集合。
应理解,本申请的实施例中,原始容器镜像是指没有包含或者没有关联安全策略的容器镜像。
安全策略的索引信息可以指用于标识该安全策略的唯一标识。
在一种实现方式中,在执行S410之前,第一计算机可以先确定安全策略的索引信息,然后先将安全策略的索引信息内嵌到原始容器镜像中,得到容器镜像,并向容器仓库发送容器镜像、容器镜像的标识、安全策略和安全策略的索引信息。
例如,第一计算机将安全策略的全局唯一标识符(globally unique Identifier,GUID)作为安全策略的索引信息,内嵌到原始容器镜像中。
在另一种实现方式中,在执行S410之前,第一计算机可以根据原始容器镜像的元数据和预先配置好的规则计算得到安全策略的索引信息,并向容器仓库发送原始容器镜像(也可以称为容器镜像)、原始容器镜像的标识、安全策略和安全策略的索引信息。
例如,可以计算整个原始容器镜像的某种摘要(例如SHA-256),得到可以唯一标识这个原始容器镜像的信息。这个信息可以作为安全策略的索引信息。
又如,可以计算原始容器镜像中的manifest文件的某种摘要(例如SHA-256),得到可以用来唯一标识这个原始容器镜像的信息。这个信息可以作为安全策略的索引信息。这里的manifest文件不是根文件***的一部分,而是标准规定必须包含的、用于描述容器镜像的元数据的文件。
又如,原始容器镜像元数据中可以包含有容器配置和镜像文件***的摘要(hash)。这个摘要可以作为唯一标识这个原始容器镜像的信息。该信息可以作为安全策略的索引信息。
将容器镜像对应的安全策略的索引信息与容器镜像关联中,可以使得容器镜像与安全策略之间建立有固定的关联关系,使得在容器启动时可以强制实施对应的安全策略,从而可以保证容器的安全性和容器进程行为的一致性。
可选地,第一计算机将安全策略的索引信息内嵌到原始容器镜像中,可以包括:第一计算机将安全策略的索引信息内嵌到原始容器镜像的根文件***或元数据中。
其中,安全策略的获取方式可以参考S310中安全策略的获取方式,此处不再赘述。
将安全策略的索引信息内嵌到原始容器镜像的根文件***中,既可以把安全策略绑定到容器镜像,又可以在容器仓库端维护安全策略而不用重新发布镜像。
第一计算机将安全策略的索引信息内嵌到原始容器镜像的根文件***,可以通过如下方式实现:第一计算机确定用于记录索引信息的文件的路径,并将索引信息写入该路径下的文件中。
第一计算机将安全策略的索引信息内嵌到原始容器镜像的元数据,可以通过如下方式实现:第一计算机确定预先为该索引信息分配的关键字和元数据中预先指定的、可以存储该索引信息的配置文件,并将该索引信息写到该配置文件中该关键字对应的位置。
容器仓库从第一计算机接收容器镜像、容器镜像的标识、安全策略和安全策略的索引信息,存储容器镜像和安全策略后,可以生成容器镜像的标识和容器镜像的存储地址的映射关系,以及生成安全策略的索引信息和安全策略的存储地址的映射关系。
容器仓库还可以管理容器镜像和对应的安全策略。容器仓库管理容器镜像,具体可以包括查询、更新或删除容器镜像等操作。
S430,第二计算机从容器仓库获取容器镜像。
该步骤可以参考S330,此处不再赘述。
S440,第二计算机根据容器镜像从容器仓库获取安全策略。
在一种实现方式中,第二计算机从容器镜像中直接获取安全策略的索引信息。
例如,第二计算机可以从容器镜像的根文件***或元数据中直接获取到安全策略的索引信息。例如,安全策略的索引信息为安全策略的GUID时,可以从容器镜像的根文件***或元数据中获取到安全策略的GUID。
第二计算机从根文件***中获取索引信息时,可以根据预先指定的路径获取用于记录索引信息的文件,并从该文件中读取索引信息。
第二计算机从元数据中获取索引信息时,可以根据预先指定的关键字,从元数据中预先指定的配置文件中读取索引信息。
在一种实现方式中,第二计算机可以根据预先配置的规则和容器镜像中的元数据,计算得到安全策略的索引信息。该操作可以参考S410中的相关操作。
第二计算机获取到安全策略的索引信息后,可以向容器仓库发送该索引信息(为了描述方面,称为目标索引信息)。容器仓库可以根据目标索引信息,以及安全策略的索引信息与安全策略的存储地址的映射关系确定目标索引信息对应的目标存储地址,并向第二计算机返回目标存储地址中的安全策略。
S450,第二计算机根据容器镜像启动容器。
S450可以参考S340,此处不再赘述。
S460,第二计算机根据安全策略运行容器。
S460可以参考S350,此处不再赘述。
该处理方法中,根据容器镜像中的信息可以确定出与该容器进行具有关联关系的安全策略的索引信息,也就是说,容器镜像与安全策略之间已经建立有固定的关联关系,且该安全策略是根据容器镜像的行为确定的,使得在容器启动时可以强制实施对应的安全策略,从而可以保证容器的安全性和容器进程行为的一致性。
图5为本申请另一个实施例的容器的安全策略的处理方法的示意性流程图。应理解,图5示出了该处理方法的步骤或操作,但这些步骤或操作仅是示例,本申请实施例还可以执行其他操作或者图5中的各个操作的变形。
S510,第一计算机将安全策略内嵌到原始容器镜像的元数据中,得到容器镜像。
安全策略、原始容器镜像的相关定义可以参见S310中的相关内容,此处不再赘述。
第一计算机将安全策略内嵌到原始容器镜像的元数据中,可以通过以下方式实现:第一计算机根据预先为安全策略分配的关键字,将安全策略记录到元数据中预先指定的配置文件中。
S520,第一计算机将该容器镜像发布到容器仓库。
该步骤可以参考S320,此处不再赘述。
S530,第二计算机从容器仓库获取该容器镜像。
该步骤可以参考S330,此处不再赘述。
S540,第二计算机根据容器镜像启动容器。
该步骤可以参考S340,此处不再赘述。
S540与S340的不同之处在于,第二计算机获取安全策略的方式不同。在S540中,第二计算机可以根据预先为安全策略分配的关键字,从元数据中指定的配置文件中读取安全策略。
S550,第二计算机根据安全策略运行容器。
S550可以参考S350,此处不再赘述。
该处理方法中,由于容器镜像的元数据中包括安全策略,也就是说,容器镜像与安全策略之间已经建立有固定的关联关系,且该安全策略是根据容器镜像的行为确定的,使得在容器启动时可以强制实施对应的安全策略,从而可以保证容器的安全性和容器进程行为的一致性。
图6为本申请一个实施例的计算机600的示意性结构图。应理解,图6示出的计算机600仅是示例,本申请实施例的计算机还可包括其他模块或单元,或者包括与图6中的各个模块的功能相似的模块,或者并非要包括图6中的所有模块。
计算机600可以包括处理模块610和发布模块620。
计算机600可以用于执行图3所示的处理方法中由第一计算机实现的操作或步骤。例如,处理模块610可以用于执行S310,发布模块620可以用于执行S320。
或者,计算机600可以用于执行图4所示的处理方法中由第一计算机实现的操作或步骤。例如发布模块620可以用于执行S410。
或者,计算机600可以用于执行图5所示的处理方法中由第一计算机实现的操作或步骤。例如,处理模块610可以用于执行S510,发布模块620可以用于执行S520。
图7为本申请一个实施例的计算机700的示意性结构图。应理解,图7示出的计算机700仅是示例,本申请实施例的计算机还可包括其他模块或单元,或者包括与图7中的各个模块的功能相似的模块,或者并非要包括图7中的所有模块。
计算机700可以包括获取模块710和处理模块720.
计算机700可以用于执行图3所示的处理方法中由第二计算机实现的操作或步骤。具体地,获取模块710可以用于执行S330,处理模块720可以用于执行S340和S350。
或者,计算机700可以用于执行图4所示的处理方法中由第二计算机实现的操作或步骤。具体地,获取模块710可以用于执行S430和S440,处理模块720可以用于执行S450和S460。
或者,计算机700可以用于执行图5所示的处理方法中由第二计算机实现的操作或步骤。具体地,获取模块710可以用于执行S530,处理模块720可以用于执行S540和S550。
图8为本申请另一个实施例的计算机800的示意性结构图。应理解,图8示出的计算机800仅是示例,本申请实施例的计算机还可包括其他模块或单元,或者包括与图8中的各个模块的功能相似的模块,或者并非要包括图8中的所有模块。
计算机800可以包括处理器820和收发器830。可选地,计算机800还可以包括存储器810。存储器810可以集成在处理器820中。
存储器810用于存储处理器820执行的程序和相关数据。处理器820可以用于实现S610具有的功能。收发器830可以用于实现S620具有的功能。
图9为本申请另一个实施例的计算机900的示意性结构图。应理解,图9示出的计算机900仅是示例,本申请实施例的计算机还可包括其他模块或单元,或者包括与图9中的各个模块的功能相似的模块,或者并非要包括图9中的所有模块。
计算机900可以包括处理器920和收发器930。可选地,计算机900还可以包括存储器910。存储器910可以集成在处理器920中。
存储器910用于存储处理器920执行的程序和相关数据。处理器920可以用于实现S720具有的功能。收发器930可以用于实现S710具有的功能。
图10为本申请一个实施例的容器的安全策略的处理***1000的示意性结构图。应理解,图10示出的结构仅是示例,本申请实施例的处理***1000还可包括其他模块或单元,或者包括与图10中的各个模块的功能相似的模块,或者并非要包括图10中的所有模块。
处理***1000包括计算机1010、容器仓库1020和计算机1030。
计算机1010可以是计算机600或计算机800,计算机1020可以是计算机700或计算机900。
容器仓库1020可以用于从计算机1010接收容器镜像,生成容器镜像和存储地址的映射关系,从计算机1030接收容器镜像的标识,根据该标识和该映射关系读取容器镜像,向计算机1030发送容器镜像。
或者,容器仓库1020可以用于从计算机1010接收容器镜像、安全策略和安全策略的索引信息,生成容器镜像和存储地址的第一映射关系,生成安全策略的索引信息与存储地址的第二映射关系,从计算机1030接收容器镜像的标识,根据该标识和第一映射关系读取容器镜像,向计算机1030发送容器镜像,从计算机1030接收安全策略的索引信息,根据该索引信息和第二映射关系读取安全策略,向计算机1030发送安全策略。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (21)

1.一种容器的安全策略的处理方法,其特征在于,包括:
获取容器镜像;
根据所述容器镜像确定安全策略的索引信息;
根据所述索引信息获取所述安全策略;
根据所述容器镜像启动容器;
根据所述安全策略运行所述容器。
2.根据权利要求1所述的处理方法,其特征在于,所述容器镜像中包括所述索引信息。
3.根据权利要求2所述的处理方法,其特征在于,所述索引信息包括所述安全策略的全局唯一标识符。
4.根据权利要求1所述的处理方法,其特征在于,所述根据所述容器镜像确定安全策略的索引信息,包括:
根据所述容器镜像的元数据和预设的规则,计算得到所述索引信息。
5.一种容器的安全策略的处理方法,其特征在于,包括:
将安全策略的索引信息内嵌到原始容器镜像中,得到容器镜像;
将所述容器镜像、所述安全策略和所述索引信息发布到所述容器仓库。
6.根据权利要求5所述的处理方法,其特征在于,所述索引信息包括所述安全策略的全局唯一标识符。
7.一种容器的安全策略的处理方法,其特征在于,包括:
根据容器镜像的元数据和预设的规则计算安全策略的索引信息;
将所述容器镜像、所述安全策略和所述安全策略的索引信息发布到所述容器仓库。
8.一种容器的安全策略的处理方法,其特征在于,包括:
获取容器镜像,所述容器镜像的根文件***中包括安全策略;
根据所述容器镜像启动容器;
根据所述安全策略运行所述容器。
9.一种容器的安全策略的处理方法,其特征在于,包括:
将安全策略内嵌到原始容器镜像的根文件***中,得到容器镜像;
将所述容器镜像发布到容器仓库。
10.一种计算机,其特征在于,包括:
获取模块,用于获取容器镜像;
处理模块,用于根据所述容器镜像确定安全策略的索引信息;
所述处理模块还用于根据所述索引信息获取所述安全策略;
所述处理模块还用于根据所述容器镜像启动容器;
所述处理模块还用于根据所述安全策略运行所述容器。
11.根据权利要求10所述的计算机,其特征在于,所述容器镜像中包括所述索引信息。
12.根据权利要求11所述的计算机,其特征在于,所述索引信息包括所述安全策略的全局唯一标识符。
13.根据权利要求10所述的计算机,其特征在于,所述处理模块具体用于:根据所述容器镜像的元数据和预设的规则,计算得到所述索引信息。
14.一种计算机,其特征在于,包括:
处理模块,用于将安全策略的索引信息内嵌到原始容器镜像中,得到容器镜像;
发布模块,用于将所述容器镜像、所述安全策略和所述索引信息发布到所述容器仓库。
15.根据权利要求14所述的计算机,其特征在于,所述索引信息包括所述安全策略的全局唯一标识符。
16.一种计算机,其特征在于,包括:
处理模块,用于根据容器镜像的元数据和预设的规则计算安全策略的索引信息;
发布模块,用于将所述容器镜像、所述安全策略和所述安全策略的索引信息发布到所述容器仓库。
17.一种计算机,其特征在于,包括:
获取模块,用于获取容器镜像,所述容器镜像的根文件***中包括安全策略;
处理模块,用于根据所述容器镜像启动容器;
所述处理模块还用于根据所述安全策略运行所述容器。
18.一种计算机,其特征在于,包括:
处理模块,用于将安全策略内嵌到原始容器镜像的根文件***中,得到容器镜像;
发布模块,用于将所述容器镜像发布到容器仓库。
19.一种容器的安全策略的处理***,其特征在于,包括权利要求10至13中任一项所述的计算机,权利要求14至16中任一项所述的计算机,以及容器仓库。
20.一种容器的安全策略的处理***,其特征在于,包括权利要求17所述的计算机,权利要求18所述的计算机,以及容器仓库。
21.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储用于计算机执行的程序代码,所述程序代码包括用于执行权利要求1至9中任一项所述的容器的安全策略的处理方法的指令。
CN201711472539.7A 2017-12-29 2017-12-29 容器的安全策略的处理方法和相关装置 Pending CN109992956A (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201711472539.7A CN109992956A (zh) 2017-12-29 2017-12-29 容器的安全策略的处理方法和相关装置
PCT/CN2018/123473 WO2019128984A1 (zh) 2017-12-29 2018-12-25 容器的安全策略的处理方法和相关装置
EP18895559.5A EP3709199A4 (en) 2017-12-29 2018-12-25 CONTAINER SECURITY POLICY MANAGEMENT PROCESS AND ASSOCIATED DEVICE
US16/909,596 US20200320189A1 (en) 2017-12-29 2020-06-23 Processing method for container security policy and related apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711472539.7A CN109992956A (zh) 2017-12-29 2017-12-29 容器的安全策略的处理方法和相关装置

Publications (1)

Publication Number Publication Date
CN109992956A true CN109992956A (zh) 2019-07-09

Family

ID=67066502

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711472539.7A Pending CN109992956A (zh) 2017-12-29 2017-12-29 容器的安全策略的处理方法和相关装置

Country Status (4)

Country Link
US (1) US20200320189A1 (zh)
EP (1) EP3709199A4 (zh)
CN (1) CN109992956A (zh)
WO (1) WO2019128984A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111709014A (zh) * 2020-05-27 2020-09-25 浪潮电子信息产业股份有限公司 一种应用隔离方法、***、设备及计算机可读存储介质
CN114117285A (zh) * 2022-01-27 2022-03-01 浙江口碑网络技术有限公司 基于h5页面的位置信息处理方法、装置及电子设备
CN114265663A (zh) * 2021-09-10 2022-04-01 云南电网有限责任公司信息中心 一种用于docker全生命周期的内生安全防护方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114172726B (zh) * 2021-12-07 2023-08-29 北京天融信网络安全技术有限公司 一种基于容器环境的访问控制方法及***
JP2023102641A (ja) * 2022-01-12 2023-07-25 株式会社日立製作所 計算機システム及びスケールアップ管理方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104601580A (zh) * 2015-01-20 2015-05-06 浪潮电子信息产业股份有限公司 一种基于强制访问控制的策略容器设计方法
CN105847045A (zh) * 2016-01-04 2016-08-10 中国电子科技网络信息安全有限公司 一种基于Docker容器的应用封装***及管理方法
CN106534147A (zh) * 2016-11-29 2017-03-22 北京元心科技有限公司 在多***中选择应用SELinux安全策略的方法及装置
US20170116412A1 (en) * 2015-10-01 2017-04-27 Twistlock, Ltd. Profiling of spawned processes in container images and enforcing security policies respective thereof
CN107229507A (zh) * 2017-05-31 2017-10-03 郑州云海信息技术有限公司 一种容器镜像构建方法及装置
US20170300697A1 (en) * 2016-04-13 2017-10-19 International Business Machines Corporation Enforcing security policies for software containers

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8600998B1 (en) * 2010-02-17 2013-12-03 Netapp, Inc. Method and system for managing metadata in a cluster based storage environment
US10911371B1 (en) * 2015-03-16 2021-02-02 Amazon Technologies, Inc. Policy-based allocation of provider network resources
CN105069353B (zh) * 2015-08-11 2017-10-24 武汉大学 一种基于Docker的可信容器安全加固方法
CN105160269A (zh) * 2015-08-13 2015-12-16 浪潮电子信息产业股份有限公司 一种Docker容器内数据的访问方法及装置
US10586042B2 (en) * 2015-10-01 2020-03-10 Twistlock, Ltd. Profiling of container images and enforcing security policies respective thereof
CN105511943B (zh) * 2015-12-03 2019-04-12 华为技术有限公司 一种Docker容器运行方法和装置
US10078577B2 (en) * 2016-01-25 2018-09-18 Entit Software Llc Policy compliance of container images
US9521115B1 (en) * 2016-03-24 2016-12-13 Varmour Networks, Inc. Security policy generation using container metadata
US11238176B1 (en) * 2016-06-17 2022-02-01 BigID Inc. System and methods for privacy management
US10303899B2 (en) * 2016-08-11 2019-05-28 Intel Corporation Secure public cloud with protected guest-verified host control
CN106776149A (zh) * 2017-01-04 2017-05-31 郑州云海信息技术有限公司 本地容器镜像上传至镜像仓库的方法及***
US20200097662A1 (en) * 2018-09-25 2020-03-26 Ca, Inc. Combined threat score for container images

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104601580A (zh) * 2015-01-20 2015-05-06 浪潮电子信息产业股份有限公司 一种基于强制访问控制的策略容器设计方法
US20170116412A1 (en) * 2015-10-01 2017-04-27 Twistlock, Ltd. Profiling of spawned processes in container images and enforcing security policies respective thereof
CN105847045A (zh) * 2016-01-04 2016-08-10 中国电子科技网络信息安全有限公司 一种基于Docker容器的应用封装***及管理方法
US20170300697A1 (en) * 2016-04-13 2017-10-19 International Business Machines Corporation Enforcing security policies for software containers
CN106534147A (zh) * 2016-11-29 2017-03-22 北京元心科技有限公司 在多***中选择应用SELinux安全策略的方法及装置
CN107229507A (zh) * 2017-05-31 2017-10-03 郑州云海信息技术有限公司 一种容器镜像构建方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111709014A (zh) * 2020-05-27 2020-09-25 浪潮电子信息产业股份有限公司 一种应用隔离方法、***、设备及计算机可读存储介质
CN111709014B (zh) * 2020-05-27 2022-06-07 浪潮电子信息产业股份有限公司 一种应用隔离方法、***、设备及计算机可读存储介质
CN114265663A (zh) * 2021-09-10 2022-04-01 云南电网有限责任公司信息中心 一种用于docker全生命周期的内生安全防护方法
CN114117285A (zh) * 2022-01-27 2022-03-01 浙江口碑网络技术有限公司 基于h5页面的位置信息处理方法、装置及电子设备

Also Published As

Publication number Publication date
US20200320189A1 (en) 2020-10-08
EP3709199A1 (en) 2020-09-16
EP3709199A4 (en) 2021-01-13
WO2019128984A1 (zh) 2019-07-04

Similar Documents

Publication Publication Date Title
CN109992956A (zh) 容器的安全策略的处理方法和相关装置
CN105740048B (zh) 一种镜像管理方法、装置及***
CN110019081B (zh) 数据持久化处理方法、装置、***及可读存储介质
CN102541638B (zh) 资源管理***和方法
CN109873804A (zh) 基于行为的服务识别方法、装置、设备及可读存储介质
CN110198231A (zh) 用于多租户的容器网络管理方法和***以及中间件
CN107454159B (zh) 一种数据传输至云计算***或者数据中心的方法及设备
JP7026216B2 (ja) 仮想マシン管理
CN109634718B (zh) 云平台创建镜像的方法及***
US20130227085A1 (en) Terminal and method for using cloud services
CN105389325A (zh) 内容搜索方法和实施内容搜索方法的电子装置
US9451033B2 (en) Enhanced command selection in a networked computing environment
CN114244595B (zh) 权限信息的获取方法、装置、计算机设备及存储介质
US9225662B2 (en) Command management in a networked computing environment
US20170153909A1 (en) Methods and Devices for Acquiring Data Using Virtual Machine and Host Machine
CN104168309A (zh) 基于云服务的数据备份与操作方法
CN110197075A (zh) 资源访问方法、装置、计算设备以及存储介质
CN108551764A (zh) 用于备份大型分布式横向扩展数据***的***和方法
CN104809020B (zh) 一种生成快照的方法、***和装置
EP4137957A1 (en) File sharing method and terminal device
CN104517067A (zh) 访问数据的方法、装置及***
Jang et al. Study on Hybrid Type Cloud System
CN107357634A (zh) 一种参数配置管理方法及装置
CN105205065B (zh) 一种多版本应用的实现方法及终端
CN110781001A (zh) 一种基于Kubernetes的容器环境变量查看方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20190709

RJ01 Rejection of invention patent application after publication