On this page
community.zabbix.zabbix_usergroup – Create/delete/update Zabbix user groups
Note
This plugin is part of the community.zabbix collection (version 1.5.0).
You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.
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
         | 
      
       
  | 
      
        
        Whether debug mode is enabled or disabled.
         | 
     |
| gui_access
        
        string
         | 
      
       
  | 
      
        
        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.
        
       
        If not set the environment variable  ZABBIX_PASSWORD will be used.
        | 
     ||
| login_user
        
        string / required
         | 
      
        
        Zabbix user name.
        
       
        If not set the environment variable  ZABBIX_USERNAME will be used.
        | 
     ||
| 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
         | 
      
       
  | 
      
        
        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.
       
        If not set the environment variable  
       ZABBIX_SERVER will be used.
       aliases: url  | 
     ||
| state
        
        string
         | 
      
       
  | 
      
        
        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
         | 
      
       
  | 
      
        
        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
         | 
      
       
  | 
      
        
        If set to False, SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates.
        
       
        If not set the environment variable  ZABBIX_VALIDATE_CERTS will be used.
        | 
     |
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–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/latest/collections/community/zabbix/zabbix_usergroup_module.html