[发明专利]Docker镜像仓库的权限认证方法和系统有效
申请号: | 201711476882.9 | 申请日: | 2017-12-29 |
公开(公告)号: | CN107948201B | 公开(公告)日: | 2020-11-13 |
发明(设计)人: | 刘俊杰 | 申请(专利权)人: | 平安科技(深圳)有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08 |
代理公司: | 深圳市君胜知识产权代理事务所(普通合伙) 44268 | 代理人: | 王永文;刘文求 |
地址: | 518000 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | docker 仓库 权限 认证 方法 系统 | ||
本发明公开了一种Docker镜像仓库的权限认证方法和系统,其权限认证方法先通过代理服务器访问镜像仓库被拒绝时,接收镜像仓库返回的未授权错误信息;之后,解析所述未授权错误信息,根据认证方法提示信息生成权限认证请求并将其发送至代理服务器,由代理服务器将权限认证请求发送给令牌服务器进行权限认证,之后,接收云管区中的令牌服务器返回的令牌,并携带所述令牌向镜像仓库发送访问请求;接收镜像仓库返回的镜像,即完成了私有Docker镜像仓库的访问操作。本发明通过通过将权限认证交由第三方进行验证,根据请求令牌发放权限,提高了镜像的安全性,而且无需再在各个可用区设置鉴权组件,因此只需要维护一份云管区的令牌服务器即可。
技术领域
本发明涉及Docker技术领域,具体涉及Docker镜像仓库的权限认证方法和系统。
背景技术
Docker(Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化)提供的容器技术允许在同一台主机或虚拟机上运行若干个容器(container),每个容器就是一个独立的虚拟环境或应用。
容器来源于Docker 镜像(image),而镜像可以由用户自制(build)或由运行中的容器提交(commit)来生成,镜像生成后,可以推送(push)到镜像仓库(registry)中进行保存,也可以从镜像仓库拉取(pull)到本地以运行容器。Docker 提供了官方镜像仓库(Docker hub),同时允许用户自行搭建私有镜像仓库(private registry)。对于大多数机构和组织,使用私有镜像仓库是很有必要的,用以保护仓库的镜像内容及使用。
当用户访问Docker镜像时,针对不同镜像仓库内的镜像,需要细化访问权限控制。例如,对于公共镜像(即访问官方镜像仓库),任何用户都能够拉取(Pull)镜像,而只有系统管理员可以推送(Push)镜像;对于用户自己命名空间(Name space)下的镜像(即私有Docker 镜像仓库),只有通过了权限验证的该用户才能够拉取/推送镜像,即在访问时需要根据用户终端的身份判断有哪些仓库中的镜像可以拉取,或者可以往哪些仓库中推送镜像,能够提高镜像的安全性。
目前,Docker镜像服务器的权限设置比较简单,一般采用两种方式,第一种方式是只检查用户认证信息在请求时是否一并提供,并不验证其真假;第二种方式是配置静态的用户名与密码对,且需要预先生成密码文件,通过简单的用户登录就可以操作镜像服务。
可见上述两种方式的权限控制方式都不够安全,都不能满足镜像安全的要求。
因此,现有技术还有待于改进和发展。
发明内容
针对现有技术的上述缺陷,本发明提供一种Docker镜像仓库的权限认证方法和系统,主要解决现有Docker镜像访问不安全的问题。
本发明解决技术问题所采用的技术方案如下:
一种Docker镜像仓库的权限认证方法,包括如下步骤:
通过代理服务器访问镜像仓库被拒绝时,接收镜像仓库返回的未授权错误信息,其中,所述镜像仓库部署在云管区中,所述未授权错误信息的响应头中包含认证方法提示信息;
解析所述未授权错误信息,根据认证方法提示信息生成权限认证请求并将其发送至代理服务器,由代理服务器将权限认证请求发送给令牌服务器进行权限认证,其中所述代理服务器部署在可用区内,令牌服务器部署在云管区中;
接收云管区中的令牌服务器返回的令牌,并携带所述令牌向镜像仓库发送访问请求;
接收镜像仓库返回的镜像。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安科技(深圳)有限公司,未经平安科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711476882.9/2.html,转载请声明来源钻瓜专利网。