WordPress: У вас недостаточно полномочий для доступа к этой странице

25 июля, 2010 Рубрики: CMS, PHP, Web, Wordpress

ну сегодня меня пробило :) 3 поста на блоге за один день….

В общем, в процессе работы с блогом, т.к. постоянно происходит наполнение новой информацией, пришлось задуматься о бэкапе, бэкапе как файлов, так и базы данных. Соответственно, пошел по пути меньшего сопротивления, то есть установкой плагина. Название плагина: WP-DB-Backup. В принципе, довольно удобный плагин. В заданное время шлет на почту архив базы, сжатый в gzip, можно так же скачать архив текущей баз прямо из админ-панели.

Wordpress, недостаточно полномочий

У вас недостаточно полномочий для доступа к этой странице

Но есть некоторый нюанс у данного плагина при установке. Даже не нюанс, а проблема :) Проблема заключается в следующем: после активации плагина на локализованных версиях WordPress выдаётся ошибка «У вас недостаточно полномочий для доступа к этой странице». Собственно, с чем столкнулся и я. На форуме поддержки 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 нет ошибки с активацией плагинов, однако имеется вышеупомянутая проблема с безопасностью.

Вот такие дела.

С Уважением, Mc.Sim!




Теги: , , , , ,

14 комментариев к “WordPress: У вас недостаточно полномочий для доступа к этой странице”

  1. LEGION
    25 декабря, 2010 at 09:23
    1

    Здравствуйте. Спасибо за статью, сам не так давно столкнулся с проблемой недостатка полномочий при редактировании файлов темы из админки. По ходу прочтения статьи возникли некоторые вопросы которые и хотелось бы озвучить:
    1. По указной у вас ссылке генерируются 8 фраз, а в wp-config.php у меня их только 4 (версия вп – 2.9.2), AUTH_SALT, SECURE_AUTH_SALT, LOGGED_IN_SALT, NONCE_SALT отсутствуют. Мне подставить все что сгенерировалось или только значения тех констант которые были у меня изначально?
    2. Нашел в wp-settings.php строчку, отвечающую за wp_default_secret_key, в ней фраза put your unique phrase here. Туда действительно надо что то вписывать или лучше оставить как есть??
    Заранее извиняюсь за возможную реакцию, которая может возникнуть после прочтения комментария (“Уууу, ламеры набигають!!”), но к файлам движка, в отличие от всего что касается тем оформления, я отношусь весьма трепетно, не хотелось бы своими кривыми ручками, по незнанию дров наломать…

    • 25 декабря, 2010 at 12:18
      2

      Доброго времени!
      Ну во-первых, я бы посоветовал обновить ВП до последней версии. А по существу по вопросам:
      1. нужно вставлять только те константы, которые есть.
      2. Мне достаточно было, чтобы избавиться от проблемы, вставить константы только в wp-config.php, в wp-settings.php вообще ничего не редактировал.
      P.S. Действительно, посмотрел на текущий конфиг (wp-config.php), там осталось только 4 константы.
      P.S. Не нужно извиняться. Сам был когда-то с кучей вопросов. :)

  2. 14 февраля, 2011 at 21:32
    3

    У меня подобная проблема возникла при установке плагина Theme Test Drive 2.8.1 на WordPress 3.0.5

    Помогло удаление папки плагина

    • 14 февраля, 2011 at 22:42
      4

      Ну вот, а можно ничего не удалять, а поправить файл wp-config.php и продолжать пользоваться необходимыми плагинами. :)

  3. Николай
    14 марта, 2012 at 11:06
    5

    Разработчик сайта установил плагин advanced-access-manager.
    У меня права администратора.
    До поры до времени я этим плагином работал без проблем.
    В один прекрасный момент плагин потребовал обновления, в админке при кликании на иконку плагина AAM ни чего не выводилось.
    Как только обновил плаги и иконка пропала.
    Пробую из админки зайти напрямую – /wp-admin/admin.php?page=advanced-access-manager/mvb_wp_access.php
    Пишет “У вас недостаточно полномочий для доступа к этой странице.”.
    То же самое происходит и когда захожу под суперадмином.
    При этом сам плагин свою функцию выполняет, то есть работает.
    Что делать?

    • 14 марта, 2012 at 22:41
      6

      Тут без лога веб сервера не обойтись.
      Можно попробовать отключить данный плагин через mysql.

      • Николай
        15 марта, 2012 at 07:38
        7

        Логи сервера смотрел. Ошибок нет. Плагин работает, но во в управление не пускает.

        • 15 марта, 2012 at 15:19
          8

          можно перенести сайт на локальный хост, установив предварительно, например – Denwer. Удалить файлы плагина и попытаться войти в админку. Если войдет, то вручную установить плагин по новой. Если не войдет, то можно попробовать заменить файлы вордпресса на оригинальные (http://codex.wordpress.org/ru:Upgrading_WordPress#.D0.A8.D0.B0.D0.B3_1:_.D0.97.D0.B0.D0.BC.D0.B5.D0.BD.D0.B0_.D1.84.D0.B0.D0.B9.D0.BB.D0.BE.D0.B2_WordPress).
          потом перенести сайт назад на хостинг

          • Николай
            15 марта, 2012 at 18:39
            9

            Вот перенос на локальный это мысль. Завтра попробую.

  4. 14 апреля, 2012 at 20:07
    10

    Спасибо за статью ! Помогло !!!

  5. Денис
    23 июня, 2012 at 23:00
    11

    Большое спасибо! Единственное решение которое в моем случае помогло.

  6. василий
    15 декабря, 2015 at 14:35
    12

    А мне это не помогло Необходимо присвоить любые значения (произвольный набор символов

    • 3 августа, 2016 at 22:03
      13

      Спасибо. Тоже полезно знать.

  7. 15 декабря, 2016 at 19:24
    14

    Замена секретных констант не помогла, но оказалось дело немного в другом – в wp-config.php константа DISALLOW_FILE_EDIT почему-то была true.

Написать комментарий