找回密码
 立即注册
搜索
查看: 341|回复: 2

Cookies 的无奈~~~

[复制链接]

1678

主题

5167

回帖

9302

积分

荣誉版主

沉痛悼念小于……

积分
9302
发表于 2005-5-20 16:28:25 | 显示全部楼层 |阅读模式
:(

现在网上主要身份验证主要是使用Session和Cookies

说实在,我编程是比较喜欢使用Cookies的

因为它可以保存很长时间,不必每次都要输入用户名和密码

但是Cookies的不安全也是人所周知的

今天对我写的ASP.NET模拟测试cookie欺骗

结果cookie欺骗成功,成功入侵

;13

有人说,同时使用Session和Cookies才是安全的做法

但是Session过了有效期就不行了,结果还是要倚赖不安全的Cookies


不知道还有什么其他好的解决方法?

8

主题

204

回帖

298

积分

海星

积分
298
发表于 2005-5-22 08:15:17 | 显示全部楼层
建一个global的对象,里面放着用户登录状态的信息,pageload的开始时候再把对象serialize到memorystream里面写到一个visable=false的textbox里面,pageload最后产生(deserialize)对象,这样就根本没用session和cookie了,也就没有session的timeout问题和cookie不安全的问题了。但是无法在客户端自动登录了。对象也不会一直存在在内存中浪费空间,还可以用这个对象来在页面间传递其他参数。省了有的时候只能用get方式来传递参数那长长的不安全的url了。而且在用户post页面之前重启服务器也都不影响验证了,只是个idea,不过应该都可以实现
回复

使用道具 举报

1678

主题

5167

回帖

9302

积分

荣誉版主

沉痛悼念小于……

积分
9302
 楼主| 发表于 2005-5-23 11:48:06 | 显示全部楼层
我的想法是:

继续使用Cookie,把用户名和密码保存在Cookie

然后打开网页的时候,网页先读取Cookie,然后连接到数据库,判断用户名和密码是否正确

然后生成一个Session,保存了用户已经通过验证的消息

当这个Session存在的时候,用户打开其他网页就不必验证Cookie,也不必打开数据库验证,这样就减少了消耗的时间

当然,如果20分钟后Session过期了,再重复上面的动作

;13
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|海浩社区

GMT+8, 2025-9-18 10:25 , Processed in 0.095283 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表