一种基于sidecar模式实现密码动态加载的方法及工具技术

技术编号:28623658 阅读:55 留言:0更新日期:2021-05-28 16:19
本发明专利技术公开一种基于sidecar模式实现密码动态加载的方法及工具,涉及kubernetes集群技术领域,其实现内容包括:在Secret‑manager中预先配置需要生成密码密钥的内容,部署kubernetes集群时,通过Secret‑manager中预先配置的内容生成kubernetes集群需要的所有密码,并加密后存储在预先指定的密码存储目录下;在应用侧和服务侧部署统一的Secret‑manager,Secret‑manager部署应用pod,并自动生成预设的密码管理策略及角色;使用secret‑inject服务以sidecar模式将Secret‑manager注入进应用pod,并挂载到应用pod预先指定的目录中;应用pod启动时,读取挂载路径中密码文件的密码信息,并携带该密码访问密码使用服务。本发明专利技术可以减少运维人员配置的工作量、降低人工配置出错的几率,可以提高密码使用过程中的安全指数,降低密码泄露的风险。

【技术实现步骤摘要】
一种基于sidecar模式实现密码动态加载的方法及工具
本专利技术涉及kubernetes集群
,具体的说是一种基于sidecar模式实现密码动态加载的方法及工具。
技术介绍
随着系统复杂度不断增加,kubernetes集群内部的应用不断增多,需要管理的密码密钥信息也随之增多。而且,随着应用的不断扩充,以及新环境的部署,都需要运维人员手动管理密码密钥,这就大大增加了运维人员的工作量。另外,在管理密码密钥的过程中,明文的配置导致密码密钥泄露的风险也不断增大,具有很大的安全隐患。
技术实现思路
本专利技术针对kubernetes集群部署时的密码配置问题,提供一种基于sidecar模式实现密码动态加载的方法及工具。首先,本专利技术提供一种基于sidecar模式实现密码动态加载的方法,解决上述技术问题采用的技术方案如下:一种基于sidecar模式实现密码动态加载的方法,其实现过程包括:在Secret-manager中预先配置需要生成密码密钥的内容,部署kubernetes集群时,通过Secret-manager中预先配置的内容生成kubernetes集群需要的所有密码,并加密后存储在预先指定的密码存储目录下;在应用侧和服务侧部署统一的Secret-manager,Secret-manager部署应用pod,并自动生成预设的密码管理策略及角色,其中,密码管理策略指定了包含的可访问的目录列表及对其的读写权限,角色信息包含角色名称及其关联的密码管理策略列表;使用secret-inject服务以sidecar模式将Secret-manager注入进应用pod,并挂载到应用pod预先指定的目录中;应用pod启动时,读取挂载路径中密码文件的密码信息,并携带该密码访问密码使用服务。进一步的,Secret-manager根据预先配置的内容生成kubernetes集群需要的所有密码,并将生成的密码提供给与之生成相对应的密码使用服务。进一步的,Secret-manager中定义了一系列的策略policy,每个policy可以预先指定多个密码存储目录,并使用正则表达式匹配密码和密码存储目录。进一步的,在应用侧和服务侧初次部署统一的Secret-manager时,需要首先进行密码初始化,随后再部署应用pod。进一步的,Secret-manager中预设了多个角色,角色与密码管理策略相关联,密码使用者拥有某个角色后,即可访问与该角色相关联密码管理策略所对应的密码存储目录。进一步的,角色与密码管理策略可以是一对一关联或者一对多关联。其次,本专利技术提供一种基于sidecar模式实现密码动态加载的工具,解决上述技术问题采用的技术方案如下:一种基于sidecar模式实现密码动态加载的工具,基于kubernetes集群,其实现框架包括secret-manager和secret-inject,其中,Secret-manager中预先配置有需要生成密码密钥的内容,secret-inject用于以sidecar模式将Secret-manager注入进应用pod,并挂载到应用pod预先指定的目录中;部署kubernetes集群时,首先,基于Secret-manager中预先配置的内容生成kubernetes集群需要的所有密码,并加密后存储在预先指定的密码存储目录下,随后,在应用侧和服务侧部署统一的Secret-manager,Secret-manager在应用侧和服务侧分别部署应用pod,并自动生成预设的密码管理策略及角色,其中,密码管理策略指定了包含的可访问的目录列表及对其的读写权限,角色信息包含角色名称及其关联的密码管理策略列表,最后,启动应用pod,读取挂载路径中密码文件的密码信息,并携带该密码访问密码使用服务。进一步的,Secret-manager根据预先配置的内容生成kubernetes集群需要的所有密码,并将生成的密码提供给与之生成相对应的密码使用服务。进一步的,Secret-manager中定义了一系列的策略policy,每个policy可以预先指定多个密码存储目录,并使用正则表达式匹配密码和密码存储目录;Secret-manager中预设了多个角色,角色与密码管理策略相关联,密码使用者拥有某个角色后,即可访问与该角色相关联密码管理策略所对应的密码存储目录。进一步的,在应用侧和服务侧初次部署统一的Secret-manager时,需要首先进行密码初始化,随后再部署应用pod。本专利技术的一种基于sidecar模式实现密码动态加载的方法及工具,与现有技术相比具有的有益效果是:本专利技术通过在Secret-manager中预先配置需要生成密码密钥的内容,可以减少运维人员配置的工作量、降低人工配置出错的几率;通过在应用侧和服务侧部署统一的Secret-manager,可以减少密码传输的中间环节;通过Secret-manager部署应用pod时自动生成预设的密码管理策略及角色,实现密码管理的条理性,同时,还可以根据不同应用的需要,给应用灵活的分配密码信息,避免配置冗余;通过使用secret-inject服务以sidecar模式将Secret-manager注入进应用pod,省却了传统的configmap配置密码的步骤,提高了安全性和易用性。附图说明附图1是本专利技术实施例一中将Secret-manager部署到应用的流程图;附图2是本专利技术实施例二的连接框架图。具体实施方式为使本专利技术的技术方案、解决的技术问题和技术效果更加清楚明白,以下结合具体实施例,对本专利技术的技术方案进行清楚、完整的描述。实施例一:本实施例提出一种基于sidecar模式实现密码动态加载的方法,其实现过程包括:步骤S1、在Secret-manager中预先配置需要生成密码密钥的内容,部署kubernetes集群时,通过Secret-manager中预先配置的内容生成kubernetes集群需要的所有密码,并加密后存储在预先指定的密码存储目录下。本步骤中,部署kubernetes集群时,Secret-manager生成的所有密码以类似文件目录的结构存储。Secret-manager根据预先配置的内容生成kubernetes集群需要的所有密码,并将生成的密码提供给与之生成相对应的密码使用服务,如mysql。Secret-manager中定义了一系列的策略policy,每个policy可以预先指定多个密码存储目录,并使用正则表达式匹配密码和密码存储目录。步骤S2、结合附图1,在应用侧和服务侧部署统一的Secret-manager,Secret-manager部署应用pod,并自动生成预设的密码管理策略及角色,其中,密码管理策略指定了包含的可访问的目录列表及对其的读写权限,角色信息包含角色名称及其关联的密码管理策略列表。...

