我正在Symfony 2中进行管理面板。我创建了登录表单,防火墙和后端控制器,除了记住网站上的功能外,一切都运行得很好。它始终是关闭复选框"记住我"点击与否。
这是我的配置:
**config.yml**
session:
handler_id: ~
cookie_lifetime: 86400
gc_maxlifetime: 1800
**security.yml**
security:
firewalls:
admin_area:
pattern: /admin/
context: admin
anonymous: ~
form_login:
username_parameter: "admin_login[username]"
password_parameter: "admin_login[password]"
csrf_parameter: "admin_login[_token]"
csrf_provider: form.csrf_provider
intention: authentication
login_path: /admin/login
check_path: /admin/login_check
success_handler: admin_login_success_handler
remember_me: true
logout:
path: /admin/logout
target: /admin/
remember_me:
remember_me_parameter: "admin_login[remember_me]"
key: "admin_secret"
lifetime: 86400
path: /admin/
domain: ~
access_control:
- { path: /admin/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: /admin/([a-z_]+)?, roles: ROLE_ADMIN }
记住我复选框:
<input type="checkbox" id="admin_login_remember_me" name="admin_login[remember_me]" value="1">
我在这个设置中做错了,所以无论是否选中了复选框,我总是在控制器中运行它是真的:
$this->get('security.context')->isGranted('IS_AUTHENTICATED_REMEMBERED')
如果我关闭浏览器并重新打开它,即使&#34;记住我&#34;在上次登录时未经检查我仍然登录管理面板。
任何评论都将不胜感激。
感谢。