Symfony sfGuardPlugin восстановление пароля - PullRequest
1 голос
/ 23 февраля 2011

Я поддерживаю сайт, созданный на Symfony. Были проблемы с какой-то "страницей администратора".

Хотя я не очень много знал обо всем этом, читая журналы и сравнивая последние резервные копии, я думаю, что смог решить проблему (некоторые разработчики удалили маршрут, но не исправили шаблон).

У меня нет пароля администратора к сайту, но у меня есть root-доступ к серверу и супер-доступ к базе данных (в данном случае postgres).

Можете ли вы помочь мне, как создать себе учетную запись, не зная текущих паролей?

Отказ от ответственности: я не очень разбираюсь в интерфейсе ООП PHP, так как я не программист, а системный администратор.

Редактировать

symfony version 1.0.16

Ответы [ 2 ]

4 голосов
/ 23 февраля 2011

Попробуйте войти на сервер и перейти в корневой каталог проекта Symfony.Там, вероятно, есть сценарий / ссылка «symfony» (детали зависят от вашей ОС и от того, как настроен Symfony; вы можете просто запустить ./symfony, а не php symfony).Запустите это, чтобы увидеть, работают ли эти основы:

php symfony

Если это работает, вы должны получить список возможных задач, которые вы можете выполнить.Если вы используете sfGuardPlugin, вы должны увидеть некоторые задачи, такие как guard:create-user.

. Чтобы получить больше информации о задаче, попробуйте что-то вроде:

php symfony help guard:create-user

Но, в основном, предполагаядовольно современная установка и плагин Symfony, попробуйте что-то вроде:

php symfony guard:create-user --env=prod newusername newpassword

(опция --env = prod создает пользователя в производственной среде, что, вероятно, то, что вам нужно.)

Если есть задачи только для суперпользователя, которые вы хотите выполнить, попробуйте также сделать это:

php symfony guard:promote newusername

Это даст новым привилегиям суперпользователя пользователя.

Вы, вероятно, такженайдите задачу guard:change-password, которая просто сбросит пароль для данного пользователя.

1 голос
/ 23 февраля 2011

Я закончил редактировать файл с именем:

plugins/sfGuardPlugin/lib/validator/sfGuardUserValidator.class.php

, здесь происходит аутентификация.Я добавил несколько строк, чтобы обойти проверку действительного пароля для уже созданного пользователя.

...