@e-hot

Авторизация в Symfony2 — User account is disabled. Как починить?

Приветствую всех. Нужна помощь - не могу разобраться со следующей ситуацией:
1. Перенес проект с локальной машины с env=dev ( app_dev.php ) на VDS-хостинг ( nginx+php5-fpm+mariadb+phpmyadmin+Symfony2 ) c env=prod ( app.php ).
2. Соединение с БД функционирует - этот момент протестил.
3. Авторизация: используется стандартный функционал Symfony ( сторонние библиотеки не применял ), шифрование bcrypt 12, провайдер - юзеры из БД.
4. Проблема: при авторизации выдает "User account is disabled" - по факту чего поизучал решения в инете - ничего не помогает, в БД.User значение is_active = 1 изначально, на локальной версии проекта подобных проблем не возникало.
5. Вопрос: подскажите, где что еще посмотреть, возможно, описанная проблема возникла из-за смены окружения с dev на prod. Заранее спасибо за помощь.
  • Вопрос задан
  • 260 просмотров
Решения вопроса 1
@jaxel
Ваш класс юзера должен реализовать Symfony\Component\Security\Core\User\AdvancedUserInterface для того, чтобы работать со стандартным компонентом security.

Согласно этому интерфейсу должен быть метод isEnabled(), возвращающий true. В противном случает возникает такая ошибка.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@e-hot Автор вопроса
Спасибо огромное за подсказку!!! Просмотрел у себя сущность User - в ней у меня все прописано как в документации - класс User реализуется от AdvancedUserInterface, есть метод isEnabled() - по идее все должно работать.
Посмотрел в БД в таблицу User, т.к. смутило в классе User описание:
/**
* @ORM\Column(name="is_active", type="integer")
*/
private $isActive;

в таблице User для is_active тип данных bit, изменил на boolean и в классе User в:
/**
* @ORM\Column(name="is_active", type="boolean")
*/
private $isActive;

- все заработало! Вот что значит невнимательность... Но странно, почему тогда у меня на локальной версии проекта не проявлялась такая ситуация...

Спасибо.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
RUVENTS Москва
от 120 000 до 140 000 ₽
TRUECODE Омск
от 130 000 до 160 000 ₽
Networks Санкт-Петербург
от 70 000 до 100 000 ₽