2013-03-19 117 views
0

我想在Symfony2中实现功能记住我的登录信息。symfony2登录记住我

我有这个配置文件security.yml

security: 

    firewalls: 
     frontend: 
      pattern: ^/ 
      anonymous: ~ 
      form_login: 
       login_path: /login 
       check_path: /login_check 
       default_target_path: /index 
       success_handler: authentication_handler 
      logout: 
       path: /logout 
       target: /login 
       success_handler: authentication_handler 
      security: true 
      remember_me: 
       key:  "%secret%" 
       lifetime: 120 
       path: /
      access_denied_handler: accessdenied_handler 
      #primero deben de ir los usuarios anonimos si no se entra en loop redirect 
    access_control: 
     - { path: /login, roles: IS_AUTHENTICATED_ANONYMOUSLY } 
     - { path: ^/js, roles: IS_AUTHENTICATED_ANONYMOUSLY } 
     - { path: ^/admin, roles: ROLE_A } 
     - { path: ^/nuevoinforme, roles: ROLE_M } 
     - { path: ^/, roles: IS_AUTHENTICATED_REMEMBERED } 

    providers: 
     user_db: 
      entity: { class: mio\mioBundle\Entity\Empleado, property: username } 
    role_hierarchy: 
     ROLE_M: ROLE_U 
     ROLE_A: ROLE_U 

    encoders: 
     mio\mioBundle\Entity\Empleado: { algorithm: sha1 } 
     Symfony\Component\Security\Core\User\User: plaintext 

当我登录时,该cookie将被妥善保存在客户端上。但是,120秒后,在尝试访问另一个URL时,它仍然认为客户端已登录,但我期望它已注销,因此我希望客户端重定向到/login

我该如何解决这个问题?

+0

你能改述最后一句话并提出一个问题吗?你的句子很难理解。 – 2013-03-19 16:41:46

+0

我希望你现在明白我的意思。感谢对不起我的英语 – faisbu 2013-03-19 16:48:32

+0

你的会话的一生是什么?我怀疑它超过了120秒,因此您仍然因为会话而登录。 – 2013-03-19 16:59:17

回答

0

您将remember_me lifetime设置为120,因此cookie在2分钟内过期。

您应该将生命周期值设置为大于一天。

security: 
    firewalls: 
     frontend: 
      remember_me: 
       lifetime: 120 # this value should be greater than 120 seconds 

我剥去了其余的参数,所以你可以看到我在说什么。

+0

感谢您的回答。因为不止一天?我一直在看饼干,我有两个:我记得我创建了2分钟内到期并且另一个PHPSESSID。 然后始终采取PHPSESSID 如何删除PHPSESSID cookie? – faisbu 2013-03-19 17:04:06

+0

您不会删除它们,而REMEMBERME cookie与安全性相关(如果cookie过期,用户已注销),PHPSESSID与用户会话相关。 – 2013-03-19 17:20:32

+0

问题在于,cookie在120秒后过期但未重定向登录。谢谢。 – faisbu 2013-03-19 18:08:50