Beispiel #1
0
def kill_user(user_id, ip_address):
    if not validate_integer(user_id):
        return False
    try:
        ibs = IBSManager()
        if IBSUserInfo.objects.filter(user=user_id).exists():
            ibs_uid = IBSUserInfo.objects.get(user=user_id).ibs_uid
        else:
            ibs_uid = ibs.get_user_id_by_username(
                User.objects.get(pk=user_id).username)
        if ibs.kill_user(ibs_uid):
            return True
        failed_user_id = read_config('service_failed_users', 3306)
        failed_user_ids = failed_user_id.split(',')
        for f in failed_user_ids:
            if IBSUserInfo.objects.filter(user=f).exists():
                f_ibi = IBSUserInfo.objects.get(user=f).ibs_uid
            elif ip_address is not None:
                fu = User.objects.get(pk=f)
                f_ibi = ibs.get_user_id_by_username(fu.username, True)
            else:
                return False
            connections = ibs.get_user_connection_info_1(f_ibi)
            for c in connections:
                if c[4] == ip_address:
                    ibs = IBSManager()
                    if ibs.kill_failed_user(c[2], f_ibi, c[0]):
                        return True
        return False
    except Exception as e:
        print e.message
        return False
Beispiel #2
0
def get_username_from_ras(ip_address, failed_ibs_id):
    try:
        ibs = IBSManager()
        online = ibs.get_user_connection_info_1(failed_ibs_id)
        for o in online:
            try:
                if o[4] == ip_address:
                    ras = o[0]
                    util = MKUtils(ras, read_config('ras_username', 'saeed'),
                                   read_config('ras_password', 'saeed'))
                    return util.get_user_by_ip(ip_address)
            except Exception as e:
                print e.message
                continue
    except Exception as e:
        print e.message