community.sops.sops vars – 加载 SOPS 加密的变量文件
注意
这个变量插件是 community.sops 集合(版本 2.0.0)的一部分。
如果您正在使用 ansible
包,您可能已经安装了这个集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.sops
。您需要其他要求才能使用此变量插件,请参阅 要求 了解详细信息。
要在 Playbook 中使用它,请指定:community.sops.sops
。
community.sops 0.1.0 中的新功能
概要
将加密的 YAML 文件加载到
group_vars/
和host_vars/
目录中的相应组/主机中。文件在读取之前被解密,使得此插件成为 ansible.builtin.host_group_vars 插件的有效伴侣。
文件限制为
.sops.yaml
、.sops.yml
、.sops.json
扩展名,除非使用valid_extensions
进行其他配置。隐藏文件将被忽略。
要求
执行此变量的本地控制器节点上需要满足以下要求。
二进制可执行文件
sops
(https://github.com/getsops/sops) 必须存在于PATH
中,或者配置为sops_binary
。
参数
参数 |
注释 |
---|---|
一个或多个可用于解密加密文件的 age 私钥。 在调用 SOPS 时,将被设置为 需要 SOPS 3.7.1+。 配置
|
|
包含 SOPS 可用于解密加密文件的 age 私钥的文件。 在调用 SOPS 时,将被设置为 默认情况下,SOPS 在您的用户配置目录中查找 需要 SOPS 3.7.0+。 配置
|
|
用于向 AWS 发出请求的 AWS 访问密钥 ID。 为 SOPS 调用设置环境变量 配置
|
|
用于向 AWS 发出请求的 AWS 配置文件。 这对应于 SOPS 配置
|
|
用于向 AWS 发出请求的 AWS 秘密访问密钥。 为 SOPS 调用设置环境变量 配置
|
|
用于向 AWS 发出请求的 AWS 会话令牌。 为 SOPS 调用设置环境变量 配置
|
|
是否缓存解密的文件。 如果禁用缓存,则几乎每个任务都会解密文件。这会非常慢! 只有在 playbook 运行期间修改了变量文件,并希望在下一个任务中可以使用更新后的结果时,才禁用缓存。 请注意,设置 选项
配置
|
|
SOPS 配置文件的路径。 如果未设置,SOPS 将从加密或解密的文件开始递归搜索配置文件。 这对应于 SOPS 的 配置
|
|
临时禁用此插件。 如果应该在不解密密钥的情况下运行 ansible-inventory(例如在 AWX 中),则此选项很有用。 选项
配置 |
|
告知 SOPS 使用本地密钥服务。 这对应于 SOPS 的 选项
配置
|
|
如何处理与 默认值 值 值 请注意,如果 SOPS 使用的存储无法解析该文件,例如因为该文件虽然具有文件扩展名但不是有效的 JSON/YAML/…文件,则此选项将无济于事。对于默认扩展名以外的扩展名,SOPS 使用二进制存储,该存储尝试将文件解析为 JSON。 选项
配置
|
|
指定要与本地密钥服务一起使用的密钥服务。 密钥服务必须以 这对应于 SOPS 的 配置
|
|
SOPS 二进制文件的路径。 默认情况下使用 配置
|
|
控制何时执行此 vars 插件。 将此选项设置为 将此选项设置为 将此选项设置为 如果省略此选项,则使用全局 选项
配置
|
|
查找“变量”文件时检查所有这些扩展名。 这些文件必须是 SOPS 加密的 YAML 或 JSON 文件。 默认情况下,当插件遇到与这些扩展名匹配但未进行 SOPS 加密的文件时,将产生错误。可以使用 默认值: 配置
|
参见
另请参阅
- community.sops.sops 查找插件
sops 查找可用于解密 SOPS 加密的文件。
- community.sops.decrypt 过滤器插件
decrypt 过滤器可用于解密 SOPS 加密的内存数据。
- community.sops.load_vars
从文件中动态加载任务中的 SOPS 加密变量。