community.zabbix.zabbix_usergroup – Create/delete/update Zabbix user groups

From Get docs
Ansible/docs/2.10/collections/community/zabbix/zabbix usergroup module


community.zabbix.zabbix_usergroup – Create/delete/update Zabbix user groups

Note

This plugin is part of the community.zabbix collection (version 1.1.0).

To install it use: ansible-galaxy collection install community.zabbix.

To use it in a playbook, specify: community.zabbix.zabbix_usergroup.


Synopsis

  • Create user groups if they do not exist.
  • Delete existing user groups if they exist and are empty.
  • Update existing user groups.

Requirements

The below requirements are needed on the host that executes this module.

  • zabbix-api >= 0.5.4

Parameters

Parameter Choices/Defaults Comments

debug_mode

string

  • disabled

  • enabled

Whether debug mode is enabled or disabled.

gui_access

string

  • default

  • internal
  • LDAP
  • disable

Frontend authentication method of the users in the group.

Possible values:

default - use the system default authentication method;

internal - use internal authentication;

LDAP - use LDAP authentication;

disable - disable access to the frontend.

http_login_password

string

Basic Auth password

http_login_user

string

Basic Auth login

login_password

string / required

Zabbix user password.

login_user

string / required

Zabbix user name.

name

string / required

Name of the user group to create, update or delete.


aliases: user_group

rights

list / elements=dictionary

Permissions to assign to the group

host_group

string / required

Name of the host group to add permission to.

permission

string / required

  • denied
  • read-only
  • read-write

Access level to the host group.

server_url

string / required

URL of Zabbix server, with protocol (http or https). url is an alias for server_url.


aliases: url

state

string

  • present

  • absent

State of the user group.

On present, it will create if user group does not exist or update the user group if the associated data is different.

On absent will remove a user group if it exists.

status

string

  • enabled

  • disabled

Whether the user group is enabled or disabled.

tag_filters

list / elements=dictionary

Tag based permissions to assign to the group

host_group

string / required

Name of the host group to add permission to.

tag

string

Default:

""

Tag name.

value

string

Default:

""

Tag value.

timeout

integer

Default:

10

The timeout of API request (seconds).

validate_certs

boolean

  • no
  • yes

If set to False, SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates.



Notes

Note

  • Only Zabbix >= 4.0 is supported.
  • If you use login_password=zabbix, the word “zabbix” is replaced by “****” in all module output, because login_password uses no_log. See this FAQ for more information.


Examples

# Base create user group example
- name: Create user group
  community.zabbix.zabbix_usergroup:
    server_url: "http://zabbix.example.com/zabbix/"
    login_user: admin
    login_password: secret
    name: ACME
    state: present

# Base create user group with disabled gui access
- name: Create user group with disabled gui access
  community.zabbix.zabbix_usergroup:
    server_url: "http://zabbix.example.com/zabbix/"
    login_user: admin
    login_password: secret
    name: ACME
    gui_access: disable

# Base create user group with permissions
- name: Create user group with permissions
  community.zabbix.zabbix_usergroup:
    server_url: "http://zabbix.example.com/zabbix/"
    login_user: admin
    login_password: secret
    name: ACME
    rights:
        - host_group: Webserver
          permission: read-write
        - host_group: Databaseserver
          permission: read-only
    state: present

# Base create user group with tag permissions
- name: Create user group with tag permissions
  community.zabbix.zabbix_usergroup:
    server_url: "http://zabbix.example.com/zabbix/"
    login_user: admin
    login_password: secret
    name: ACME
    tag_filters:
        - host_group: Webserver
          tag: Application
          value: Java
        - host_group: Discovered hosts
          tag: Service
          value: JIRA
    state: present

# Base delete user groups example
- name: Delete user groups
  community.zabbix.zabbix_usergroup:
    server_url: "http://zabbix.example.com/zabbix/"
    login_user: admin
    login_password: secret
    name: ACME
    state: absent

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description

msg

string

always

The result of the operation


Sample:

User group created: ACME, ID: 42

state

string

on success

User group state at the end of execution.


Sample:

present

usergroup

string

on success

User group name.


Sample:

ACME

usrgrpid

string

on success

User group id, if created, changed or deleted.


Sample:

42




Authors

  • Tobias Birkefeld (@tcraxs)

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/zabbix/zabbix_usergroup_module.html