太阳城集团

  • / 13
  • 下载费用:30 金币  

一种DOCKER容器内数据的访问方法及装置.pdf

摘要
申请专利号:

太阳城集团CN201510497067.5

申请日:

2015.08.13

公开号:

太阳城集团CN105160269A

公开日:

2015.12.16

当前法律状态:

撤回

有效性:

无权

法律详情: 发明专利申请公布后的视为撤回IPC(主分类):G06F 21/62申请公布日:20151216|||实质审查的生效IPC(主分类):G06F 21/62申请日:20150813|||公开
IPC分类号: G06F21/62(2013.01)I 主分类号: G06F21/62
申请人: 浪潮电子太阳城集团产业股份有限公司
发明人: 徐峥
地址: 250100山东省济南市高新区浪潮路1036号
优先权:
专利代理机构: 济南信达专利事务所有限公司37100 代理人: 李世喆
PDF完整版下载: PDF下载
法律状态
申请(专利)号:

CN201510497067.5

授权太阳城集团号:

||||||

法律状态太阳城集团日:

太阳城集团2018.06.19|||2016.01.13|||2015.12.16

法律状态类型:

发明专利申请公布后的视为撤回|||实质审查的生效|||公开

摘要

本发明提供一种Docker容器内数据的访问方法及装置,方法包括:设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限,其中,该位于当前Docker容器外部的该请求端包括文件、目录、进程、注册表和服务中的任意一种,获取外部的目标请求端对当前Docker容器内部的目标数据的访问请求;根据预先设置的访问权限,判断所述目标请求端是否具有对所述目标数据所对应的目标挂载路径和目标容器路径的访问权限;在判断结果为是时,允许所述目标请求端访问所述目标挂载路径和所述容器路径所对应的所述目标数据。根据本方案,可以提高数据的安全性。

权利要求书

权利要求书
1.  一种Docker容器内数据的访问方法,其特征在于,设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限,其中,该位于当前Docker容器外部的该请求端包括文件、目录、进程、注册表和服务中的任意一种,还包括:
获取外部的目标请求端对当前Docker容器内部的目标数据的访问请求;
根据预先设置的访问权限,判断所述目标请求端是否具有对所述目标数据所对应的目标挂载路径和目标容器路径的访问权限;
在判断结果为是时,允许所述目标请求端访问所述目标挂载路径和所述容器路径所对应的所述目标数据。

2.  根据权利要求1所述的方法,其特征在于,所述设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限,包括:
设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的读操作权限和/或写操作权限;
和/或,
设置位于当前Docker容器外部的任何一个请求端都不具有对当前Docker容器内部的数据所对应的挂载路径和容器路径的访问权限;
和/或,
设置位于当前Docker容器外部的请求端具有在设定太阳城集团段内,对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限。

3.  根据权利要求1或2所述的方法,其特征在于,在所述获取外部的目标请求端对当前Docker容器内部的目标数据的访问请求之前,进一步包括:
将相应地的挂载路径和容器路径发送至对当前Docker容器内部数据所对应的挂载路径和容器路径具有访问权限的位于当前Docker容器外部的请求端。

4.  一种Docker容器内数据的访问装置,其特征在于,包括:
存储单元,用于存储位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限,其中,该位于当前Docker容器外部的该请求端包括文件、目录、进程、注册表和服务中的任意一种;
获取单元,用于获取外部的目标请求端对当前Docker容器内部的目标数据的访问请求;
判断单元,用于根据预先设置的访问权限,判断所述目标请求端是否具有对所述目标数据所对应的目标挂载路径和目标容器路径的访问权限;在判断结果为是时,允许所述目标请求端访问所述目标挂载路径和所述容器路径所对应的所述目标数据。

5.  根据权利要求4所述的Docker容器内数据的访问装置,其特征在于,所述存储单元,用于存储位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的读操作权限和/或写操作权限;和/或,存储位于当前Docker容器外部的任何一个请求端都不具有对当前Docker容器内部的数据所对应的挂载路径和容器路径的访问权限;和/或,存储位于当前Docker容器外部的请求端具有在设定太阳城集团段内,对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限。

6.  根据权利要求4或5所述的Docker容器内数据的访问装置,其特征在于,进一步包括:
发送单元,用于将相应地的挂载路径和容器路径发送至对当前Docker容器内部数据所对应的挂载路径和容器路径具有访问权限的位于当前Docker容器外部的请求端。

说明书