【技术保护点】
1.一种基于sidecar模式实现密码动态加载的方法,其特征在于,其实现过程包括:/n在Secret-manager中预先配置需要生成密码密钥的内容,部署kubernetes集群时,通过Secret-manager中预先配置的内容生成kubernetes集群需要的所有密码,并加密后存储在预先指定的密码存储目录下;/n在应用侧和服务侧部署统一的Secret-manager,Secret-manager部署应用pod,并自动生成预设的密码管理策略及角色,其中,密码管理策略指定了包含的可访问的目录列表及对其的读写权限,角色信息包含角色名称及其关联的密码管理策略列表;/n使用secret-inject服务以sidecar模式将Secret-manager注入进应用pod,并挂载到应用pod预先指定的目录中;/n应用pod启动时,读取挂载路径中密码文件的密码信息,并携带该密码访问密码使用服务。/n

【技术特征摘要】
1.一种基于sidecar模式实现密码动态加载的方法,其特征在于,其实现过程包括:
在Secret-manager中预先配置需要生成密码密钥的内容,部署kubernetes集群时,通过Secret-manager中预先配置的内容生成kubernetes集群需要的所有密码,并加密后存储在预先指定的密码存储目录下;
在应用侧和服务侧部署统一的Secret-manager,Secret-manager部署应用pod,并自动生成预设的密码管理策略及角色,其中,密码管理策略指定了包含的可访问的目录列表及对其的读写权限,角色信息包含角色名称及其关联的密码管理策略列表;
使用secret-inject服务以sidecar模式将Secret-manager注入进应用pod,并挂载到应用pod预先指定的目录中;
应用pod启动时,读取挂载路径中密码文件的密码信息,并携带该密码访问密码使用服务。


2.根据权利要求1所述的一种基于sidecar模式实现密码动态加载的方法,其特征在于,Secret-manager根据预先配置的内容生成kubernetes集群需要的所有密码,并将生成的密码提供给与之生成相对应的密码使用服务。


3.根据权利要求1所述的一种基于sidecar模式实现密码动态加载的方法,其特征在于,Secret-manager中定义了一系列的策略policy,每个policy可以预先指定多个密码存储目录,并使用正则表达式匹配密码和密码存储目录。


4.根据权利要求1所述的一种基于sidecar模式实现密码动态加载的方法,其特征在于,在应用侧和服务侧初次部署统一的Secret-manager时,需要首先进行密码初始化,随后再部署应用pod。


5.根据权利要求1所述的一种基于sidecar模式实现密码动态加载的方法,其特征在于,Secret-manager中预设了多个角色,角色与密码管理策略相关联,密码使用者拥有某个角色后,即可访问与该角色相关联密码管理策略所对应的密码存储目录。


6.根据权利要求5所述的一种基于sidecar模式实现密码动态加载的方法,其特征在于,角...

【专利技术属性】
技术研发人员:刘可新唐晓东蔡卫卫
申请(专利权)人:浪潮云信息技术股份公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1