asp如何最大限度地实现安全登录功能?

时间:2010-07-11 21:11:00 

如何最大限度地实现安全登录功能?
    具体方法如下(这是一个程序,为便于说明,中间用虚线“------”将代码分段解释):

<%
if not IsEmpty(Session("cust—id")) and Len(Session("cust—id"))>0 then
' 用户登录后指向主页
 Response.Redirect("navigation/dashbrd.asp")
 ' 在此添入真正的主页URL
end if
bLogin = False  
' 设置标志 
bError = False
if IsEmpty(Request("uid")) or Len(Request("uid")) = 0 or IsEmpty(Request("pwd")) or Len(Request("pwd")) = 0 then  
' 检查空字符
  bLogin = True 
else 
----------------------------------------------------------------------------------------------------------------
' 检验数据库保存密码表中是否有该用户
"SELECT * FROM customer WHERE cust—id=′ " & request("uid") &"′ and ′cust—pwd=′"& request(″pwd″) &"′" 
' 连接数据库,其中request(″uid″)和request(″pwd″) 为本页HTML中表单中的用户名和密码的text
  gbFound = False
----------------------------------------------------------------------------------------------------------------
  if not rsCust.BOF and not rsCust.EOF then 
    gbFound = True 
  end if
  if gbFound then 
    Session("cust—id") = rsCust.Fields("cust—id") 
    ' 在session变量中记录有用的信息.此项为数据库中用户名
    Session("cust—pwd") = rsCust.Fields("cust—pwd") 
' 此项为数据库中用户密码
    Session("power") = rsCust.Fields("power")
        ' 此项为数据库中用户权限,可选
    ' rsCust.ActiveConnection.Execute ("update customer set cust—login = ′ "& Now &"′ where cust_id = "& Session("cust—id") &"") 
' 更新最后登录时间,可选
    Response.Redirect("navigation/dashbrd.asp")
        ' 真正主页URL
  Else
    ′UID and password not found 
    bError = True bLogin = True
  end if 
  rsCust.Close
   ' 关闭记录
   mycn—login.Close 
  set mycn—login=Nothing 
 end if
%>
----------------------------------------------------------------------------------------------------------------
' 登录页面
<form name="login" action="default.asp" method="post" target="—top">
' 在HTML中加入FORM,并设为自发送页.action后面要接本页的URL,这样,即使用户登录错误,在本页即可获得提示,而无须再返回前一页登录
input name="uid" size="10"maxlength="10" style="HEIGHT: 21px; WIDTH: 101px">
<input name="pwd"type="password" size="10" maxlength="10">
----------------------------------------------------------------------------------------------------------------
    写完程序,我们再在网站的每一个页面的开头加入以下代码(想一想,为什么要这样?):
<% if IsEmpty(Session("cust—id")) or Len(trim(Session("cust—id")) = 0 then %)
  <script language="JavaScript" runat=client>
  <!——
  top.location.href = "../default.asp"
  //——>
  <script>
  <% Response.End
  End If %> 

其中,Session("cust—id") 为注册的用户名,top.location.href = ″../default.asp"会自动将未登录的用户导航到登录页面中去。
 

标签:登录,安全,asp
0
投稿

猜你喜欢

  • Python实现动态加载模块、类、函数的方法分析

    2022-07-25 22:48:58
  • Golang 使用http Client下载文件的实现方法

    2023-07-21 07:32:23
  • OpenCV-Python实现图像平滑处理操作

    2021-06-19 10:28:21
  • element弹窗表格的字体模糊bug解决

    2024-04-18 10:53:25
  • Vue数据增删改查与表单验证的实现流程介绍

    2024-05-28 15:42:51
  • Python代码调试的几种方法总结

    2022-06-14 18:21:27
  • matplotlib 三维图表绘制方法简介

    2023-08-06 00:06:52
  • python中break、continue 、exit() 、pass终止循环的区别详解

    2023-03-08 15:59:52
  • python的迭代器,生成器和装饰器你了解吗

    2024-01-02 12:45:12
  • 用python制作个论文下载器(图形化界面)

    2022-08-01 00:04:15
  • 用CSS实现柱状图(Bar Graph)的方法(一)—基于列表元素的柱状图

    2008-05-26 13:03:00
  • python 限制函数执行时间,自己实现timeout的实例

    2023-08-03 00:49:12
  • PHP获取类中常量,属性,及方法列表的方法

    2023-11-19 19:57:58
  • python基础知识之字典(Dict)

    2023-08-25 20:01:44
  • SQL Data Services将成为云中完整的数据库

    2009-03-25 12:28:00
  • 微信小程序前端自定义分享的实现方法

    2024-05-02 16:13:35
  • 浅谈SQL Server中统计对于查询的影响分析

    2024-01-24 10:54:21
  • pandas创建DataFrame的7种方法小结

    2022-01-11 19:26:18
  • pip安装Python库时遇到的问题及解决方法

    2023-06-20 14:00:01
  • 详述如何提高MySQL中数据装载效率

    2009-10-26 10:27:00
  • asp之家 网络编程 m.aspxhome.com