Мы бежим в проекте, вроде выглядит так:Symfony2 Sonata Админ Bundle как «внешний интерфейс»
Клиенты могут войти в Пульт управления, в которой они могут редактировать информацию. Информация, которую они отредактировали, будет вытаскиваться через REST API другим программным обеспечением (это уже работает в предыдущей версии).
На самом деле база нашего приложения на самом деле такая же, как у SonataAdminBundle. Но, насколько я знаю, я не могу фильтровать данные просмотрены в SonataAdminBundle, с помощью которого пользователь вошел в систему
. Например:
- User1, Пользователь2 и User3 являются сотрудниками из Клиент1. Им нужно только, чтобы увидеть данные, они все добавляемые customer1
- Когда новый клиент Customer2 добавляется к системе некоторые пользователи также создал User10 и User11. Им нужно только, чтобы увидеть информацию о Customer2, а не информацию, добавленную customer1 (и наоборот)
Возможно ли это с помощью только SonataAdminBundle? Или нам нужно создать собственное программное обеспечение, которое сможет это сделать?
Я знаю, что мы должны создавать все разные отношения многоточия или onetomany, но это не проблема. Основной вопрос заключается в том, могу ли я фильтровать данные пользователем, который в настоящий момент зарегистрирован? И при регистрации в качестве администратора или супер администратора не должен применяться фильтр данных.
Заранее благодарен!
Но что-то не представляется возможным только через ACL,? Я нашел связку, которая, вероятно, делает то, что я хочу (https: // github.com/coopTilleuls/CoopTilleulsAclSonataAdminExtensionBundle) Но я думаю, что моя безопасность отсутствует, потому что я получаю только объекты на панели управления, когда обычный пользователь имеет роль: ROLE_ADMIN Когда у пользователя есть роль: ROLE_USER и ROLE_ [BUNDLENAME] _ [ENTITY] _ [GUEST/STAFF/EDITOR/ADMIN], тогда я думаю, что у меня должен быть доступ к просмотру списка сущностей, но я ничего не вижу. – Leroy
Все пользователи должны иметь роли ROLE_ADMIN и ROLE_SONATA_ADMIN, иначе они не смогут использовать сонату. Невозможно ограничить доступ к определенной записи ролью или acl, вы можете устанавливать разрешения только для всей сущности. – rpg600