asp安全问题!

lingxiang 2005-06-06 03:16:09
目前我正在改一个网站,这个网站是网上申报系统,以前那个人做的时候通站都没有用session,所有页面参数传递都是用的***.asp?user_id=34之类的,目前我在用户登陆页上加了个session("pass"),可以验证用户是否通过登陆,但现在有个问题,当一家用户登陆后,他的seesion("pass")已不为空,通过了判断,但是他却仍然可以通过修改地址栏里的user_id=?,从而跳转到其他用户的信息界面,我该怎么完善?实现用户只能修改查看自己的内容!
...全文
189 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿门 2005-06-06
  • 打赏
  • 举报
回复
把USERID写到SESSION里,在每页开头检查SESSION(“USERID”)=REQUEST(“USERID”)
feifeizaizhe 2005-06-06
  • 打赏
  • 举报
回复
还是用SESSION变量吧,方便,而且安全性还可以。要不你就使用IFRAME保存参数
yousite1 2005-06-06
  • 打赏
  • 举报
回复
最好把这段代码写在一个验证文件(比如right.asp)里,然后每个需验证才能访问的页:<!--#include file="right.asp"-->
包含进去.
freshui 2005-06-06
  • 打赏
  • 举报
回复
passwd & userid
每个页面的开头
得到session 中存在的passwd和userid
然后查数据库
如果没有记录,则重新登陆或者转道错误页面
如每个页面开头写上:
<%
on error resume next
adminname=session("adminname")
adminpasswd=session("adminpasswd")


if adminname<>"" and adminpasswd<>"" then
set rs=server.CreateObject("adodb.recordset")
sql="select * from admin where username='"&adminname&"' and passwd='"&adminpasswd&"'"
rs.open sql,conn,1,1
if rs.eof then


response.Redirect("login.asp")
else

session("adminname")=adminname
session("adminpasswd")=adminpasswd

end if
rs.close
set rs=nothing
else
response.Redirect("login.asp")
end if
%>
life360 2005-06-06
  • 打赏
  • 举报
回复
只能查询自己的内容

sql="select * from table where xxx='"&seesion("name")&"'"

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