问题标签 [mozilla-sops]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
86 浏览

terraform - 如何使用数组而不是单个值将 sops 提供程序与 terraform 一起使用

我对 Terraform 很陌生。我正在尝试使用 sops 提供程序插件从 yaml 文件中加密秘密: Sops Provider

我需要为稍后的配置阶段创建一个 Terraform 用户对象,如下例所示:

我准备了一个 secrets.values.enc.yaml 文件来存储我的秘密数据:

我已经使用“sops”命令加密了文件。我可以成功解密文件以进行测试。

现在我尝试使用 Terraform 中的加密文件来创建用户对象:

不幸的是,我无法调试数据或“用户”的结构,因为 Terraform 不显示敏感数据。当我尝试在稍后的配置阶段使用该用户变量时,它似乎并不需要:

不能在 for_each 中使用一组字符串值映射。需要一个可迭代的集合。

当我对未加密的yaml 文件做同样的事情时,一切似乎都工作正常:

看起来 sops 提供程序解密不会创建我需要的数组或“可迭代集合”。

有谁知道如何使用 terraform sops 提供程序来解密一组键值对?像“adminpassword”这样的单个值工作正常。