ASP访问权限设置技术

   在设计网页时,经常遇到某些页面需限权访问的情况。比如,一个公司的某些产品只让某一或某些供应商或客户浏览。那么,我们如何实现这一功能呢?本文,笔者将向读者介绍几种限制客户访问权限的方法。

  通常,我们在设计过程中会面临三种情况:某一页面只让某一用户浏览、某一页面只让某些用户浏览和某些页面只让某些用户浏览。第一种情况很简单,笔者不再叙述,下文将详细介绍后两种情况的设计方法。

  一、某一页面只让某些用户浏览

  将这些客户的信息保存在数据库中,若能在数据库中检索到客户输入的姓名和密码就允许访问该页面。

  Protect.asp文件 ′需限权访问的页面

  〈html〉〈head〉〈title〉赛迪主页〈/title〉〈/head〉〈body bgcolor="#00FFFF"〉

  ′此处可输入该页面的其它内容

  〈form action="Protect.asp" method="post"〉

  请输入姓名:

  〈input type="text" name="text"〉

  请输入密码:〈input type="password" size="20" name="password"〉

  〈input type="submit" name="B1" value="查询"〉〈/p〉〈/form〉

  〈%set conn=server.createobject("adodb.connection")

  conn.open "asptest"

  ′asptest是存放客户信息的表单permission所在的数据库的名字

  sql1="select  from permission where xm='

  "&&request.form("text") && "' and mima='"&&request.form("password")&&"'"

  set rs=conn.execute(sql1)%〉

  ′如果数据库中存在客户输入的姓名和密码,就显示页面product.asp的超级链接

  〈% if not rs.eof then%〉〈a href="product.asp"〉本公司的产品〈/a〉

  〈%end if%〉〈/body〉〈/html〉

  二、某些页面只让某些用户浏览

  我们可以设计一登录页面register.asp,如果客户没有登录,在进入每个需限权访问的页面时强制客户先访问页面register.asp实现登录。成功登录之后自动返回到刚才要访问的页面。我们可用cookies和session两种方法来实现。

  1.用cookies实现

  如果客户已经登录过,就把登录的信息记录在客户端的cookies中,之后客户就可直接浏览其它限权访问的页面。

  register.asp

  〈% if request.form("b1")="提交" then

  set conn=server.createobject("adodb.connection")

  conn.open "asptest"

  sql1="select * from permission where xm='

  "&&request.form("name") &&"' and mima='"&&request.form("password")&&"'"

  set rs=conn.execute(sql1)

  if not rs.eof then

  response.cookies("register")="true"

  rs.close

  conn.close

  end if

  ′若数据库中存在该用户的信息,就记录该用户成功登录的标记到cookies中

  end if%〉

  〈html〉〈head〉〈/head〉

  〈body bgcolor="#c0c0c0" 〉

  〈p align="center"〉〈big〉〈big〉〈big〉亲爱的客户,请您登录!

  〈/big〉〈/big〉〈/big〉〈/p〉〈hr〉

  〈form action="register.asp" method="post" name="form1"〉

  〈div align="center"〉〈p〉姓名:

  〈input name="name" size="13"〉〈/p〉

  〈p〉密码:〈input name="password"

  size="13"type="password"〉〈/p〉〈/div〉

  〈div align="right"〉〈input type="submit" name="b1" value="提交" 〉

  〈/div〉〈/form〉〈/body〉〈/html〉

  Protect.asp文件 ′需限权访问的页面

  〈%if request.cookies("register")〈〉"true" then

  response.redirect "register.asp"

  end if%〉

  ′若客户未登录,则强制客户登录

  〈html〉〈head〉〈/head〉

  〈body bgcolor="#00FFFF"〉

  ′此处是需保护的页面内容

  〈/body〉〈/html〉

  2.用session实现

  session是用户级的全局变量, 我们将客户成功登录的信息记录到session中后,用户就可直接浏览其它限权访问的页面了。

  global.asp

  〈script language=vbscript runat=server〉

  sub Session_onstart

  session("register")="false"

  ′记录客户成功登录的信息

  session("lognumber")=0

  ′记录客户尝试登录的次数,最多允许尝试三次

  session("prescript")=""

  ′记录客户要访问的页面,以便登录后返回该页

  end sub

  〈/script〉

  register.asp

  〈% if request.form("b1")="提交" then

  set

  conn=server.createobject("adodb.connection")

  conn.open "asptest"

  sql1="select * from permission where xm='"

  &&request.form("name") &&"'

  and mima='"&&request.form("password")&&"'"

  set rs=conn.execute(sql1)

  if not rs.eof then

  session("register")="true"

  ′若数据库中存在该用户的信息,就记录该用户成功登录的标记到register变量中

  rs.close

  conn.close

  response.redirect session("prescript")

  ′成功登录后自动返回刚才要访问的页面

  end if

  if session("lognumber")〈3 then

  session("lognumber")=

  session("lognumber")+1

  response.redirect "register.asp"

  else

  response.redirect "sorry.asp"

  end if

  ′允许尝试登录三次,若均未成功,则禁止访问并同时显示页面sorry.asp

  end if%〉

  〈html〉〈head〉〈/head〉

  〈body bgcolor="#c0c0c0" 〉

  〈p align="center"〉〈big〉〈big〉

  〈marquee align="middle"

  behavior="alternate" 〉欢迎您的光临,请您先登录!〈/marquee〉〈br〉

  〈%if session("lognumber")〉0 then%〉

  输入有误!请重新输入姓名和密码!

  〈% end if%〉

  〈/big〉〈/big〉〈/p〉〈hr〉

  〈form action="register.asp" method="post" name="form1"〉

  〈div align="center"〉〈p〉姓名:

  〈input name="name" size="13"〉〈/p〉

  〈p〉密码:〈input name="password"

  size="13"type="password"〉〈/p〉〈/div〉

  〈div align="right"〉〈input type="submit" name="b1" value="提交" 〉

  〈/div〉〈/form〉〈/body〉〈/html〉

  Protect.asp文件   ′需限权访问的页面

  〈% if session("register")〈 〉"true" then

  session("prescript")=

  request.servervariables("script_name")

  response.redirect "register.asp"

  end if%〉

  ′记录该页面的路径到prescript变量中并强制客户登录

  〈html〉〈head〉

  〈meta http-equiv="Content-Type"

  content="text/html; charset=gb_2312-80"〉〈/head〉

  〈body bgcolor="#00FFFF"〉

  ′此处可输入该页面其它内容的脚本

  〈/body〉〈/html〉

  以上几种方法,设计者可以根据系统的需要进行灵活运用

