2010-11-10 3 views
0

Я использую sfDoctrineGuard 5.x и я настроили свои учетные данные модуля в security.yml так:Symfony учетных проблемы с sfDoctrineGuard 5.x

all: 
    is_secure: true 
    credentials: [ admin ] 

и мое приложение/бэкенд/конфигурация/security.yml :

default: 
    is_secure: true 

Я проверил с помощью:

$this->getUser()->hasPermission('vendor'): возвращаемые правда $this->getUser()->hasPermission('admin'): вернулся ложным

поэтому я думаю, что пользователи наследуют учетные данные. Но пользователи с другими учетными данными могут получить доступ к модулю!

У меня есть 3 типа группового администратора, клиента и поставщика и аналогичные разрешения: admin, client and vendor!

И пользователи, имеющие учетные данные «клиент» или «поставщик», могут получить доступ к модулю, игнорируя учетные данные, определенные в security.yml после входа в систему!

В чем может быть проблема? Может ли кто-нибудь дать мне какое-то направление?

О, я использую sfForkedApplyPlugin для регистрации и редактирования профиля, что я не думаю, что вызываю проблему, поскольку я тестирую с помощью предопределенных данных прибора.

ответ

1

Я понял проблему сейчас! Это было * is_super_admin * Поле в * sf_guard_user * таблица, которая была установлена ​​в 1 для всех моих фиктивных пользователей в fixture.yml :)! Именно поэтому каждый пользователь получал доступ ко всем модулям, минуя учетные данные!

Смежные вопросы