说明书一种Docker容器内数据的访问方法及装置
技术领域
本发明涉及太阳城集团安全技术领域,特别涉及一种Docker容器内数据的访问方法及装置。
背景技术
随着计算机和网络技术的发展,云计算等网络计算平台的广泛应用,越来越多的关键业务系统运行在网络计算平台。网络计算平台的业务应用往往有大量的人员及用户共同维护或使用一个服务器,而一切业务应用的核心都是用户的数据,因此用户私有数据隔离与共享等数据安全问题就突显的尤为重要。
目前,系统可以创建多个Docker容器,每一个Docker容器相当于一个虚拟机,通过将用户私有数据存储在不同的Docker容器内部,通过Docker容器的隔离实现Docker容器内数据的隔离,并且允许Docker容器内部的进程可以访问Docker容器内的数据,以及允许获知该Dccker容器的访问路径的进程进行访问。
然而,若黑客获知到Docker容器的访问路径,则可以根据该访问路径去访问该Docker容器内的数据,从而给Docker容器内数据的安全带来影响。
发明内容
有鉴于此,本发明提供一种Docker容器内数据的访问方法及装置,以提高Docker容器内数据的安全性。
本发明提供料一种Docker容器内数据的访问方法,设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限,其中,该位于当前Docker容器外部的该请求端包括文件、目录、进程、注册表和服务中的任意一种,还包括:
获取外部的目标请求端对当前Docker容器内部的目标数据的访问请求;
根据预先设置的访问权限,判断所述目标请求端是否具有对所述目标数据所对应的目标挂载路径和目标容器路径的访问权限;
在判断结果为是时,允许所述目标请求端访问所述目标挂载路径和所述容器路径所对应的所述目标数据。
优选地,所述设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限,包括:
设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的读操作权限和/或写操作权限;
和/或,
设置位于当前Docker容器外部的任何一个请求端都不具有对当前Docker容器内部的数据所对应的挂载路径和容器路径的访问权限;
和/或,
设置位于当前Docker容器外部的请求端具有在设定太阳城集团段内,对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限。
优选地,在所述获取外部的目标请求端对当前Docker容器内部的目标数据的访问请求之前,进一步包括:
将相应地的挂载路径和容器路径发送至对当前Docker容器内部数据所对应的挂载路径和容器路径具有访问权限的位于当前Docker容器外部的请求端。
本发明提供了一种Docker容器内数据的访问装置,包括:
存储单元,用于存储位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限,其中,该位于当前Docker容器外部的该请求端包括文件、目录、进程、注册表和服务中的任意一种;
获取单元,用于获取外部的目标请求端对当前Docker容器内部的目标数据的访问请求;
判断单元,用于根据预先设置的访问权限,判断所述目标请求端是否具有对所述目标数据所对应的目标挂载路径和目标容器路径的访问权限;在判断结果为是时,允许所述目标请求端访问所述目标挂载路径和所述容器路径所对应的所述目标数据。
优选地,所述存储单元,用于存储位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的读操作权限和/或写操作权限;和/或,存储位于当前Docker容器外部的任何一个请求端都不具有对当前Docker容器内部的数据所对应的挂载路径和容器路径的访问权限;和/或,存储位于当前Docker容器外部的请求端具有在设定太阳城集团段内,对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限。
优选地,进一步包括:
发送单元,用于将相应地的挂载路径和容器路径发送至对当前Docker容器内部数据所对应的挂载路径和容器路径具有访问权限的位于当前Docker容器外部的请求端。
本发明实施例提供了一种Docker容器内数据的访问方法及装置,通过设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限,即使有黑客获知到Docker容器内数据的挂载路径和容器路径,也无法直接访问该数据,通过设置的访问权限对访问请求进行强制访问控制,以使对挂载路径和容器路径具有访问权限的外部请求端才能够对该目标数据的进行访问,从而进一步提高了数据的安全性。
附图说明
图1是本发明实施例提供的方法流程图;
图2是本发明另一实施例提供的方法流程图;
图3是本发明实施例提供的装置所在设备的硬件架构图;
图4是本发明实施例提供的装置结构示意图;
图5是本发明另一实施例提供的装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种Docker容器内数据的访问方法,该方法可以包括以下步骤:
步骤101:设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限,其中,该位于当前Docker容器外部的该请求端包括文件、目录、进程、注册表和服务中的任意一种。
步骤102:获取外部的目标请求端对当前Docker容器内部的目标数据的访问请求。
步骤103:根据预先设置的访问权限,判断目标请求端是否具有对目标数据所对应的目标挂载路径和目标容器路径的访问权限。
步骤104:在判断结果为是时,允许目标请求端访问目标挂载路径和容器路径所对应的目标数据。
根据上述方案,通过设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限,即使有黑客获知到Docker容器内数据的挂载路径和容器路径,也无法直接访问该数据,通过设置的访问权限对访问请求进行强制访问控制,以使对挂载路径和容器路径具有访问权限的外部请求端才能够对该目标数据的进行访问,从而进一步提高了数据的安全性。
为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本发明作进一步地详细描述。
如图2所示,本发明实施例提供了一种Docker容器内数据的访问方法,该方法可以包括以下步骤:
步骤201:设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限。
本实施例中,Docker容器对内部私有数据安全性可以通过如下方式进行保证。
其中,Docker容器是包括有一个虚拟操作系统的虚拟机,对于一个正在运行的Docker容器,其操作系统都是一个从根目录开始的虚拟文件系统,对于该Docker容器中所运行的脚本文件可以包括:


