我在堆栈中使用Opsworks自定义JSON定义环境变量。这些包括敏感的数据库详细信息,我不想以纯文本格式出现。同样,如果删除了堆栈,所有设置的变量也会丢失。
是否可以在S3存储桶中对此进行定义?
我所拥有的例子:
{
"database": [
{
"name": "db_name",
"username": "user_name",
"password": "password"
}
]
}
如何使用S3存储桶代替opsworks堆栈提供的自定义JSON?
答案 0 :(得分:0)
chef具有内置机制,可使用encrypted data bag item
以加密形式存储敏感信息使用类似于以下命令的刀命令对数据袋项目进行加密:
$ knife data bag create passwords mysql --secret-file /tmp/my_data_bag_key
可以使用类似于以下命令的刀来验证加密:
$ knife data bag show passwords mysql
已加密的数据袋项目是使用类似于以下命令的小刀命令解密的:
$ knife data bag show --secret-file /tmp/my_data_bag_key passwords mysql
您也可以在类似于以下的食谱中使用它:
data_bag_item('mysql', 'passwords')