Session ‘;记住我’;登录CodeIgniter
如何在CodeIgniter中实现这一点?(此答案是对原始问题的回答) 你会怎么做?或者,你会怎么做 您可以创建一个具有更长时间的会话 有效期比其他的要长 所有创建的会话都将使用 中相同的$config['sess_expiration'] 配置文件(默认值:7200秒), 是否有方法传递自定义值 ?Session ‘;记住我’;登录CodeIgniter,session,codeigniter,login,Session,Codeigniter,Login,如何在CodeIgniter中实现这一点?(此答案是对原始问题的回答) 你会怎么做?或者,你会怎么做 您可以创建一个具有更长时间的会话 有效期比其他的要长 所有创建的会话都将使用 中相同的$config['sess_expiration'] 配置文件(默认值:7200秒), 是否有方法传递自定义值 ? 延长会话cookie的过期时间对“记住我”功能不起作用,因为用户在关闭浏览器时会丢失会话cookie。如果CodeIgniter没有本机的“记住功能”,那么您需要编写一些东西来删除一个长寿命coo
延长会话cookie的过期时间对“记住我”功能不起作用,因为用户在关闭浏览器时会丢失会话cookie。如果CodeIgniter没有本机的“记住功能”,那么您需要编写一些东西来删除一个长寿命cookie,其中包含的信息将允许服务器在再次看到它时自动登录 有一篇关于的好文章,可以概括为:
如果您遵循这些文章中的实践,您不会犯太大的错误 您可能需要重新考虑“改进的持久登录Cookie最佳实践”中的建议。我已经在网站上发布了我对问题的分析,但要点如下: 没有安全线路,无论发生什么情况, (*所说的“安全线路”,我指的是SSL/VPN隧道/公钥加密-或强健的质询响应方案*) 我完全支持持久登录最佳实践,但有一点是,再多的欺骗也无济于事,唯一的提升途径是SSL。感谢您的解决方案。 我已经在我的CI项目中实现了这一点 开发人员注意:cookie应该有一个安全的哈希作为memberme密钥。 -不要只存储用户id) -不要存储密码, -并且不要存储密码的散列。 这样人们就不能自动登录任何帐户 最坏情况:一旦黑客发现散列方法,您可以在一个地方调整密钥生成器函数,然后重新设置安全性。我会调整盐和胡椒的线 希望有帮助。
Chris D.-来自澳大利亚:)对于这些内容,所有类中的CI变量都可以通过其自己的库访问: 例如:
$this->session->sess_expiration = 500000;
希望能解决您的问题。github上有一个库,请记住我下载它 使用此库的setCookie()函数,会发生以下情况: 1.生成包含唯一编号的cookie 这个数字与传递给setCookie()的netid/用户名一起记录到一个名为ci_cookies的数据库表中
2.调用verifyCookie()函数时,浏览器的cookie哈希必须与记录到数据库的哈希相匹配。如果是,verifyCookie()将返回true并在主页上转发它U需要在加载会话之前设置conf
$do_not_remember = (boolean) $this->input->post('do_not_remember');
if ($do_not_remember) {
$this->config->set_item('sess_expiration', 0);
$this->config->set_item('sess_expire_on_close', true);
}
$this->load->library('session');
是的,好文章,但不完全是我要找的。我想知道的是在CI中执行特定任务(设置比其他会话更长的会话)的一种方法:DExtending会话cookie的过期对于“记住我”功能不起作用,因为用户在关闭浏览器时将丢失会话cookie。如果CodeIgniter没有本机的“记住特性”,那么上面介绍的想法将帮助您实现一个。好的,现在我看到了问题中的缺陷。应该是“如何在CI中实现此功能?”。我真傻。我先等一会儿再接受你的建议。谢谢Paul.CodeIgniter现在有一个
sess\u expire\u on\u close
设置。理论上,如果会话通过sess\u use\u database
存储到数据库中,则可以将sess\u expire\u on\u close=FALSE
设置为sess\u expire
并使用较大的值来保持会话活动,即使在浏览器窗口关闭后也是如此。这在实践中是可行和安全的吗?很有趣。哪一个是你的分析?最后一个,以“Jens Roland”的名义发布。它应该在comments()的第二页上。SSL并不能真正解决任何问题。背景信息:针对Cookie的大多数攻击要么是XSS,要么是浏览器错误,要么是破坏客户端。设置Http只修复XS(不需要SSL),而SSL对修复其他XS没有任何作用。即使它绝不是万无一失的,SSL仍然有比平均水平更好的机会挫败#1攻击模式(通过网络进行拦截)#2和#3只是简单的游戏,超出了认证措施的范围,正如你所说的,httpOnly只修复了#4。你只是在转述我在前面链接的帖子中引用的内容:“嗯,