对于容器中的文件系统都是挂载到了真实系统中的一个目录下面的,该目录可以称之为挂载路径:/var/lib/docker/containers/<image-long-id>/rootfs。
对于Docker容器内部的数据,例如,/rootdf3880c17466:/#ll/total68/drwxr-xr-x2rootroot4096Jul2222:51bin,可以称之为容器路径。
所有Docker容器都是通过lxc来进行管理的,而lxc的配置文件是存储在下面这个目录中的:/var/lib/docker/containers/<image-long-id>/config.lxc。根据lxc配置文件的存储目录和Docker容器的挂载路径可知,lxc配置文件和Docker容器都是存储在/var/lib/docker/containers/<image-long-id>下,但又不再同一个文件夹下。
其中,image-long-id是Docker容器对应生成的唯一性编码。例如,一个Docker容器的挂载路径可以包括:/var/lib/docker/containers/inspur0b17407575cd642a6b7da3c7e417a55fad5bbd63152f89921925626d2b6/rootfs。
综上可以获知,Docker容器中数据的真实目录需要包括容器路径和挂载路径。例如,/var/lib/docker/containers/<image-long-id>/rootfs/rootdf3880c17466:/#ll/total68/drwxr-xr-x2rootroot4096Jul2222:51bin。
对于不同的Docker容器,挂载点是不一样的,相应地,不同Docker容器的挂载目录不同。而Docker容器是不能穿越其根目录上一级去访问其他Docker容器的数据的,因此,每一个Docker容器都做到了文件系统的隔离,从而保证了Docker容器内数据的安全性。
在本实施例中,为了进一步提高Docker容器内数据的安全性,可以在Docker容器的各个层次上在增加一层防护。该增加的一层防护可以包括强制访问控制策略,因此,需要设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限。其中,该位于当前Docker容器外部的该请求端包括文件、目录、进程、注册表和服务中的任意一种。
该强制访问控制策略的主要元素可以包括主体、客体和权限;语义可以包括主体对客体具有的权限。比如主体是/bin/cat,客体是/home/testuser/cardinfo.txt读取,表示/bin/cat可以读取/home/testuser/cardinfo.txt。
其中,可以设置如下强制访问控制策略:
1、设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的读操作权限和/或写操作权限。
例如,设置位于当前Docker容器外部的/bin/cat、/dockerapp具有对当前Docker容器内部数据/var/lib/docker/containers/<image-long-id>/rootfs/rootdf3880c17466:/#ll/total68/drwxr-xr-x2rootroot4096Jul2222:51bin的读写操作权限。
2、设置位于当前Docker容器外部的任何一个请求端都不具有对当前Docker容器内部的数据所对应的挂载路径和容器路径的访问权限。
例如,设置位于当前Docker容器外部的任何一个请求端都不具有对当前Docker容器内部数据/var/lib/docker/containers/<image-long-id>/rootfs/rootdf3880c17466:/#ll/total68/drwxr-xr-x2rootroot4096Jul2222:51bin的访问权限。
3、设置位于当前Docker容器外部的请求端具有在设定太阳城集团段内,对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限。
例如,设置位于当前Docker容器外部的/bin/cat具有在每天12:00-18:00的太阳城集团段内,对当前Docker容器内部数据/var/lib/docker/containers/<image-long-id>/rootfs/rootdf3880c17466:/#ll/total68/drwxr-xr-x2rootroot4096Jul2222:51bin的读写操作权限。
步骤202:将相应地的挂载路径和容器路径发送至对当前Docker容器内部数据所对应的挂载路径和容器路径具有访问权限的位于当前Docker容器外部的请求端。
由于Docker容器外部的请求端不知道Docker容器内部数据所对应的挂载路径和容器路径,且有一些请求端需要访问Docker容器内的数据,因此,需要将Docker容器内部数据所对应的挂载路径和容器路径发送至对所对应的挂载路径和容器路径具有访问权限的位于当前Docker容器外部的请求端,从而能够实现Docker容器外部具有权限的请求端的正常访问。
步骤203:获取外部的目标请求端对当前Docker容器内部的目标数据的访问请求。
例如,获取外部的目标请求端包括/bin/cat,当前Docker容器内部的目标数据是/var/lib/docker/containers/<image-long-id>/rootfs/rootdf3880c17466:/#ll/total68/drwxr-xr-x2rootroot4096Jul2222:51bin,其访问请求是对该目标数据进行读操作。
步骤204:根据预先设置的访问权限,判断所述目标请求端是否具有对所述目标数据所对应的目标挂载路径和目标容器路径的访问权限。
假设,本实施例中预先设置的访问权限包括设置位于当前Docker容器外部的/bin/cat具有在每天12:00-18:00的太阳城集团段内,对当前Docker容器内部数据/var/lib/docker/containers/<image-long-id>/rootfs/rootdf3880c17466:/#ll/total68/drwxr-xr-x2rootroot4096Jul2222:51bin的读写操作权限。
那么,需要确定当前目标请求端/bin/cat的访问太阳城集团,若该访问太阳城集团位于设定的每天12:00-18:00的太阳城集团段内,则确定/bin/cat具有对目标数据所对应的目标挂载路径和目标容器路径的访问权限,否则,则确定/bin/cat不具有对目标数据所对应的目标挂载路径和目标容器路径的访问权限。
步骤205:在判断结果为是时,允许目标请求端访问目标挂载路径和容器路径所对应的目标数据。
根据本方案,通过设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限,即使有黑客获知到Docker容器内数据的挂载路径和容器路径,也无法直接访问该数据,通过设置的访问权限对访问请求进行强制访问控制,以使对挂载路径和容器路径具有访问权限的外部请求端才能够对该目标数据的进行访问,从而进一步提高了数据的安全性。
如图3、图4所示,本发明实施例提供了一种Docker容器内数据的访问装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图3所示,为本发明实施例Docker容器内数据的访问装置所在设备的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图4所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。本实施例提供的Docker容器内数据的访问装置包括:
存储单元401,用于存储位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限,其中,该位于当前Docker容器外部的该请求端包括文件、目录、进程、注册表和服务中的任意一种;
获取单元402,用于获取外部的目标请求端对当前Docker容器内部的目标数据的访问请求;
判断单元403,用于根据预先设置的访问权限,判断所述目标请求端是否具有对所述目标数据所对应的目标挂载路径和目标容器路径的访问权限;在判断结果为是时,允许所述目标请求端访问所述目标挂载路径和所述容器路径所对应的所述目标数据。
进一步地,所述存储单元401,用于存储位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的读操作权限和/或写操作权限;和/或,存储位于当前Docker容器外部的任何一个请求端都不具有对当前Docker容器内部的数据所对应的挂载路径和容器路径的访问权限;和/或,存储位于当前Docker容器外部的请求端具有在设定太阳城集团段内,对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限。
如图5所示,本发明实施例提供的Docker容器内数据的访问装置可以进一步包括:
发送单元501,用于将相应地的挂载路径和容器路径发送至对当前Docker容器内部数据所对应的挂载路径和容器路径具有访问权限的位于当前Docker容器外部的请求端。
综上,本发明实施例至少可以实现如下有益效果:
1、通过设置位于当前Docker容器外部的请求端具有对当前Docker容器内部数据所对应的挂载路径和容器路径的访问权限,即使有黑客获知到Docker容器内数据的挂载路径和容器路径,也无法直接访问该数据,通过设置的访问权限对访问请求进行强制访问控制,以使对挂载路径和容器路径具有访问权限的外部请求端才能够对该目标数据的进行访问,从而进一步提高了数据的安全性。
上述设备内的各单元之间的太阳城集团交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
太阳城集团最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

关 键 词:
一种 DOCKER 容器 数据 访问 方法 装置
  专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
太阳城集团本文
本文标题:一种DOCKER容器内数据的访问方法及装置.pdf
链接地址:http://zh228.com/p-6401619.html
太阳城集团我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备17046363号-1 
 


收起
展开
葡京赌场|welcome document.write ('');