community.general.consul_binding_rule 模块 – 操作 Consul 绑定规则

注意

此模块是 community.general 集合(版本 10.1.0)的一部分。

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

要安装它,请使用:ansible-galaxy collection install community.general

要在剧本中使用它,请指定:community.general.consul_binding_rule

community.general 8.3.0 中的新增功能

概要

参数

参数

注释

auth_method

字符串 / 必需

此规则适用的身份验证方法的名称。

bind_name

字符串

登录时绑定到令牌的名称。

它绑定到的内容可以通过 bind_type 参数的不同值进行调整。

bind_type

字符串

指定绑定规则如何影响登录时创建的令牌。

选择

  • "service"

  • "node"

  • "role"

  • "templated-policy"

bind_vars

字典

bind_type 设置为 templated-policy 时,指定模板化策略变量。

ca_path

字符串

用于 https 连接的 CA 捆绑包

description

字符串

绑定规则的自由格式人类可读描述。

host

字符串

Consul 代理的主机,默认为 localhost

默认: "localhost"

name

字符串 / 必需

指定绑定规则的名称。

注意:这用于标识绑定规则。但由于 API 不支持名称,它会作为前缀添加到描述中。

port

整数

Consul 代理正在运行的端口。

默认: 8500

scheme

字符串

Consul 代理正在运行的协议方案。默认为 http,对于安全连接,可以设置为 https

默认: "http"

selector

字符串

指定用于将此规则与从身份验证方法验证返回的有效身份进行匹配的表达式。

如果为空,则此绑定规则匹配从身份验证方法返回的所有有效身份。

state

字符串

绑定规则应存在还是不存在。

选择

  • "present" ← (默认)

  • "absent"

token

字符串

用于授权的令牌。

validate_certs

布尔值

是否验证 Consul 代理的 TLS 证书。

选择

  • false

  • true ← (默认)

属性

属性

支持

描述

action_group

操作组: community.general.consul

module_defaults 中使用 group/community.general.consul 为此模块设置默认值。

check_mode

支持:完全支持

可以在 check_mode 中运行,并返回更改状态预测,而无需修改目标。

diff_mode

支持: 部分支持

在检查模式下,差异信息会遗漏操作属性。

当处于差异模式时,将返回已更改(或在 check_mode 中可能需要更改)的详细信息。

示例

- name: Create a binding rule
  community.general.consul_binding_rule:
    name: my_name
    description: example rule
    auth_method: minikube
    bind_type: service
    bind_name: "{{ serviceaccount.name }}"
    token: "{{ consul_management_token }}"

- name: Remove a binding rule
  community.general.consul_binding_rule:
    name: my_name
    auth_method: minikube
    state: absent

返回值

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

描述

binding_rule

字典

Consul HTTP API 返回的绑定规则。

返回: 总是

示例: {"AuthMethod": "minikube", "BindName": "{{ serviceaccount.name }}", "BindType": "service", "CreateIndex": 30, "Description": "my_name: example rule", "ID": "59c8a237-e481-4239-9202-45f117950c5f", "ModifyIndex": 33, "Selector": "serviceaccount.namespace==default"}

operation

字符串

执行的操作。

返回: 已更改

示例: "update"

作者

  • Florian Apolloner (@apollo13)