sensu.sensu_go.ad_auth_provider 模块 – 管理 Sensu AD 身份验证提供程序

注意

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

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

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

要在剧本中使用它,请指定: sensu.sensu_go.ad_auth_provider

注意

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

sensu.sensu_go 1.10.0 中的新增功能

概要

需求

以下是执行此模块的主机所需的条件。

  • python >= 2.7

参数

参数

注释

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 ← (默认)

groups_prefix

字符串

添加到所有 AD 组的前缀。

name

字符串 / 必需

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

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

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

servers

列表 / 元素=字典

您的目录的 AD 服务器数组。

binding

字典

执行用户和组查找的 AD 帐户。

如果您的服务器支持匿名绑定,您可以忽略 user_dn 或 password 属性来查询无需凭据的目录。

password

字符串 / 必需

user_dn 帐户的密码。

如果您的服务器支持匿名绑定,您可以忽略此属性。

user_dn

字符串 / 必需

执行用户和组查找的 AD 帐户。

如果您的服务器支持匿名绑定,您可以忽略此属性。

client_cert_file

字符串

应发送到服务器(如果请求)的证书的路径。

client_key_file

字符串

与 client_cert_file 关联的密钥文件的路径。

如果存在 _client_cert_file_,则需要此参数。

default_upn_domain

字符串

设置后启用 UPN 身份验证。登录时未指定域时将附加到用户名的默认 UPN 后缀(例如,user 将变为 user@defaultdomain.xyz)。

字典

组的搜索配置。

attribute

字符串

用于比较结果条目。

默认值: "member"

base_dn

字符串 / 必需

要搜索的目录树的哪个部分。

name_attribute

字符串

表示用作条目名称的属性。

默认值: "cn"

object_class

字符串

标识搜索结果中返回的对象类别。

默认值: "group"

host

字符串 / 必需

AD 服务器 IP 地址。

include_nested_groups

布尔值

如果为 true,则组搜索包括用户所属的任何嵌套组。如果为 false,则组搜索仅包括用户所属的顶级组。

选项

  • false

  • true

insecure

布尔值

设置为 true 时跳过 SSL 证书验证。

选项

  • false ← (默认)

  • true

port

整数

AD 服务器端口。

security

字符串

用于连接到 AD 服务器的加密类型。

选项

  • "insecure"

  • "tls" ← (默认)

  • “starttls”

trusted_ca_file

字符串

指向备用 CA 证书包文件的路径。

字典

用户的搜索配置。

attribute

字符串

用于比较结果条目。

默认值: "sAMAccountName"

base_dn

字符串 / 必需

要搜索的目录树的哪个部分。

name_attribute

字符串

表示用作条目名称的属性。

默认值: "displayName"

object_class

字符串

标识搜索结果中返回的对象类别。

默认值: "person"

state

字符串

Sensu 对象的目标状态。

选项

  • "present" ← (默认)

  • “absent”

username_prefix

字符串

添加到所有 AD 用户名之前的前缀。

参见

另见

sensu.sensu_go.auth_provider_info

列出 Sensu 身份验证提供程序。

sensu.sensu_go.ldap_auth_provider

管理 Sensu LDAP 身份验证提供程序。

sensu.sensu_go.oidc_auth_provider

管理 Sensu OIDC 身份验证提供程序。

示例

- name: Create a AD auth provider
  sensu.sensu_go.ad_auth_provider:
    name: activedirectory
    servers:
      - host: 127.0.0.1
        group_search:
          base_dn: dc=acme,dc=org
        user_search:
          base_dn: dc=acme,dc=org
- name: Delete a AD auth provider
  sensu.sensu_go.ad_auth_provider:
    name: activedirectory
    state: absent

返回值

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

描述

object

字典

表示 Sensu AD 身份验证提供程序的对象。

返回值: success

示例: {"groups_prefix": "AD", "metadata": {"name": "activedirectory"}, "servers": {"binding": {"user_dn": "cn=binder,dc=acme,dc=org"}, "client_cert_file": "/path/to/ssl/cert.pem", "client_key_file": "/path/to/ssl/key.pem", "default_upn_domain": "example.org", "group_search": {"attribute": "member", "base_dn": "dc=acme,dc=org", "name_attribute'": "cn", "object_class": "group"}, "host": "127.0.0.1", "insecure": "False", "port": "636", "security": "tls", "trusted_ca_file": "/path/to/trusted-certificate-authorities.pem", "user_search": {"attribute": "sAMAccountName", "base_dn": "dc=acme,dc=org", "name_attribute": "displayName", "object_class": "person"}}, "username_prefix": "AD"}

作者

  • Aljaz Kosir (@aljazkosir)

  • Manca Bizjak (@mancabizjak)

  • Miha Dolinar (@mdolin)

  • Tadej Borovsak (@tadeboro)