Nic*_*ick 7 security cookies session codeigniter
我只是开始学习会话,为了我的目的,我想创建一些东西,在客户端的每个请求,服务器验证该用户,然后只为该用户执行数据处理.
但是,我在CodeIgniter中看到了很多例子,其中会话的设置如下:
$this->load->library('session');
$newdata = array(
'username' => 'johndoe',
'email' => 'johndoe@some-site.com',
'logged_in' => TRUE
);
$this->session->set_userdata($newdata);
Run Code Online (Sandbox Code Playgroud)
但是,有人不能只是在他们的计算机上使用通用用户名创建一个cookie,并将'logged_in'状态设置为true,突然你在没有密码的情况下进行身份验证?这对我来说似乎是一个安全漏洞,但我看到这么多的例子.
在每个请求上对用户进行身份验证的正确方法是什么?
Bel*_*lla 10
在您的codigniter安装的application/config/config.php文件中,您可以选择加密您的cookie.
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_encrypt_cookie'] = TRUE; // set from false to TRUE
Run Code Online (Sandbox Code Playgroud)
设置完成后,set_userdata()和userdata()方法将透明地处理加密和解密会话数据.
完整的codigniter会话配置选项列表位于此页面的底部:
http://codeigniter.com/user_guide/libraries/sessions.html
| 归档时间: |
|
| 查看次数: |
11336 次 |
| 最近记录: |