一种对于Docker容器创建和销毁的管控方法与流程

文档序号:30381858发布日期:2022-06-11 04:31阅读:232来源:国知局
一种对于Docker容器创建和销毁的管控方法与流程
一种对于docker容器创建和销毁的管控方法
技术领域
1.本发明涉及到信息技术领域,尤其涉及到一种对于docker容器创建和销毁的管控方法。


背景技术:

2.随着云计算技术的广泛应用,各种虚拟化技术也层出不穷。其中docker容器技术由于基于lxc的轻量级虚拟化的特点,相比kvm之类最明显的特点就是启动快,资源占用小,因此有利于构建隔离的标准化的运行环境,轻量级的paas(如dokku),构建自动化测试和持续集成环境,以及一切可以横向扩展的应用。
3.现有docker容器的创建和回收过程由容器管理器来进行操作,这个过程只有应用自身来进行资源申请和回收,没有安全机制在此过程中进行监控。因此,目前对于docker容器在创建和回收过程中,由于没有进行基于系统级的安全管控方式,导致攻击者可以违规创建容器资源,并使用容器资源进行恶意操作;同时攻击者也可以利用操作系统的管理员权限,修改或破坏已创建的容器资源,造成业务服务被干扰和破坏。


技术实现要素:

4.本发明的目的是为了克服现有技术的不足,提供了一种对于docker容器创建和销毁的管控方法。
5.本发明是通过以下技术方案实现:
6.本发明提供了一种对于docker容器创建和销毁的管控方法,该对于docker容器创建和销毁的管控方法包括以下步骤:
7.s1:由管理端向终端发起获取docker容器状态的策略请求,终端接收到该策略请求,且在终端处理该策略请求后,将解析该策略请求的信息解析发送至管理端;
8.s2:当管理端配置docker容器是否可以启动时,由管理端设置并向终端下发启动管控策略,终端接收到该启动管控策略后,根据docker容器的主体信息查找出对应的客体信息,并对客体配置相应的访问控制权限策略;
9.s3:当管理端关闭对docker容器的管控时,由管理端触发并向终端发送关闭docker容器的关闭管控策略,终端接收到该关闭管控策略后,清除包括启动管控策略在内的所有docker策略,并通知安全机制更新策略。
10.优选的,在步骤s1中,由管理端向终端发起获取docker容器状态的策略请求是指向终端获取docker容器进程的主体信息;docker容器进程的主体信息是指启动该docker容器进程的文件所在的路径信息,包括docker容器的id及name。
11.优选的,在步骤s2中,当管理端配置docker容器是否可以启动时,由管理端设置并向终端下发启动管控策略,终端接收到该启动管控策略后,根据docker容器的主体信息查找出对应的客体信息时,与docker容器的主体信息对应的客体信息是指docker容器的存储目录。
12.优选的,在步骤s2中,当管理端配置docker容器是否可以启动时,由管理端设置并向终端下发启动管控策略,终端接收到该启动管控策略后,根据docker容器的主体信息查找出对应的客体信息,并对客体配置相应的访问控制权限策略时,由终端判断管理端是否要强制发起管控;
13.如果不强制发起管控,则清空安全控制器中的安全策略,并通知管控机制更新策略并结束管控服务;如果强制发起管控,则判断是否有上一次管理端下发的安全策略;如没有上一次的安全策略,则获取docker容器的客体信息,即docker容器的存储目录,并对docker容器的客体添加docker容器主体的访问控制权限策略;如有上一次的安全策略,则判断当前是获取还是设置策略;如果是获取策略,则获取终端所有的docker容器的主体信息,包括id、name以及状态,并将主体信息发送至管理端;如果是设置策略,则解析出需要配置的容器主体,并将之前的容器主体对应的所有安全策略删除,并通知管控机制更新策略,然后获取需要配置的容器主体对应的客体的信息,即docker容器的目录,并配置对客体的访问控制权限策略,并再次通知管控机制更新策略。
14.本发明的有益效果是:本发明对于docker容器在创建和回收过程中,采用管理端策略管控,终端执行策略的管理模式,对于docker容器创建和销毁具有集中管理和强制控制的作用,采用基于系统级的安全管控方式,避免攻击者违规创建容器资源并使用容器资源进行恶意操作;同时避免攻击者利用操作系统的管理员权限修改或破坏已创建的容器资源,有效避免造成业务服务被干扰和破坏,同时解决对于所有docker容器创建和回收的统一安全管理和监控。
附图说明
15.图1是本发明实施例提供的对于docker容器创建和销毁的管控方法的第一流程图;
16.图2是本发明实施例提供的对于docker容器创建和销毁的管控方法的第二流程图。
具体实施方式
17.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
18.本发明实施例提供了一种对于docker容器创建和销毁的管控方法,参考图1、图2,该对于docker容器创建和销毁的管控方法包括以下步骤:
19.s1:由管理端向终端发起获取docker容器状态的策略请求,终端接收到该策略请求,且在终端处理该策略请求后,将解析该策略请求的信息解析发送至管理端;
20.s2:当管理端配置docker容器是否可以启动时,由管理端设置并向终端下发启动管控策略,终端接收到该启动管控策略后,根据docker容器的主体信息查找出对应的客体信息,并对客体配置相应的访问控制权限策略;
21.s3:当管理端关闭对docker容器的管控时,由管理端触发并向终端发送关闭docker容器的关闭管控策略,终端接收到该关闭管控策略后,清除包括启动管控策略在内
的所有docker策略,并通知安全机制更新策略。
22.本发明实施方案中,在步骤s1中,由管理端向终端发起获取docker容器状态的策略请求是指向终端获取docker容器进程的主体信息;docker容器进程的主体信息是指启动该docker容器进程的文件所在的路径信息,包括docker容器的id及name。
23.本发明实施方案中,在步骤s2中,当管理端配置docker容器是否可以启动时,由管理端设置并向终端下发启动管控策略,终端接收到该启动管控策略后,根据docker容器的主体信息查找出对应的客体信息时,与docker容器的主体信息对应的客体信息是指docker容器的存储目录。
24.本发明实施方案中,在步骤s2中,当管理端配置docker容器是否可以启动时,由管理端设置并向终端下发启动管控策略,终端接收到该启动管控策略后,根据docker容器的主体信息查找出对应的客体信息,并对客体配置相应的访问控制权限策略时,由终端判断管理端是否要强制发起管控,具体判断逻辑如下。
25.由终端判断管理端是否要强制发起管控时,如果判断为不强制发起管控,则清空安全控制器中的安全策略,并通知管控机制更新策略并结束管控服务;如果判断为强制发起管控,则判断是否有上一次管理端下发的安全策略;如判断没有上一次的安全策略,则获取docker容器的客体信息,即docker容器的存储目录,并对docker容器的客体添加docker容器主体的访问控制权限策略;如判断有上一次的安全策略,则判断当前是获取还是设置策略;如果判断是获取策略,则获取终端所有的docker容器的主体信息,包括id、name以及状态,并将主体信息发送至管理端;如果判断是设置策略,则解析出需要配置的容器主体,并将之前的容器主体对应的所有安全策略删除,并通知管控机制更新策略,然后获取需要配置的容器主体对应的客体的信息,即docker容器的目录,并配置对客体的访问控制权限策略,并再次通知管控机制更新策略。
26.在此需要说明的是,管理端(或管理中心)作为策略与审计的统一管理端,以需以软件安装在基于centos/readhat操作系统的服务器内。终端作为策略接收与功能实现端,可部署在基于任意操作系统的服务器或者计算机终端内。管理端可对终端任意一个或多个docker容器设置管控策略。
27.通过上述描述不难看出,本发明对于docker容器在创建和回收过程中,采用管理端策略管控,终端执行策略的管理模式,对于docker容器创建和销毁具有集中管理和强制控制的作用,采用基于系统级的安全管控方式,避免攻击者违规创建容器资源并使用容器资源进行恶意操作;同时避免攻击者利用操作系统的管理员权限修改或破坏已创建的容器资源,有效避免造成业务服务被干扰和破坏,同时解决对于所有docker容器创建和回收的统一安全管理和监控。
28.以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1