从Symfony2中的登录页面检测REMEMBER_ME状态

时间:2014-01-15 12:49:19

标签: php symfony

我希望能够检测当前用户会话是否具有来自登录页面的ROLE IS_AUTHENTICATED_REMEMBERED。显然,登录页面没有安全上下文,因此我无法使用isGranted / is_granted等。我无法找到任何可靠的方法来执行此操作,因为Symfony在重定向到登录之前调用身份验证入口点之前删除了安全令牌

这背后的原因是当用户试图编辑他们的个人资料而没有经过完全认证(他们通过记忆cookie登录)时,我想在登录页面上显示一条消息,上面写着“请自我验证”。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您可以查看:

  • IS_AUTHENTICATED_ANONYMOUSLY - 自动分配给用户 是在受防火墙保护的网站部分,但实际上并没有 登录。只有匿名访问才有可能 允许的。
  • IS_AUTHENTICATED_REMEMBERED - 自动分配给用户 通过记住我的cookie来验证。
  • IS_AUTHENTICATED_FULLY - 自动分配给拥有的用户 在当前会话期间提供了他们的登录详细信息。

here所述。请查看“在访问某些资源之前强制用户重新进行身份验证”