因此,这些天的常见做法是将连接字符串放在一起.密码作为环境变量,以避免将它们放入文件中.这一切都很好,但是我不确定如何在尝试使用某些配置管理工具(如Salt / Ansible或Chef / Puppet
具体来说,我在使用上述配置管理工具的环境中有以下问题:
>您在哪里存储与代码库分开的连接字符串/密码/密钥?
>您是否将这些项目保存在某种类型的代码回购中(git等)?
>您是否在工具中使用了一些内置结构?
>你如何保证这些物品的安全?
>您是否跟踪更改/备份这些项目,如果是,如何?
>在encrypted data bags或chef-vault中存储密码或API令牌.然后在厨师进行配置时对其进行解密(使用共享密钥加密数据包,使用Chef客户端的现有PKI使用chef-vault).
>使用例如环境参数调用外部软件时设置环境变量. execute resource>不确定,在这里写什么 – 我会说你没有真正管理它们.这样,您只需为需要它的命令设置变量,而不是为整个厨师运行.