Принудительный вход пользователя в Symfony 2
Всякий раз, когда я пытаюсь удалить конфигурацию anonymous: ~ в системе безопасности.в формате YML, системы заканчивается, возвращается ошибка 310: перенаправление петли.
Это конфигурация до сих пор:
firewalls:
secured_area:
pattern: ^/
#anonymous: ~
form_login:
check_path: /login_check
login_path: /login
logout:
path: /logout
1 ответ:
Попробуйте вот что:
firewalls: secured_area: pattern: ^/ #anonymous: ~ form_login: check_path: /login_check login_path: /login logout: path: /logout login_firewall: pattern: ^/login$ anonymous: ~Смотрите документ http://symfony.com/doc/current/book/security.html#book-security-common-pitfalls
Убедитесь, что страница входа не защищена
Кроме того, убедитесь, что страница входа не требует просмотра каких-либо ролей. Например, следующая конфигурация-которая требует роли ROLE_ADMIN для всех url (включая URL / login), вызовет цикл перенаправления:
access_control: - { path: ^/, roles: ROLE_ADMIN }Удаление контроля доступа на / login URL исправления проблема:
access_control: - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/, roles: ROLE_ADMIN }Кроме того, если ваш брандмауэр не позволяет анонимным пользователям, вам нужно создать специальный брандмауэр, который позволяет анонимным пользователям входить на страницу входа:
firewalls: login_firewall: pattern: ^/login$ anonymous: ~ secured_area: pattern: ^/ form_login: ~
Comments