Symfony2 : Best practice for access control

标签 symfony acl

我正在尝试找到一种在 Symfony2 中处理我的访问控制的好方法。

我的要求:

  • 我的应用程序的 90% 只能由经过身份验证的用户访问
  • 在许多 Controller 中,我需要检查用户是否是所有者
  • 不同的用户角色也有一些差异

  • 我已经做了什么:
  • 安装 JMSSecurityExtraBundle 以通过注解
  • 检查权限
  • 为我的实体类定义了全局 ace
  • 我在创建过程中为每个对象创建了一个 ace

  • 检查所有者和角色没有问题。我只想以全局方式定义用户必须经过身份验证,并且对于异常(可以匿名访问的站点),我想将其分开定义(最好通过注释)。
    我不想通过路由模式来做到这一点。

    最佳答案

    我不确定它是否是您要查找的内容,但您是否尝试过 Event Listener ?

    您可以在 onKernelController 方法中进行验证。然后,您将可以创建不同的接口(interface)并在监听器中检查 Controller 的类型。

    关于Symfony2 : Best practice for access control,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11421111/

    相关文章:

    php - 使用 YAML 替换较小的 SQL 表?

    php - symfony2 FOSElasticaBundle:当Elasticsearch服务关闭时,如何推迟文档更新?

    mysql - ACL 截断操作名称

    python - 如何使用 python 修改文件访问控制列表?

    apache - 我想从 url 中删除 app.php,但是如何呢?

    php - 调用 .getJSON 时 Symfony 返回 404 错误

    php - 如何从 Twig 中的 Symfony2 表单获取 Doctrine2 实体方法

    doctrine-orm - Doctrine 2 代理类破坏了 Symfony2 ACL

    apache-kafka - 删除所有 Kafka ACL

    java - 是否有用于处理访问控制列表的 Java 库?