2013-12-12 66 views
1

作用全局访问,我想拥有它,所以我可以在Symfony2中索纳塔管理,每不使用FOSUserBundle

这个定义每个角色的动作是什么,我现在有

role_hierarchy: 
     ROLE_MEMBER: ROLE_GUEST 
     ROLE_STAFF: ROLE_MEMBER 
     ROLE_ADMIN: [ROLE_STAFF, ROLE_SONATA_OWNER, ADMIN, OWNER] 

sonata_admin: 
    #title_logo: bundles/acmedemo/img/fancy_acme_logo.png 
    security: 
     handler: sonata.admin.security.handler.acl 
     # acl security information 
     information: 
      GUEST: [] 
      STAFF: [EDIT, LIST, CREATE] 
      EDITOR: [OPERATOR, EXPORT] 
      ADMIN: [MASTER] 
      OWNER: [OWNER] 
     # permissions not related to an object instance and also to be available when objects do not exist 
     # the DELETE admin permission means the user is allowed to batch delete objects 
     admin_permissions: [CREATE, LIST, DELETE, UNDELETE, EXPORT, OPERATOR, MASTER] 
     # permission related to the objects 
     object_permissions: [VIEW, EDIT, DELETE, UNDELETE, OPERATOR, MASTER, OWNER] 

我在找东西让我能够授予ROLE_ADMIN SONATA ROLE OWNER例如,我真的不知道如何做到这一点,而且奏鸣曲文档更适合于F OSUserBundle,我不使用。

任何帮助赞赏

回答

0

如果你只是希望给予ROLE_ADMIN所有用户谁已经有ROLE_SONATA_OWNER,你可以通过修改你的角色层次(参见the Symfony2 docs“‘分层角色’一节),以这个做:

role_hierarchy: 
    ROLE_MEMBER:  ROLE_GUEST 
    ROLE_STAFF:  ROLE_MEMBER 
    ROLE_ADMIN:  [ROLE_STAFF, ADMIN, OWNER] 
    ROLE_SONATA_OWNER: ROLE_ADMIN 
+0

我想授予所有SONATA角色我ROLE_ADMIN,但是我不知道如何指定SONATA角色,当我生成列表它让我可以按照管理业务的具体作用是不可小视的工作只是举例来说,CREATE行动到ROLE_ADMIN –

+0

嗯,我不知道SONATA,所以我我似乎无法帮助你。祝你好运。 :) –