Esempio n. 1
0
                }

            # add role to user (default if group role not present)
            if 'role' in group:
                users[username]['roleid'] = zabbix.get_role_id(group['role'])

            users[username]['usrgrps'].append({'usrgrpid': z_group_id})

    # Updating users
    for user in users:
        # create or update Zabbix users from LDAP
        zabbix.user_update_or_create(users[user])

    # remove users
    # get all Zabbix users
    z_users = zabbix.get_ldap_users()

    # check difference between Zabbix and actual LDAP users
    delete_users = [u['userid'] for u in z_users if u['alias'] not in users]

    # delete users
    try:
        zabbix.delete_users(delete_users)

    except ZabbixAPIException as e:
        logging.error("Cannot delete Zabbix users.")
        logging.error(e.data)
        logging.error('Disabling those users.')
        logging.error(
            'Resolve the displayed errors and delete the users manually or the next run will delete them.'
        )