ngine_io.cloudstack.cs_user 模块 – 管理基于 Apache CloudStack 云的用户。

注意

此模块是 ngine_io.cloudstack 集合 (版本 2.5.0) 的一部分。

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

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

要在剧本中使用它,请指定: ngine_io.cloudstack.cs_user

ngine_io.cloudstack 0.1.0 中的新增功能

概要

  • 创建、更新、禁用、锁定、启用和删除用户。

需求

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

  • python >= 2.6

  • cs >= 0.9.0

参数

参数

注释

account

字符串

将在此帐户下创建用户。

state=present 中是必需的。

api_http_method

字符串

用于查询 API 端点的 HTTP 方法。

如果没有给出,则考虑 CLOUDSTACK_METHOD 环境变量。

选项

  • "get" ← (默认)

  • "post"

api_key

字符串 / 必需

CloudStack API 的 API 密钥。

如果没有给出,则考虑 CLOUDSTACK_KEY 环境变量。

api_secret

字符串 / 必需

CloudStack API 的密钥。

如果未设置,则考虑 CLOUDSTACK_SECRET 环境变量。

api_timeout

整数

HTTP 超时(秒)。

如果没有给出,则考虑 CLOUDSTACK_TIMEOUT 环境变量。

默认值: 10

api_url

字符串 / 必需

CloudStack API 的 URL,例如 https://cloud.example.com/client/api

如果没有给出,则考虑 CLOUDSTACK_ENDPOINT 环境变量。

api_verify_ssl_cert

字符串

验证 CA 权威证书文件。

如果没有给出,则考虑 CLOUDSTACK_VERIFY 环境变量。

domain

字符串

用户所属的域。

默认值: "ROOT"

email

字符串

用户的邮箱。

state=present 中是必需的。

first_name

字符串

用户的姓名。

state=present 中是必需的。

keys_registered

布尔值

是否应生成用户的 API 密钥。

注意:密钥无法再通过 API 删除。

选项

  • false ← (默认)

  • true

last_name

字符串

用户的姓氏。

state=present 中是必需的。

password

字符串

要创建的用户密码。

state=present 中是必需的。

仅在创建时考虑,如果用户存在则不会更新。

poll_async

布尔值

轮询异步作业,直到作业完成。

选项

  • false

  • true ← (默认)

state

字符串

用户的状态。

unlockedenabled 的别名。

选项

  • "present" ← (默认)

  • "absent"

  • "enabled"

  • "disabled"

  • "locked"

  • "unlocked"

timezone

字符串

用户的时区。

username

字符串 / 必需

用户的用户名。

validate_certs

布尔值

ngine_io.cloudstack 2.4.0 中新增

如果 false,则不会验证 SSL 证书。

如果没有给出,则考虑 CLOUDSTACK_DANGEROUS_NO_TLS_VERIFY 环境变量。

这仅应在使用自签名证书的个人控制站点上使用。

选项

  • false

  • true ← (默认)

备注

注意

  • 有关 cloudstack 模块的详细指南,请参阅 CloudStack 云指南

  • 此模块支持检查模式。

示例

- name: Create an user in domain 'CUSTOMERS'
  ngine_io.cloudstack.cs_user:
    account: developers
    username: johndoe
    password: S3Cur3
    last_name: Doe
    first_name: John
    email: [email protected]
    domain: CUSTOMERS

- name: Lock an existing user in domain 'CUSTOMERS'
  ngine_io.cloudstack.cs_user:
    username: johndoe
    domain: CUSTOMERS
    state: locked

- name: Disable an existing user in domain 'CUSTOMERS'
  ngine_io.cloudstack.cs_user:
    username: johndoe
    domain: CUSTOMERS
    state: disabled

- name: Enable/unlock an existing user in domain 'CUSTOMERS'
  ngine_io.cloudstack.cs_user:
    username: johndoe
    domain: CUSTOMERS
    state: enabled

- name: Remove an user in domain 'CUSTOMERS'
  ngine_io.cloudstack.cs_user:
    name: customer_xy
    domain: CUSTOMERS
    state: absent

返回值

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

Key

描述

account

字符串

用户的账户名称。

返回值: 成功

示例: "developers"

account_type

字符串

账户类型。

返回值: 成功

示例: "user"

created

字符串

用户创建日期。

返回值: 成功

示例: "Doe"

domain

字符串

用户所属的域。

返回值: 成功

示例: "ROOT"

email

字符串

用户的邮箱地址。

返回值: 成功

示例: "[email protected]"

fist_name

字符串

用户的姓名。

返回值: 成功

示例: "John"

id

字符串

用户的UUID。

返回值: 成功

示例: "87b1e0ce-4e01-11e4-bb66-0050569e64b8"

last_name

字符串

用户的姓氏。

返回值: 成功

示例: "Doe"

state

字符串

用户的状态。

返回值: 成功

示例: "enabled"

timezone

字符串

用户的时区。

返回值: 成功

示例: "enabled"

user_api_key

字符串

用户的API密钥。

返回值: 成功

示例: "JLhcg8VWi8DoFqL2sSLZMXmGojcLnFrOBTipvBHJjySODcV4mCOo29W2duzPv5cALaZnXj5QxDx3xQfaQt3DKg"

user_api_secret

字符串

用户的API密钥秘钥。

返回值: 成功

示例: "FUELo3LB9fa1UopjTLPdqLv_6OXQMJZv9g9N4B_Ao3HFz8d6IGFCV9MbPFNM8mwz00wbMevja1DoUNDvI8C9-g"

username

字符串

用户的用户名。

返回值: 成功

示例: "johndoe"

作者

  • René Moser (@resmo)