【发布时间】:2015-09-11 17:42:22
【问题描述】:
我目前正在 Symfony 中开发一个 web 应用程序。该应用程序涉及许多客户,他们都有自己的帐户登录。对于用户管理,我使用了我非常满意的 Friends of Symfony User Bundle。
在应用程序中,管理员需要查看属于所有客户端的信息,而客户端需要被限制为只能查看自己的信息。
此时,FOS 将角色“用户”分配给我注册的所有帐户。我考虑过只让客户通过使用这样的查询来访问属于他的信息;
$query = $this->getEntityManager()
->createQuery(
'SELECT c FROM clientsBundle:client c
WHERE c.name LIKE :string'
)->setParameter('string', '%'.$string.'%');
然后将客户id的值赋予var clientID,然后根据该值(id)获取所有需要的信息。
但老实说,我并不认为这是最佳做法。
我想知道是否有一个(更简单的)选项不仅允许用户通过 Symfony 中的 security.yml 访问某些页面,而且还使该页面中的内容特定于用户。
任何帮助将不胜感激。
【问题讨论】:
标签: php symfony fosuserbundle roles