2013-02-18 52 views
1

我是创建的用户和组实体。 之后,我创建了一个名为admin的用户,并为该用户分组,并将ROLE_CMS分配给一个新组。Symfony2安全上下文没有看到FOSUserBundle组。为什么?

但是,当我尝试检查user`s角色,我到了那里:

$this->getUser()->getRoles(); // array('ROLE_CMS', 'ROLE_USER'); 
$this->get('security.context')->isGranted('ROLE_CMS'); // false 
$this->get('security.context')->isGranted('ROLE_USER'); // true 

编辑:解决。我登录系统

回答

0

安全组件未链接到任何数据库。用户/组的持久层与授权过程无关。

这个问题应该有助于你进一步了解这个问题。本质是一样的。

Recursive roles with custom user provider entity

+0

FOSUserBundle不适合我吗? – Akuma 2013-02-19 05:20:47

+0

是的,FOSUserBundle为您做到了这一点。你确定你是否按照https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Resources/doc/groups.md中描述的所有步骤操作? – 2013-02-19 08:38:36

+0

是的,我通过在Symfony中重新登录来解决问题。 – Akuma 2013-02-19 12:35:51

相关问题