sensu.sensu_go.secrets_provider_vault 模块 – 管理 Sensu VaultProvider 密钥提供程序

注意

此模块是 sensu.sensu_go 集合 (版本 1.14.0) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install sensu.sensu_go。您需要其他要求才能使用此模块,有关详细信息,请参阅 要求

要在 playbook 中使用它,请指定:sensu.sensu_go.secrets_provider_vault

注意

由于违反了 Ansible 包含要求,sensu.sensu_go 集合将在 Ansible 12 中移除。该集合存在 未解决的完整性测试失败。有关更多信息,请参阅 讨论主题

sensu.sensu_go 1.6.0 中的新增功能

概要

要求

执行此模块的主机需要以下要求。

  • python >= 2.7

参数

参数

注释

address

字符串

Vault 服务器的地址。

如果 *state* 为 present,则为必填。

auth

字典

身份验证参数。也可以使用 ENV 定义每个参数。

api_key

字符串

sensu.sensu_go 1.3.0 中新增

身份验证时应使用的 API 密钥。如果未设置此参数,则将检查 SENSU_API_KEY 环境变量的值。

此参数替换了 *auth.user* 和 *auth.password* 参数。

有关 API 密钥的更多信息,请参阅 Sensu 官方文档:https://docs.sensu.io/sensu-go/latest/guides/use-apikey-feature/.

ca_path

路径

sensu.sensu_go 1.5.0 中新增

应用于验证后端证书的 CA 捆绑包的路径。

如果未设置此参数,模块将使用 python 使用的 CA 捆绑包。

也可以通过 *SENSU_CA_PATH* 环境变量设置此参数。

password

字符串

Sensu 用户的密码。如果未设置此参数,则将检查 SENSU_PASSWORD 环境变量的值。

如果设置了 *auth.api_key* 参数,则忽略此参数。

默认值: "P@ssw0rd!"

url

字符串

Sensu 后端 API 的位置。如果未设置此参数,则将检查 SENSU_URL 环境变量的值。

默认值: "https://127.0.0.1:8080"

user

字符串

用于连接到 Sensu API 的用户名。如果未设置此参数,则将检查 SENSU_USER 环境变量的值。

如果设置了 *auth.api_key* 参数,则忽略此参数。

默认值: "admin"

verify

布尔值

sensu.sensu_go 1.5.0 中新增

控制证书验证的标志。

如果您使用的是自签名证书,则可以将此参数设置为 false

仅在开发场景中使用此参数!如果您在生产环境中使用自签名证书,请参阅 *auth.ca_path* 参数。

也可以通过 *SENSU_VERIFY* 环境变量设置此参数。

选项

  • false

  • true ← (默认)

burst_limit

整数

速率间隔内允许的最大密钥请求数。

max_retries

整数

对 Vault 服务器的失败连接重试的最大次数。

name

字符串 / 必填

Sensu 资源的名称。此名称(在适用的情况下与命名空间结合使用)唯一标识 Ansible 操作的资源。

如果具有所选名称的资源已存在,Ansible 模块将更新它以匹配任务中的规范。

有关有效名称和其他限制的更多详细信息,请参阅上游文档中关于 *name* 元数据属性规范的说明:https://docs.sensu.io/sensu-go/latest/reference/

rate_limit

浮点数

每秒的最大密钥请求数。

state

字符串

Sensu 对象的目标状态。

选项

  • "present" ← (默认)

  • "absent"

timeout

整数

连接到 Vault 服务器的超时时间(以秒为单位)。

tls

字典

用于与 Vault 服务器建立连接的 TLS 配置。

ca_cert

字符串

受信任证书颁发机构证书文件的路径。

client_cert

字符串

客户端证书文件的路径。

client_key

字符串

客户端密钥文件的路径。

cname

字符串

客户端的规范名称。

token

字符串

与 Vault 一起使用的身份验证令牌。

如果 *state* 为 present,则为必填。

version

字符串

Vault 密钥/值存储的版本。

有关更多信息,请参阅 https://www.vaultproject.io/docs/secrets/kv

如果 *state* 为 present,则为必填。

选项

  • "v1"

  • "v2"

另请参阅

另请参阅

sensu.sensu_go.secrets_provider_env

管理 Sensu Env 密钥提供程序。

sensu.sensu_go.secrets_provider_info

列出 Sensu 密钥提供程序。

sensu.sensu_go.secret

管理 Sensu Go 密钥。

sensu.sensu_go.secret_info

列出可用的 Sensu Go 密钥。

示例

- name: Create a vault secrets provider
  sensu.sensu_go.secrets_provider_vault:
    name: my-vault
    address: https://my-vault.com
    token: VAULT_TOKEN
    version: v1

- name: Delete a vault secrets provider
  sensu.sensu_go.secrets_provider_vault:
    name: my-vault
    state: absent

返回值

常见的返回值已在此处记录,以下是此模块独有的字段

描述

对象

字典

表示Sensu vault密钥提供程序的对象。

返回:成功

示例: {"client": {"address": "https://vaultserver.example.com:8200", "max_retries": 2, "rate_limiter": {"burst": 100, "limit": 10}, "timeout": "20s", "tls": {"ca_cert": "/etc/ssl/certs/vault_ca_cert.pem"}, "token": "VAULT_TOKEN", "version": "v1"}, "metadata": {"name": "vault"}}

作者

  • Aljaz Kosir (@aljazkosir)

  • Manca Bizjak (@mancabizjak)

  • Miha Dolinar (@mdolin)

  • Tadej Borovsak (@tadeboro)