Безопасность Symfony: авторизован, но не предоставлен с момента обновления до 5.0

#symfony #symfony5

#symfony #symfony5

Вопрос:

У меня есть веб-сайт, отлично работающий с Symfony 4.3 с активной защитой и разными ролями для разных пользователей. Все работает отлично.

Сегодня я решил обновить веб-сайт до Symfony 4.4, затем 5.0, затем 5.1.

Начиная с версии 5.0, система безопасности зависает: я правильно вошел в систему, но все тесты (например, is_granted от twig) больше не работают, например, если избиратель по умолчанию возвращает false . Роли правильно считываются из базы данных (проверяется с помощью дампа).

Я думаю, что это может быть из файла конфигурации, но не могу понять, какой именно…

Кстати: я следую объяснениям из SymfonyCasts

Как я могу исправить эту проблему?

Комментарии:

1. Я читал, что symfony полностью удалил is_granted в новой версии, поскольку она устарела. Они представили новую систему аутентификации, которая будет использоваться в 6.0 symfony.com/doc/current/security /…

2. Можете ли вы показать какой-нибудь пример? Что было устаревшим, так это передача массива атрибутов для проверки. Вы можете установить профилировщик и проверить вкладку «Безопасность», чтобы узнать, какие избиратели вызываются и какую стратегию он применяет.