# salt.states.zabbix_user

Management of Zabbix users.

codeauthor:

  Jiri Kotlin <jiri.kotlin@ultimum.io>

salt.states.zabbix_user.absent(name, **kwargs)

  Ensures that the user does not exist, eventually delete user.

  New in version 2016.3.0.

  Parameters:

    - name -- user alias

    - _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)

    - _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)

    - _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)

      George:
          zabbix_user.absent

salt.states.zabbix_user.admin_password_present(name, password=None, **kwargs)
  Initial change of Zabbix Admin password to password taken from one of the sources (only the most prioritized one):

    1. 'password' parameter

    2. '_connection_password' parameter

    3. pillar 'zabbix.password' setting

  1. Tries to log in as Admin with password found in state password parameter or _connection_password or pillar or default zabbix password in this precise order, if any of them is present.

  2. If one of above passwords matches, it tries to change the password to the most prioritized one.

  3. If not able to connect with any password then it fails.

  Parameters:

    - name -- Just a name of state

    - password -- Optional - desired password for Admin to be set

    - _connection_user -- Optional - Ignored in this state (always assumed 'Admin')

    - _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)

    - _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)

      # password taken from pillar or _connection_password
      zabbix-admin-password:
          zabbix_user.admin_password_present

      # directly set password
      zabbix-admin-password:
          zabbix_user.admin_password_present:
              - password: SECRET_PASS

salt.states.zabbix_user.present(alias, passwd, usrgrps, medias=None, password_reset=False, **kwargs)

  Ensures that the user exists, eventually creates new user. NOTE: use argument firstname instead of name to not mess values with name from salt sls.

  New in version 2016.3.0.

  Parameters:

    - alias -- user alias

    - passwd -- user's password

    - usrgrps -- user groups to add the user to

    - medias -- Optional - user's medias to create

    - password_reset -- whether or not to reset password at update

    - _connection_user -- Optional - zabbix user (can also be set in opts or pillar, see module's docstring)

    - _connection_password -- Optional - zabbix password (can also be set in opts or pillar, see module's docstring)

    - _connection_url -- Optional - url of zabbix frontend (can also be set in opts, pillar, see module's docstring)

    - firstname -- string with firstname of the user, use 'firstname' instead of 'name' parameter to not mess with value supplied from Salt sls file.

      make_user:
          zabbix_user.present:
              - alias: George
              - passwd: donottellanyonE@456x
              - password_reset: True
              - usrgrps:
                  - 13
                  - 7
              - medias:
                  - me@example.com:
                      - mediatype: mail
                      - period: '1-7,00:00-24:00'
                      - severity: NIWAHD
                  - make_jabber:
                      - active: true
                      - mediatype: jabber
                      - period: '1-5,08:00-19:00'
                      - sendto: jabbera@example.com
                  - text_me_morning_disabled:
                      - active: false
                      - mediatype: sms
                      - period: '1-5,09:30-10:00'
                      - severity: D
                      - sendto: '+42032132588568'