Easy admin. Как проверить путь?

Осваиваю Symfony 5. Делаю админку на базе Easy admin. При переходе на просмотр сущности адресная строка в браузере выгляди так: sf/admin/?entity=Product&action=list&menuIndex=2&s... Т.е. если Product заменить на User, произойдет переход на сущность User. Более того, можно даже ввести: sf/admin/?entity=Product&action=show&menuIndex=2&s... B поменяв show на edit, спокойно себе отредактировать данные. В системе имеется система ролей, поэтому такие действия недопустимы. Вопрос: где и как лучше всего проверить параметры адресной строки, проанализировать их и если необходимо, сделать редирект. Или Easy admin не очень для таких условий подходит и есть смысл перейти на Sonata? Заранее благодарен.


Ответы (1 шт):

Автор решения: Daniel Protopopov

Когда вы пойдёте дальше - то узнаете о контроле доступа, через который сможете ограничивать доступ к ресурсам. EasyAdmin и его аналоги в других системах построены на шаблонах, в том числе и шаблонах роутинга, которые сделаны для конечного удобства и быстроты разработки.

У Symfony достаточно расширений-bundles для контроля доступа, базовый из них - это Voters, используя который вы сможете контролировать кто и к чему имеет доступ, и определять это даже в случае изменения адресной строки, отказывая либо разрешая доступ к ресурсу-Entity, либо действию с ним (создание, редактирование, просмотр или удаление)

→ Ссылка