访问控制路径和授权检查

时间:2015-06-30 17:14:26

标签: symfony

我没有如此完整地说出来。在我的应用程序中我有不同的控制器每个控制器操作检查是否授予用户访问操作的权限,例如。

$this->get('security.context')->isGranted('ROLE_EDITOR')

如果我在我的security.yml中定义了这一行的访问控制路径:

 - { path: ^/user/add, roles: ROLE_EDITOR }

我觉得这太多了。这是相同的逻辑吗?如果这是相同的,哪一个更快或哪一个你建议我使用?

1 个答案:

答案 0 :(得分:0)

您应该使用(进入security.yml

- { path: ^/user/add, roles: ROLE_EDITOR }

因为它会在内核请求级别(控制器事件之前)拒绝访问,所以最好使用防火墙。

如果你在控制器中使用$this->get('security.context')->isGranted('ROLE_EDITOR')而不使用代码,因为它已经从防火墙中拒绝了。