日期:2014-05-20  浏览次数:20398 次

一个关于程序安全的问题!各位大侠不妨进来看看…………¥¥¥¥¥¥
小弟做了个网站,用.net   c#做的,其中要做到只有先登录后才能进行相关操作,但是我发现登录成功后,然后在退出后,这是通过单击导航菜单的进入后,能够跳转到登录界面,但是通过单击浏览器地址栏的地址(先前访问在地址栏中留下的纪录)可以完全进入,而不再需要登录;
也就说在退出后通过单击导航菜单能够满足安全要求,但通过单击地址栏的历史纪录还是可以顺利访问,请问大侠这该如何解决?
我配置的是wen.config,禁止整个应用程序匿名访问!

------解决方案--------------------
登录后才能进行相关操作的页面都要加权限效验
------解决方案--------------------
这样吧 在每个页面LOAD的时候都进行一次权限判断
可能方法是笨了点,但安全多
不知道还有没有其他更高效的办法?
------解决方案--------------------
每个页面的Page_Load中:
if (!IsPostBack)
{
if (Session[ "username "] == null)
// 未登录处理。
}

登出用Session.Clear(),这样和没有登录效果一样。如果赋值为 " ",则需要判断null和 " "两种情况。
------解决方案--------------------
Session.Clear()会把所有的SESSION都删掉吧???
直接REMOVE 单个username
------解决方案--------------------
up