【问题标题】:Symfony replace authentication check functionality [closed]Symfony 替换身份验证检查功能 [关闭]
【发布时间】:2012-09-05 04:27:08
【问题描述】:

我对 Symfony 有点陌生。我需要检查用户是否在每个页面请求上都登录。我创建了一个登录屏幕,并将 IP 地址、会话 ID、登录时间、用户名、ID 和其他一些变量存储在用户表和会话变量中。现在我必须在每个页面请求中检查许多这些变量变量。谁能告诉我在哪里进行检查?

【问题讨论】:

    标签: php authentication symfony


    【解决方案1】:

    您可能想要创建一个“preExecute”方法,即在您的任何控制器操作之前执行的东西。看看这里: How to create a something like Zend preDispatch method in Symfony2

    【讨论】:

      【解决方案2】:

      Symfony 有一个非常先进的安全组件,你应该使用它而不是滚动你自己的安全。它将为您节省大量的头痛。在此处阅读有关此安全组件的信息:

      http://symfony.com/doc/current/book/security.html

      我还建议您使用 FOSUserBundle,它是 symfony 安全性的一个很好的补充,它提供了高级用户处理。您可以在此处找到此捆绑包:

      https://github.com/FriendsOfSymfony/FOSUserBundle

      【讨论】:

        【解决方案3】:

        您可以检查是否授予 IS_AUTHENTICATED_ANONYMOUSLY、IS_AUTHENTICATED 或 IS_AUTHENTICATED_FULLY

        在控制器中,您可以使用 security.context 进行检查

        http://symfony.com/doc/current/book/security.html#securing-a-controller

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-05-12
          • 1970-01-01
          • 2016-04-04
          • 1970-01-01
          • 1970-01-01
          • 2012-10-19
          • 2017-08-16
          • 1970-01-01
          相关资源
          最近更新 更多