Битая ссылка на User Manager



  • Всем добра!
    Не могу понять - на последней ревизии pfsense (2.4.4-RELEASE-p3 (amd64) ) ссылка на юзер мереджера ведёт на смену пароля текущему юзеру. Никакого доступа к ДРУГИМ юзерам через GUI - нет. Но если использовать старые ссылки - то всё работает.
    Что за дела? кто сталкивался?



  • Ставил с нуля или обновлял до p3? Как выглядит ссылка если навести мышой на пункт меню User Manager?



  • товарищ, не задавайте глупых вопросов. Давайте по делу. Если хотите помочь - посмотрите у себя, и скажите "как есть".
    У меня более 30 тачек обновлены до p3, и только 1 остался на p2. И только на нём всё нормально.



  • https://yadi.sk/i/G2taeIIjyd8bZQ выглядит вот так



  • https://redmine.pfsense.org/issues/9541 баг уже описан



  • @derwin Насколько вижу , ноги растут отсюда
    те получается , если нет прав на эту страницу , то дает другую ссылку
    я правильно понимаю , что Вы пытаетесь это сделать не пользователем admin ?

    if (!isAllowedPage("system_usermanager.php*")) {
    	$system_menu[] = array(gettext("User Manager"), "/system_usermanager_passwordmg.php");
    } else {
    	$system_menu[] = array(gettext("User Manager"), "/system_usermanager.php");
    }
    


  • @Konstanti
    А причём тут пользователь admin ?
    isAllowedPage не подразумевает админа, а подразумевает разрешение на доступ к странице. Простой парсер свойств по массиву. В коде была опечатка, её исправили.



  • @derwin Почему не подразумевает ?

    function isAllowedPage($page) {
    	global $_SESSION;
    
    
    	$username = $_SESSION['Username'];
    
    	if (!isset($username)) {
    		return false;
    	}
    
    	if (isAdminUID($username)) {
    		return true;
    	}
    

    Исправили , и хорошо



  • @Konstanti said in Битая ссылка на User Manager:
    ну тогда уж isAdminUID() покажите пожалуйста



  • @derwin
    Там уже идет вызов след функции , которая возвращает массив свойств пользователя

    /* admin/root access check */
    	$user = getUserEntry($username);
    	if (isset($user)) {
    		if (isset($user['uid'])) {
    			if ($user['uid'] == 0) {
    				return true;
    			}
    		}
    	}
    

    т е , если в конфиге у пользователя uid =0 ( как и у пользователя admin), то права доступа к странице предоставляются .
    Я так понимаю , что проблемы были у пользователей с именем отличным от имени admin. Хотя могу и заблуждаться . Я с такой ошибкой не встречался



  • @derwin прошу прощения если оскорбил глупыми вопросами. Если это поможет - у меня на 5 экземплярах обновилось до p3 без последствий. Я не сталкивался с такой ошибкой поэтому и задал уточняющие вопросы. Ну если ошибку уже описали и исправили значит хорошо.



  • Можно уточнить - что значит исправили? Я столкнулся с этой же проблемой 3 часа назад, сразу же после обновления. Нужно подождать более новых патчей просто?



  • @arttemko
    Можете сами подредактировать нужный файл
    в 2-х строчках убрать знак "*"
    перед редактированием ( если сами все делать будете) крайне рекомендую сохранить куда-нить оригинальный файл и текущий конфиг

    https://redmine.pfsense.org/projects/pfsense/repository/revisions/cf529cbe33ae53f3f95b37a227da141b97465f20/diff/src/usr/local/www/head.inc


Log in to reply