Поддержка Проблемы и решения Решение проблемы с недостатком полномочий

  • Модератор Sergey Biryukov

    (@sergeybiryukov)


    Live and Learn

    Проблема

    После активации некоторых плагинов (в частности, WP-DB-Backup и BuddyPress) на локализованных версиях WordPress выдаётся ошибка «У вас недостаточно полномочий для доступа к этой странице».

    Решение

    Необходимо присвоить любые значения (произвольный набор символов) «секретным» константам AUTH_KEY, SECURE_AUTH_KEY, LOGGED_IN_KEY и NONCE_KEY в wp-config.php. Они используются для шифрования cookies и предназначены для заполнения авторами сайтов самостоятельно, поскольку должны быть уникальными для каждого сайта. Как вариант, можно открыть страницу https://api.wordpress.org/secret-key/1.1/salt/, скопировать весь код и заменить соответствующий блок в wp-config.php.

    Подробности

    Вскоре после выхода WordPress 2.9.1 Andrew Nacin заметил, что переменная $wp_default_secret_key, в которой должен содержаться текст по умолчанию для «секретных» констант, не совпадает с переведёнными строками в локализованных дистрибутивах. В результате строка «впишите сюда уникальную фразу» считалась уникальной, и это негативно влияло на безопасность. В качестве решения появилось требование к переводчикам переопределять $wp_default_secret_key в языковых файлах, что и было сделано в WordPress 2.9.2.

    В альтернативных русских сборках из-за отсутствия переменной $wp_default_secret_key в ru_RU.php нет ошибки с активацией плагинов, однако имеется вышеупомянутая проблема с безопасностью.

Просмотр 12 ответов — с 1 по 12 (всего 12)
  • Спасибо, Сергей, что так быстро отреагировал.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Спасибо за привлечение внимания к проблеме 🙂

    После автоматического обновления с WP 3 английской до финальной русской версии столкнулся с такой же проблемой. Данное руководство помогло, спасибо.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Было ощущение, что проблема на самом деле глубже — так оно и оказалось.

    Даже при неизменённых ключах ошибки быть не должно. Если плагин вызывает функцию wp_get_current_user() до подключения языкового файла wp-content/languages/$locale.php (например, в привязке к plugins_loaded), то $wp_default_secret_key ещё не переопределена, и происходит ошибка.

    Опубликовал новый архив с изменением в wp-includes/default-constants.php.
    Написал в багтрекер: http://core.trac.wordpress.org/ticket/14024

    Спасибо, помогло. Только для неопытных хотелось бы попросить немного исправить первый пост:

    Необходимо установить значения «секретных» констант

    на

    Необходимо установить ЛЮБЫЕ значения «секретных» констант (любой набор символов)

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Спасибо за дополнение, изменил формулировку.

    Добрый день! Столкнулся с такой же проблемой. После активации некоторых плагинов выскакивает это окно. Подскажите новичку: что делать, когда блокируется доступ ко всем разделам и где найти этот wp-config.php?

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    1. Файл wp-config.php обычно находится в корневом каталоге сайта. Нужно открыть его с помощью FTP-клиента и сделать вышеуказанные изменения.
    2. Отключить плагины можно также с помощью SQL-запроса в phpMyAdmin:

    UPDATE wp_options SET option_value = '' WHERE option_name = 'active_plugins';

    стоит вордпресс 3.0.1, качал с http://ru.wordpress.org/ не далее чем неделю назад.

    Не работают плагины Hana Code Insert 2.2 и Exec-PHP 4.9 — оба нормально активируются, но при попытке зайти в их настройки пишут — «У вас недостаточно полномочий для доступа к этой странице.»

    Зайти в них пытаюсь под администратором, секретные константы установлены.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Проверил оба плагина в WordPress 3.0.1 — страницы настроек открываются.
    Для обсуждения создайте, пожалуйста, отдельную тему.

    Все вышеописанное не помогло, осталась та же проблема, «У вас недостаточно полномочий для доступа к этой странице.», что еще можно предпринять?

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Рассмотренная здесь причина была актуальна для WordPress 2.9.2 и 3.0.
    Создайте новую тему и напишите, после чего возникла проблема.

Просмотр 12 ответов — с 1 по 12 (всего 12)
  • Тема «Решение проблемы с недостатком полномочий» закрыта для новых ответов.