sensu.sensu_go.user 模块 – 管理 Sensu 用户

注意

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

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

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

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

注意

由于违反了 Ansible 包含要求,sensu.sensu_go 集合将从 Ansible 12 中移除。该集合有 未解决的健全性测试失败。有关更多信息,请参阅 讨论线程

sensu.sensu_go 1.0.0 中的新增功能

概要

要求

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

  • bcrypt(当管理 Sensu Go 5.21.0 或更高版本时)

  • python >= 2.7

参数

参数

注释

auth

字典

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

api_key

字符串

在 sensu.sensu_go 1.3.0 中添加

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

这取代了 auth.userauth.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 ← (默认)

groups

列表 / 元素=字符串

用户所属的组列表。

name

字符串 / 必需

Sensu 资源的名称。此名称(与适用的命名空间组合)唯一标识 Ansible 操作的资源。

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

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

password

字符串

用户的密码。

如果后端上尚不存在具有所需名称的用户且未设置 password_hash,则为必需。

如果同时设置了 passwordpassword_hash,则如果需要,则忽略 password_hash 并从 password 计算。

password_hash

字符串

在 sensu.sensu_go 1.8.0 中添加

用户的 Bcrypt 密码哈希。

使用 sensuctl user hash-password PASSWORD 生成哈希。

如果后端上尚不存在具有所需名称的用户且未设置 password,则为必需。

如果同时设置了 passwordpassword_hash,则如果需要,则忽略 password_hash 并从 password 计算。

Sensu Go < 5.21.0 不支持使用哈希密码创建/更新用户。如果需要管理此类 Sensu Go 安装,请使用 password 参数。

目前,当使用密码哈希时,更改检测无法正常工作,因为 Sensu Go 后端没有通过其 API 公开足够的信息。

state

字符串

用户的期望状态。

用户实际上无法被删除,只能被停用。

选项

  • "enabled" ← (默认)

  • "disabled"(禁用)

另请参阅

另请参阅

sensu.sensu_go.user_info

列出 Sensu 用户。

示例

- name: Create a user
  sensu.sensu_go.user:
    auth:
      url: https://127.0.0.1:8080
    name: awesome_username
    password: hidden_password?
    groups:
      - dev
      - prod

- name: Use pre-hashed password
  sensu.sensu_go.user:
    auth:
      url: https://127.0.0.1:8080
    name: awesome_username
    password_hash: $5f$14$.brXRviMZpbaleSq9kjoUuwm67V/s4IziOLGHjEqxJbzPsreQAyNm

- name: Deactivate a user
  sensu.sensu_go.user:
    name: awesome_username
    state: disabled

返回值

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

描述

对象

字典

表示 Sensu 用户的对象。

返回: 成功

示例: {"disabled": false, "groups": ["ops", "dev"], "password": "USER_PASSWORD", "password_hash": "$5f$14$.brXRviMZpbaleSq9kjoUuwm67V/s4IziOLGHjEqxJbzPsreQAyNm", "username": "alice"}

作者

  • Paul Arthur (@flowerysong)

  • Aljaz Kosir (@aljazkosir)

  • Tadej Borovsak (@tadeboro)