2013-07-05 33 views
3

我正在使用SonataUserBundle,我試圖給某些用戶提供LIST/EDIT訪問權限。索納塔用戶 - 角色安全訪問被拒絕

config.yml

#... 
sonata_admin: 
    security: 
     handler: sonata.admin.security.handler.role 
#... 

我可以看到在管理中列出的角色ROLE_SONATA_USER_ADMIN_USER_*

security.yml

security: 
    access_decision_manager: 
     strategy: unanimous 
    #... 
    role_hierarchy: 
     #... 
     ROLE_EDIT_USER: 
      - ROLE_SONATA_USER_ADMIN_USER_LIST 
      - ROLE_SONATA_USER_ADMIN_USER_EDIT 
     #... 

ROLE_EDIT_USER不給訪問用戶管理。

我對奏鳴曲沒有防火牆規則。
如果我使用處理程序sonata.admin.security.handler.noop我正在訪問,這證明(我認爲)訪問實際上被奏鳴曲拒絕。

什麼可以拒絕我訪問ROLE_EDIT_USER

回答

2

好吧我沒有看到我也有ROLE_SONATA_ADMIN_USER_*管理員列出,我不明白爲什麼。

所以我必須設置

ROLE_EDIT_USER: 
     - ROLE_SONATA_ADMIN_USER_LIST 
     - ROLE_SONATA_ADMIN_USER_EDIT 

代替

有時Symfony的,似乎我要簡單的事情這麼複雜......

我花10倍的時間更少,Django的配置同樣的事情,例如。
即使這與Symphony比奏鳴曲更相關