首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将默认秘密文件添加到knife.rb的正确方法是什么?

将默认秘密文件添加到knife.rb的正确方法是什么?
EN

Stack Overflow用户
提问于 2015-12-16 04:12:52
回答 2查看 615关注 0票数 2

在我的knife.rb中添加秘密文件的正确格式是什么?我有read the docs,但似乎不能得到正确的格式,或者它可能不工作。

我已经尝试添加了这两个:

代码语言:javascript
复制
knife[:secret_file] = "/path/to/data_bag_secret"

代码语言:javascript
复制
secret_file "/path/to/data_bag_secret"

当我使用knife data bag create bag key时,这两个似乎都不能加密我的秘密

但是,如果我使用knife data bag create bag key --secret-file /path/to/data_bag_secret,它可以正确加密。

当我去看https://manage.chef.io上的数据包时,它似乎没有加密,这就是为什么我认为它没有加密。当我手动通过开关时,它在https://manage.chef.io上确实可以正确加密。

EN

回答 2

Stack Overflow用户

发布于 2016-12-09 00:30:47

tl;dr:如果使用的是Chef 12+,则另外传入命令行参数--encrypt标志。例如knife data bag from file foo ./data_bags/foo.json --encrypt

从Chef 12开始,您需要在使用--encrypt命令时传入knife data bag [create|from file]标志,以便在knife.rb中使用knife[secret]knife[secret_file配置选项。这里的主要问题是厨师文档尚未更新以表明这一点。如果调用knife data bag [create|from file] --help,您将在那里看到--encrypt标志选项的解释。

答案来源:https://github.com/chef/chef/issues/3223#issuecomment-93338211

票数 1
EN

Stack Overflow用户

发布于 2015-12-16 08:31:32

所以这有点奇怪,但是--secret-file并没有填充它自己的配置值。如果你查看一下https://github.com/chef/chef/blob/master/lib/chef/knife/data_bag_secret_options.rb#L48,你会发现它运行的是一个自定义的proc,它在下面定义。设置knife[:secret_file]应该仍然有效,所有与bag加密相关的代码都使用这两种方法。通常情况下,您不会使用data bag create来完成这项工作,这是为了创建最初的包/物品。对于常规更新,请使用data bag from file。还要记住,您需要从配置文件中删除该值才能真正看到加密的数据,否则knife data bag show会自动为您解密数据。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34298509

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档