community.zabbix.zabbix_user – Create/update/delete Zabbix users¶
Note
This plugin is part of the community.zabbix collection (version 1.2.0).
To install it use: ansible-galaxy collection install community.zabbix
.
To use it in a playbook, specify: community.zabbix.zabbix_user
.
Requirements¶
The below requirements are needed on the host that executes this module.
python >= 2.6
zabbix-api >= 0.5.4
Parameters¶
Parameter | Choices/Defaults | Comments | ||
---|---|---|---|---|
after_login_url
string
|
Default: ""
|
URL of the page to redirect the user to after logging in.
|
||
alias
string
/ required
|
Name of the user alias in Zabbix.
alias is the unique identifier used and cannot be updated using this module.
|
|||
autologin
boolean
|
|
Whether to enable auto-login.
If enable autologin, cannot enable autologout.
|
||
autologout
string
|
Default: "0"
|
User session life time in seconds. If set to 0, the session will never expire.
If enable autologout, cannot enable autologin.
|
||
http_login_password
string
|
Basic Auth password
|
|||
http_login_user
string
|
Basic Auth login
|
|||
lang
string
|
|
Language code of the user's language.
default can be used with Zabbix version 5.2 or higher. |
||
login_password
string
/ required
|
Zabbix user password.
|
|||
login_user
string
/ required
|
Zabbix user name.
|
|||
name
string
|
Default: ""
|
Name of the user.
|
||
override_passwd
boolean
|
|
Override password for the user.
Password will not be updated on subsequent runs without setting this value to yes.
|
||
passwd
string
|
User's password.
Required unless all of the usrgrps are set to use LDAP as frontend access.
Always required for Zabbix versions lower than 4.0.
|
|||
refresh
string
|
Default: "30"
|
Automatic refresh period in seconds.
|
||
role_name
string
added in 1.2.0 of community.zabbix
|
Default: "User role"
|
User's role.
role_name is required when Zabbix version is 5.2 or higher.
|
||
rows_per_page
string
|
Default: "50"
|
Amount of object rows to show per page.
|
||
server_url
string
/ required
|
URL of Zabbix server, with protocol (http or https).
url is an alias for server_url .aliases: url |
|||
state
string
|
|
State of the user.
On
present , it will create if user does not exist or update the user if the associated data is different.On
absent will remove a user if it exists. |
||
surname
string
|
Default: ""
|
Surname of the user.
|
||
theme
string
|
|
User's theme.
|
||
timeout
integer
|
Default: 10
|
The timeout of API request (seconds).
|
||
timezone
string
added in 1.2.0 of community.zabbix
|
Default: "default"
|
User's time zone.
timezone can be used with Zabbix version 5.2 or higher.
For the full list of supported time zones please refer to https://www.php.net/manual/en/timezones.php
|
||
type
string
|
|
Type of the user.
type is necessary if Zabbix version is 5.0 or lower.
|
||
user_medias
list
/ elements=dictionary
|
Set the user's media.
If not set, makes no changes to media.
|
|||
active
boolean
|
|
Whether the media is enabled.
|
||
mediatype
string
|
Default: "Email"
|
Media type name to set.
|
||
period
string
|
Default: "1-7,00:00-24:00"
|
Time when the notifications can be sent as a time period or user macros separated by a semicolon.
Please review the documentation for more information on the supported time period.
https://www.zabbix.com/documentation/4.0/manual/appendix/time_period
|
||
sendto
string
/ required
|
Address, user name or other identifier of the recipient.
|
|||
severity
dictionary
|
Default: {"average": true, "disaster": true, "high": true, "information": true, "not_classified": true, "warning": true}
|
Trigger severities to send notifications about.
|
||
average
boolean
|
|
severity average enable/disable.
|
||
disaster
boolean
|
|
severity disaster enable/disable.
|
||
high
boolean
|
|
severity high enable/disable.
|
||
information
boolean
|
|
severity information enable/disable.
|
||
not_classified
boolean
|
|
severity not_classified enable/disable.
|
||
warning
boolean
|
|
severity warning enable/disable.
|
||
usrgrps
list
/ elements=string
|
User groups to add the user to.
Required when state=present.
|
|||
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.
|
Notes¶
Note
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¶
- name: create a new zabbix user.
community.zabbix.zabbix_user:
server_url: "http://zabbix.example.com/zabbix/"
login_user: Admin
login_password: secret
alias: example
name: user name
surname: user surname
usrgrps:
- Guests
- Disabled
passwd: password
lang: en_GB
theme: blue-theme
autologin: no
autologout: '0'
refresh: '30'
rows_per_page: '200'
after_login_url: ''
user_medias:
- mediatype: Email
sendto: [email protected]
period: 1-7,00:00-24:00
severity:
not_classified: no
information: yes
warning: yes
average: yes
high: yes
disaster: yes
active: no
type: Zabbix super admin
state: present
- name: delete existing zabbix user.
community.zabbix.zabbix_user:
server_url: "http://zabbix.example.com/zabbix/"
login_user: admin
login_password: secret
alias: example
usrgrps:
- Guests
passwd: password
user_medias:
- sendto: [email protected]
state: absent
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
user_ids
dictionary
|
success |
User id created or changed
Sample:
{'userids': ['5']}
|
Authors¶
sky-joker (@sky-joker)