|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
Internet(或Intranet)上带权限的查询,只有“合法用户”才能进入。这种机制是通过Web程序实现的。在访问过程中,假如程序设计得不好,就会将用户口令暴露在地址栏里(举一个例子:http://www.4ico.com/default.asp ?superusername=john&passwd=john123,用户名john和密码john123全露出来了),这样系统就无保密和安全性可言了。怎样避免这种现象的发生呢?本文将用一段ASP(Active Server pages)程序,来说明隐藏用户名和口令的方式。 ASP是Microsoft公司处理动态网络数据库的最新技术之一,它可由Windows NT 平台上的Web Server IIS4.0(Microsoft Internet Information Server4.0)解释并发布信息,用活动数据对象ADO(ActiveX Data Object)组件并通过ODBC(Open Database Connectivity)访问多种数据库(后台)。本文中用到的数据库为ORACLE8,下边这段ASP程序(名字为DEFAULT.ASP)所实现的功能是对数据库的查询操作,仅取其隐藏用户名和密码的一部分进行说明。 <% WEB_USER =Request("WEB_USER") \\\'WEB用户名 %> <% WEB_USER_PASSWD =Request("WEB_USER_PASSWD") \\\'WEB用户的密码 %> <% \\\'将WEB用户名和密码加密,方式是,将变量值从左至右每个字符的ASCII码加32,生成新的字符串,当执行到此时,地址行上显示出的,是“加密”以后的用户名和密码,而不是真正的用户名和密码,达到保密目的% > <% TEMP1="" % > <% For i=1 To Len(WEB_USER) %> <% TEMP2=Mid(WEB_USER,i,1) %> <% TEMP2=Chr(Asc(TEMP2)+32) %> <% TEMP1=TEMP1&TEMP2 %> <% Next %> <% WEB_USER=TEMP1 %> <% TEMP1="" %> <% For i=1 To Len(WEB_USER_PASSWD) %> <% TEMP2=Mid(WEB_USER_PASSWD,i,1) %> <% TEMP2=Chr(Asc(TEMP2)+32) %> <% TEMP1=TEMP1&TEMP2 %> <% Next %> <% WEB_USER_PASSWD=TEMP1 %> <%\\\'建立和数据库的连接,定义ODBC名字(odbcname)、ORACLE用户名(orauser)及口令(orauser_passwd)%> <%Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "odbcname","orauser","orauser_passwd" %> <% \\\'建立查询语句-SQL语句%> <% var_sql="SELECT * FROM verifytab,dw_tab where verifytab.user_pd=\\\'"&WEB_USER_PASSWD&"\\\'" Set RS = Conn.Execute(var_sql) ’符合条件的记录生成于RS之中%> <%\\\'将用户名和口令翻译成准确的 ,但此时地址栏里显示不出来,达到了保密要求%> <% TEMP1="" %> <% For i=1 To Len(WEB_USER) %> <% TEMP2=Mid(WEB_USER,i,1) %> <% TEMP2=Chr(Asc(TEMP2)-32) %> <% TEMP1=TEMP1&TEMP2 %> <% Next %> <% WEB_USER=TEMP1 %> <% TEMP1="" %> <% For i=1 To Len(WEB_USER_PASSWD) %> <% TEMP2=Mid(WEB_USER_PASSWD,i,1) %> <% TEMP2=Chr(Asc(TEMP2)-32) %> <% TEMP1=TEMP1&TEMP2 %> <% Next %> <% WEB_USER_PASSWD=TEMP1 %> <% \\\'验证输入的WEB用户名和口令是否准确,若是,往下进行,否则,返回到default.htm调用,它是IIS默认的调用文件%>〈〉 <%If WEB_USER="superuser" and WEB_USER_PASSWD="superuserpd" Then else If RS.EOF Then Response.Redirect("default.htm") End If End If %> <%\\\'下边是用FRONTPAGE 98 设计的FORM界面,内容省略%> <html> <head> …… 大家不妨试一下,浏览器端无任何不安全信息,保密效果很好。 返回类别: 教程 上一教程: RS.OPEN SQL,CONN,1,1 的后两个 1,1 各代表什么 下一教程: 创建日志文件 您可以阅读与"用ASP技术编制隐藏用户密码程序"相关的教程: · 用ASP程序随机产生用户密码 · ASP程序密码验证问题 (MS,缺陷) · 用ASP产生随即密码的程序 · ASP程序中同一个用户不答应同时登陆两次 · 随机产生用户密码 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |