1

我需要实现一个事件监听器来验证用户是否有权访问客户的项目。

我的路线如下所示:

/client_a/dashboard/
/client_b/dashboard/

用户可能只有访问“客户端 A”的权限,因此如果不允许他/她查看该项目,我需要验证并重定向用户。

页面事件监听器是最好的方法吗?如果是这样,我会听什么活动?

或者,如果有更好的方法来处理这种情况,那会是什么样子?

谢谢,

JB

4

2 回答 2

2

使用 Symfony2 提供的本机 ACL 功能有一个更好的方法来做到这一点。 这个“书”条目将非常清楚地解释它。

于 2012-07-12T00:05:22.553 回答
0

假设/client_X/dashboard/不是您想要保护的唯一路线,您可以侦听kernel.request event

您的侦听器可能需要将安全上下文服务注入其中,以便您可以访问用户的信息。然后,您只需检查用户是否有权访问某个客户端并做出相应反应。

于 2012-07-11T19:19:53.080 回答