Chef无法在Windows上找到encrypted_data_bag_secret

时间:2014-09-12 20:02:52

标签: windows chef sysadmin windows2012

我无法从Windows上的加密数据包中加载机密。我已将文件复制到c:\ chef \ encrypted_data_bag_secret,这是默认路径。

我首先尝试过这个:

credentials = Chef::EncryptedDataBagItem.load("system", "deploy")

此错误导致失败:

  

10.0.1.20 [2014-09-12T19:51:45 + 00:00]致命:ArgumentError:未指明密码   to load_secret,在C:\ chef \ encrypted_data_bag_secret

找不到秘密

然后我尝试明确指定它:

secret = Chef::EncryptedDataBagItem.load_secret("c:/chef/encrypted_data_bag_secret")
credentials = Chef::EncryptedDataBagItem.load("system", "deploy", secret)

这也失败了:

  

10.0.1.20 [2014-09-12T19:53:18 + 00:00]致命:Errno :: ENOENT:没有这样的文件或目录 - 找不到文件&#c; / chef / encrypted_data_bag_secret'

最后,我尝试指定反斜杠,以防这不起作用:

secret = Chef::EncryptedDataBagItem.load_secret("c:\\chef\\encrypted_data_bag_secret")
credentials = Chef::EncryptedDataBagItem.load("system", "deploy", secret)

那也失败了:

  

10.0.1.20 [2014-09-12T19:54:49 + 00:00]致命:Errno :: ENOENT:没有这样的文件或目录 - 找不到文件&c; \ chef \ encrypted_data_bag_secret'

我还试过编辑权限,这样每个人都可以查看encrypted_data_bag_secret文件,但这没有任何效果。当然,我有一些非常明显的遗漏。

1 个答案:

答案 0 :(得分:2)

嗯,这很令人尴尬。我创建了一个文本文件来包含RDP会话的秘密,但Windows资源管理器中的默认值是stil因为某些愚蠢的原因而不显示文件扩展名。一旦我将文件重命名为真正具有正确名称,它就会按预期开始工作。