Контроль доступа для каждой таблицы с SonataAdminBundle

Например, у меня есть две таблицы, к которым SonataAdminBundle обращается.

теперь я хотел бы изменить редактируемые таблицы в зависимости от списка пользователей

Менеджер(ROLL_Admin) -> может редактировать обе таблицы Пользователь(ROLL_User) -> может редактировать только таблицу Item.

services:
    sonata.admin.user:
        class: Acme\AdminBundle\Admin\UserAdmin
        tags:
            - { name: sonata.admin, manager_type: orm, group: Manager Editable, label: "User" }
        arguments:
            - ~
            - Acme\UserBundle\Entity\User
            - 'SonataAdminBundle:CRUD'
        calls:
            - [ setTranslationDomain, [AcmeAdminBundle]]
    sonata.admin.armarket:
        class: Acme\AdminBundle\Admin\ArMarkerAdmin
        tags:
            - { name: sonata.admin, manager_type: orm, group: User Editable, label: "Item" }
        arguments:

Является ли это возможным??

Я знаю, что secutiry.yml предлагает контроль доступа для каждого URL-адреса, но я думаю, что это немного отличается от уровня security.yml.


person whitebear    schedule 02.02.2017    source источник


Ответы (1)


вы можете настроить сонату на использование избирателей безопасности ссылка

Это позволит точно настроить, кто получает доступ к чему.

person Sam Janssens    schedule 02.02.2017