时间: 2024-09-24 03:52:23

ASP访问权限设置技术的相关文章

win2003服务器asp.net权限设置问题及解决方法_实用技巧

服务器asp.net权限设置问题及解决方法 本人服务器使用环境:WIN 2003 ASP.NET相对于ASP,设置权限方面有点不同,有一点儿设置错了都运行不到.在网上搜索到的都是很垃圾的答案,没有一个用得到的,下面是我自己设置并从中遇到的问题摸索后得到的经验,给大家分享. ASP.NET需要用到USERS组的权限,因为我也遇过很多次自己设置了权限之后发现网站运行不了,很郁闷.下面根据出现的问题,一点点解决,让你的ASP.NET运行起来.. 问题一: 未找到路径"C:\"的一部分. 说明

windows 服务器安全之磁盘访问权限设置[完整篇]_win服务器

asp.net服务器安全之磁盘访问权限设置 硬盘或文件夹: C:\ D:\ E:\ F:\ 类推   主要权限部分: 其他权限部分: Administrators 完全控制   无如果安装了其他运行环境,比如PHP等,则根据PHP的环境功能要求来设置硬盘权限,一般是安装目录加上users读取运行权限就足够了,比如c:\php的话,就在根目录权限继承的情况下加上users读取运行权限,需要写入数据的比如tmp文件夹,则把user的写删权限加上,运行权限不要,然后把虚拟主机用户的读权限拒绝即可.如果

