0

我已经广泛阅读并尝试过示例,但仍然无法掌握 Symfony2 ROLEs 和 Sonata Admin 的窍门。我有四个级别的用户,

  • SuperAdmin 基本上是我的开发人员
  • 作为应用程序所有者的管理员。他可以访问除用户/组管理之外的所有内容。管理员添加了一个代理,该代理将在系统中收到一封带有凭据的电子邮件
  • 然后添加为该项目工作的人员(促进者)的雇员的代理机构
  • 作为机构雇员的协调员,他们将字段条目输入系统

我想在 Sonata Admin 中:

  • 引导者只能看到条目管理菜单
  • 机构只能查看进入和促进者管理菜单
  • 管理员只能查看代理、入口和促进者管理菜单
  • SuperAdmin 查看其他所有内容,包括 SonataUserBundle 生成的用户和组管理

这是我的 security.yml 文件的样子

security:
role_hierarchy:
    ROLE_FACILITATOR:   
        -   ROLE_USER
        -   ROLE_SONATA_ADMIN
        -   ROLE_SONATA_ADMIN_ENTRY_EDIT
        -   ROLE_SONATA_ADMIN_ENTRY_LIST
        -   ROLE_SONATA_ADMIN_ENTRY_CREATE
        -   ROLE_SONATA_ADMIN_ENTRY_VIEW
        -   ROLE_SONATA_ADMIN_ENTRY_DELETE
    ROLE_AGENCY:
        -   ROLE_FACILITATOR
        -   ROLE_SONATA_ADMIN_FACILITATOR_EDIT
        -   ROLE_SONATA_ADMIN_FACILITATOR_LIST
        -   ROLE_SONATA_ADMIN_FACILITATOR_CREATE
        -   ROLE_SONATA_ADMIN_FACILITATOR_VIEW
        -   ROLE_SONATA_ADMIN_FACILITATOR_DELETE
    ROLE_OLX_ADMIN:
        -   ROLE_AGENCY
        -   ROLE_SONATA_ADMIN
        -   ROLE_SONATA_ADMIN_AGENCY_EDIT
        -   ROLE_SONATA_ADMIN_AGENCY_LIST
        -   ROLE_SONATA_ADMIN_AGENCY_CREATE
        -   ROLE_SONATA_ADMIN_AGENCY_VIEW
        -   ROLE_SONATA_ADMIN_AGENCY_DELETE
    ROLE_SUPER_ADMIN: 
        -   ROLE_OLX_ADMIN
        -   ROLE_ALLOWED_TO_SWITCHS
4

0 回答 0