限制访问路线

时间:2015-12-14 08:01:58

标签: symfony

我是symfony2的新手,我目前正面临一个问题。我想基于我的数据库中包含的某些日期来限制我的某些页面上的访问权限 例如,我的 mon.site/home / 之后的所有页面都将在错误页面上重定向。我已经考虑过事件监听器,但不知道如何限制某些URL。有没有更好的方法来实现这个功能?如果不是我该怎么办?

2 个答案:

答案 0 :(得分:0)

对我来说这很简单。您可以选择两种不同的解决方案

第一个解决方案

1)创建custom eventevent subscriber 2)您在1)处创建的派遣事件(在每个操作中)您需要额外的控制权 3)在事件内,用户呼叫方法进入自定义事件或直接用户方法检查“&#34”请求是否满足您的需求"
4)提出AccessDeniedException

第二种解决方案

1)使用DependencyInjection创建自定义配置,您可以在其中指定应根据您希望的条件检查控制器的操作 2)创建一个监听kernelRequest事件的EventListener 3)进入EventListener只检查条件
4)提出AccessDeniedException

答案 1 :(得分:0)

要限制访问权限,您可以使用:

  • voters(并且还使用不同的访问决策策略 管理器)
  • 您还可以使用限制对应用的整个部分进行访问 security.yml中的access_control选项
  • 您也可以使用acl

try to avoid using listeners

P.S。,如果这还不够,您可以配置.htaccess