win2003 asp.net权限设置问题及解决方法(1/2)

ASP.NET相对于ASP,设置权限方面有点不同,有一点儿设置错了都运行不到.在网上搜索到的都是很垃圾的答案,没有一个用得到的,下面是我自己设置并从中遇到的问题摸索后得到的经验,给大家分享. ASP.NET需要用到USERS组的权限,因为我也遇过很多次自己设置了权限之后发现网站运行不了,很郁闷.下面根据出现的问题,一点点解决,让你的ASP.NET运行起来.. 问题一: 未找到路径"C:"的一部分. 说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错

win2003服务器asp.net权限设置问题及解决方法_win服务器

本人服务器使用环境:WIN 2003 ASP.NET相对于ASP,设置权限方面有点不同,有一点儿设置错了都运行不到.在网上搜索到的都是很垃圾的答案,没有一个用得到的,下面是我自己设置并从中遇到的问题摸索后得到的经验,给大家分享. ASP.NET需要用到USERS组的权限,因为我也遇过很多次自己设置了权限之后发现网站运行不了,很郁闷.下面根据出现的问题,一点点解决,让你的ASP.NET运行起来.. 问题一: 未找到路径"C:\"的一部分. 说明: 执行当前 Web 请求期间,出现未处理的

ADO.NET Data Service访问权限设置

很多朋友询问我如何设置ADO.NET Data Service的权限.其实设置ADO.NET Data Service的权限与正常设置ASPNET网站的资源访问权限方式一样. 下面我就已ADO.NET Data Service文中的例子为原型,说明一下该如何设置资源访问权限 先规划一下ASPNET网站的资源结构 在Web.config中按如上设计进行权限配置 <authentication mode="Forms"> <forms name="powerid

qq空间评论审核怎么设置?QQ空间访问权限设置方法

1.在进入QQ空间中我们点击最上面的"设置"然后进入之后会看到有一个"权限设置"如图所示. 2.我们在打开的"权限设置"里面有一个"防骚扰设置"现在我们就可以点击访问设置以及其他相应设置. 3.在防骚扰界面中会看到有一个"开启评论审核",即设置审核的好友的评论将在查阅后批准后显示在qq空间. 4.QQ空间的"访问设置"进入之后我们再点击"设置"在这里时开启自定义. 5

Win7、Win8/8.1系统windows/system32/drives/etc的访问权限设置

1.按"Win+R"然后在弹出框我们输入 C:\WINDOWS\system32\drivers\,点击确定或者打开我们电脑复制这一字符串在地址栏回车也可以进入: 2.然后我们找到etc文件夹上右击然后点击"属性"选项,如下所示: 3.在进入到etc属性窗口,我们再点击"安全"-"编辑"然后找到"Users"(也就是你的登录用户名),把"允许"下面的选项全部勾选,点击确定: 同时记得去掉

新浪微相册系统相册能否进行访问权限设置?

  目前系统相册包括"头像相册"."微博配图"和"默认专辑",点击查看系统相册相关内容. "微博配图"和"头像相册"不能修改名称.不能删除,不可修改访问权限,为所有人可见专辑; "默认专辑"可以编辑名称.删除.修改访问权限.

xp系统文件夹访问权限设置修改方法

  现在的人们越来越重视隐私了,在电脑中一般保存了很多私人的文件,如果普通的放在哪个盘里,电脑一打开就会发现了,所以想到一个好办法就是对特殊的文件进行安全设置,这样就能对指定的人可见,该怎么操作呢一般电脑中很少会出现"安全"这一设置,如果你想要进行隐私设置,就会显得很有必要了,需要用管理员的身份进去修改权限,下面小编就来以管理员的身份来教大家如果修改文件夹的权限. 具体的操作方法如下: 1.我们用鼠标点击我们所要更改的文件夹的右键,选择栏目中的属性选择打开. 2.点击属性窗口弹出以后就