




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、本科畢業論文(設計)題目: 基于WEB的自行車租賃管理系統設計與實現 24目 錄摘 要互聯網發展速度迅猛,電子商務成為21世紀商務發展道路上發展的一大熱點。隨著寬帶網絡的普及以及網絡互聯網絡應用方式的發展,電子商務正以前所未有的速度對傳統商務方式以理論造成沖擊,并對以往傳統商務方式占主導的領域進行滲透。該基于WEB自行車租賃系統架構是基于ASP和SQL Server 2000數據庫,以IIS為Web服務器,采用了使用B/S結構,綜合使用了VBscript、html和JavaScript語言編成的系統。本文論述了基于WEB自行車租賃系統的設計思想和設計過程。主要包括系統前臺顯示,分為數據瀏覽,自
2、行車預訂,客戶相關的一些租賃信息查看。系統的后臺操作,分為用戶管理,系統管理。關鍵詞:租賃管理系統,數據庫,ASP,IIS ABSTRACTWith the rapid devdlopment of Internet,the E-business has become a hot in business development road in 21th century.With the popularity of broadband Internet network and application forms of development, electronic commerce is at
3、an unprecedented speed of traditional business approach to the theory of an impact, and traditional business methods-dominated areas of infiltration.The system is based on ASP to configure bicycle lease system based on WEB with the database of MS SQL Server2000, with IIS for Web server and have adop
4、ted structure of B/S, synthesize the system that has used VBscript, html and JavaScript language volume. This paper has discussed design thought and the design course based on WEB bicycle lease system. This paper include mainly systematic proscenium show that divide into data to glance over, booked
5、bicycle management , look over tenancy information that customer are related to rent. The systematic operation of backstage supporter divides into user management, system management.Key words: Lease management systems, Databases, ASP ,IIS第一章 緒論1.1技術簡介1.1.1 IIS簡介 IIS是Internet Information Server
6、的縮寫,它是微軟公司主推的服務器, IIS與WindowNT Server完全集成在一起,因而用戶能夠利用Windows NT Server和NTFS內置的安全特性,建立強大,靈活而安全的Internet和Intranet站點。 IIS支持HTTP,FTP以及SMTP協議,通過使用CGI和ISAPI,IIS可以得到高度的擴展。IIS還支持與語言無關的腳本編寫和組件,通過IIS,開發人員就可以開發新一代動態的,富有魅力的Web站點。IIS不需要開發人員學習新的腳本語言或者編譯應用程序,IIS完全支持ASP,VBScript,JScript開發軟件以及Java,它也支持CGI和WinCGI,以及I
7、SAPI擴展和過濾器。1.1.2 ASP簡介 ASP是Active Server Page的縮寫,意為“活動服務器網頁”。其功能在于可以使用它來開發運行在Windows服務器平臺上的動態網頁和網站。網頁是使用HTML定義的文檔。建立好信息網頁后,文本文件和圖像可通過Web服務器傳送給用戶,Web服務器從磁盤中讀取它們并且把輸出轉換成在網路中傳送的HTML。在客戶端,瀏覽器解釋傳送到的信息流,并將其轉換成為顯示的頁面。ASP技術通過在靜態HTML內容中嵌入服務器端腳本,實現頁面的動態改變。Web服務器從磁盤上讀取含有服務端腳本的網頁,將網頁發送給客戶端瀏覽器之前 ,先對其中的服務器端腳
8、本進行解釋,輸出用戶定制的信息內容,從而產生動態網頁。ASP賴以運行的基礎是Windows Web服務器IIS或者PWS。ASP使用的編程語言是腳本語言,可以使用VBScript和JScript。1.1.3 SQL Server 2000簡介數據庫是數據管理的最新技術,是計算機科學的重要分支。今天,信息資源已成為各個部門的重要財富和資源。建立滿足各級部門信息處理要求的行之有效的信息系統也成為一個企業或組織生存和發展的重要條件。因此,作為信息系統核心和數據庫得到越來越廣泛的應用,從小型單項事務處理系統到大型信息系統,從聯機事務到聯機分析原理,從一般企業管理到計算機輔助設計與制造,計算機集成制造系
9、統,辦公信息系統,地理信息系統等,越來越多新的應用領域采用數據庫存存儲和處理他們的信息資源。SQL Server 2000 是一個全面的數據庫平臺,使用集成的商業智能 (BI) 工具提供了企業級的數據管理。SQL Server 2000 數據庫引擎為關系型數據和結構化數據提供了更安全可靠的存儲功能,使您可以構建和管理用于業務的高可用和高性能的數據應用程序。SQL Server 2000 數據引擎是本企業數據管理解決方案的核心。此外 SQL Server 2000 結合了分析、報表、集成和通知功能。這使您的企業可以構建和部署經濟有效的 BI 解決方案,幫助您的團隊通過記分卡、Dashboard、
10、Web services 和移動設備將數據應用推向業務的各個領域。1.1.4 HTML語言簡介HTML是Hypertext Markup Language(超文本標記語言)的縮寫,它是構成Web頁面(Page)的主要工具,是用來表示網上信息的符號標記語言。HTML是網絡的通用語言,一種簡單、通用的全置標記語言。它允許網頁制作人建立文本與圖片相結合的復雜頁面,這些頁面可以被網上任何其他人瀏覽到,無論使用的是什么類型的電腦或瀏覽器。它是用于創建可從一個平臺移植到另一平臺的超文本文檔的一種簡單標記語言,經常用來創建Web頁面。HTML文件是帶有格式標識符和超文本鏈接的內嵌代碼的ASCII 文本文件。
11、1.1.5 VBScript簡介 VBScript是Visual Basic Script的簡稱,即 Visual Basic 描述語言。VBScript是微軟開發的一種腳本語言。它具有原語言容易學習的特性。目前這種語言廣泛應用于網頁和ASP程序制作,同時還可以直接作為一個可執行程序。由于VBScript可以通過Windows腳本宿主調用COM,因而可以使用Windows操作系統中可以被使用的程序庫,當然它也可以使用其它程序和操作系統本身的庫。Windows操作系統,VBScript可以被用來自動地完成重復性的Windows操作系統任務。在Windows操作系統中,VBScript可
12、以在Windows Script Host的范圍內運行。Windows操作系統可以自動辨認和執行*.VBS和*.WSF兩種文件格式。1.1.6 JavaScript簡介Javascript是一種由Netscape的LiveScript發展而來的腳本語言,主要目的是為了解決服務器終端語言,比如Perl,遺留的速度問題。當時服務端需要對數據進行驗證,由于網絡速度相當緩慢,只有28.8kbps,驗證步驟浪費的時間太多。于是Netscape的瀏覽器Navigator加入了Javascript,提供了數據驗證的基本功能。Javacript是一種能讓你的網頁更加生動活潑的程式語言,也是目前網頁中設計中最容
13、易學又最方便的語言。你可以利用Javacript輕易的做出親切的歡迎訊息、漂亮的數字鐘、有廣告效果的跑馬燈及簡易的選舉,還可以顯示瀏覽器停留的時間。讓這些特殊效果提高網頁的互動性、提供親切的服務。JavaScript 使網頁增加互動性。JavaScript 使有規律地重復的HTML文段簡化,減少下載時間。JavaScript 能及時響應用戶的操作,對提交表單做即時的檢查,無需浪費時間交由 CGI 驗證。1.1.7配置IISIIS的安裝與配置 a.安裝IIS 可打開“控制面板”,然后單擊啟動 “添加/刪除程序”, 在彈出的對話框中選擇 “添加/刪除Windows組件”,在Windows組件向導對
14、話框中選中“Internet信息服務(IIS)”,然后單擊“下一步”,按向導指示,完成對IIS的安裝。b.啟動Internet信息服務(IIS) Internet信息服務簡稱為IIS,單擊Windows開始菜單-所有程序-管理工具-Internet信息服務(IIS)管理器,即可啟動“Internet信息服務”管理工具c.配置IIS IIS安裝后,系統自動創建了一個默認的Web站點,該站點的主目錄默認為C:Inetpubwww.root。用鼠標右鍵單擊“默認Web站點”,在彈出的快捷菜單中選擇“屬性”,此時就可以打開站點屬性設置對話框,可完成對站點的全部配置。 主目錄與啟用父路徑 單擊“主目錄”
15、標簽,切換到主目錄設置頁面,該頁面可實現對主目錄的更改或設置。注意檢查啟用父路徑選項是否勾選,如未勾選將對以后的程序運行有部分影響。主目錄配置-選項。 設置主頁文檔 單擊“文檔”標簽,可切換到對主頁文檔的設置頁面,主頁文檔是在瀏覽器中鍵入網站域名,而未制定所要訪問的網頁文件時,系統默認訪問的頁面文件。常見的主頁文件名有index.htm、index.html、index.asp、index.php、index.jap、default.htm、default.html、default.asp等 IIS默認的主頁文檔只有default.htm和default.asp,根據需要,利用“添加”和“刪除
16、”按鈕,可為站點設置所能解析的主頁文檔。 啟動與停止IIS服務 在Internet信息服務的工具欄中提供有啟動與停止服務的功能。單擊 可啟動IIS服務器;單擊 則停止IIS服務器。 1.2系統概述1.2.1項目背景互聯網發展速度迅猛,電子商務成為21世紀商務發展道路上發展的一大熱點。隨著寬帶網絡的普及以及網絡互聯網絡應用方式的發展,電子商務正以前所未有的速度對傳統商務方式以理論造成沖擊,并對以往傳統商務方式占主導的領域進行滲透。 電子商務以其低廉的成本、相對方便的應用,以及互聯網絡所帶來的前所未有的宣傳效應,正成為商務活動開展的一個至關重要的平臺。電子商務作為一個新興的事物,雖然發展
17、速度迅猛,但仍處于發展的初期階段,還存在許多不完善之處。 基于Web的自行車租賃管理系統是一個電子商務系統,在該系統中我們以服務為宗旨,在該系統中使用B/S結構.前臺使用了javascript, css, html,為用戶展示數據;后臺使用VBscript 實現數據邏輯,操作系統的文件組件實現服務器的文件讀取,獲得文件有關信息。1.2.2系統功能 在該系統中實現以下功能:系統前臺顯示,分為數據瀏覽,用戶注冊,用戶登陸,自行車預訂,本人信息修改及本人相關的一些租憑信息查看。系統的后臺操作分為,系統管理,用戶管理,自行車管理,租憑管理,系統管理。1.2.3系統特點系統具有以下特點:(1)模塊化設計
18、:本系統在界面與功能的設計上,都采用了模塊化的設計思想。把一些常用的頁面和功能,都設計成了一個單一的asp文件或者子程序、函數,例如頁面的頭、尾,系統返回的錯誤、系統返回的操作信息等。這樣在開發時遇到使用這些模塊的地方,只要使用<!-#include file=文件名->即可調用這些功能模塊文件,大大地提高了開發的效率以及系統的可維護性。同時為以后的復用打下了基礎。(2)安全性設計:本系統在業務處理的過程中,及其注重系統的安全性。無論是用戶的誤操作、系統和數據庫錯誤,還是惡意的攻擊,都能及時分辨并加以糾正或阻止,提高了系統的穩定性及維護性。(3)人性化設計:用戶操作簡便,可以通過多
19、種手段查找所需要的自行車,預訂自行車方式簡單易用。后臺管理功能強大,帶有租賃分析功能,可以幫助尋找潛在的客戶以及對自行車的采購提供指導性數據。第二章 系統設計2.1系統設計思想2.1.1頁面模塊化設計該系統時把一些常用的功能集成到了單一的文件中去,需要調用時只需要引用這個文件或者文件中的子程序、函數即可實現一些通用的功能。2.1.2注重安全性安全性威脅,大致可分為外部入侵、系統錯誤及人為操作失誤三部分。其中外部入侵及系統錯誤絕大多數都是由于程序設計的漏洞造成,這兩點造成的損失也是最大的;而人為操作絕大多數都是由使用者的疏忽造成,損失也相對較小。2.1.3代碼的復用代碼的復用包含了程序功能的模塊
20、化處理,在同一程序中代碼復用。比如此例的head.asp和bottom.asp作為頁面頭和尾,可以在開發過程中反復調用以統一頁面外觀。2.2系統功能模塊劃分根據前面的系統功能分析,可以畫出系統功能模塊的組織結構圖,本例從客戶界面和管理界面入手,對系統功能模塊的劃分加以圖形化的描述。客戶界面的組織結構圖如圖2-1自行車租賃系統客戶界面庫存管理界面租賃管理界面租賃分析界面客戶瀏覽自行車客戶預訂自行車客戶信息修改庫存瀏覽庫存修改租賃查詢租賃分析起租結算圖2-1客戶界面的組織結構圖管理界面的組織結構圖如圖2-2自行車租賃系統自行車管理客戶管理庫存自行車管理自行車推薦用戶修改用戶鎖定添加自行車修改自行車
21、租賃分析受歡迎的類型受歡迎的自行車潛在客戶自行車租賃理管自行車出租自行車歸還自行車預訂圖2-2管理界面的組織結構圖2.3系統結構設計根據模塊化的設計思想,可得出如圖2-3所示的系統結構設計圖。自行車租賃系統客戶界面管理界面通用模塊數據庫自行車瀏 覽界 面預定解除預訂界 面租賃信息界 面登陸注冊界 面系統信息瀏覽與管理用戶管理界 面自行車管理界 面租賃關系管理界 面取得顯示錯誤信息模 塊輸出操作結果信息模 塊頁面頭尾模 塊翻頁模 塊檢測管理權限模 塊圖2-3系統結構設計圖2.4數據庫設計用戶的需求體現在對各種信息的瀏覽、查詢、保存和更新,這就要求數據庫結構能夠滿足用戶的這些基本需求,并在效率和設
22、計上做到高效與簡潔。而系統的需求則體現在各系統功能對數據庫提供的各種信息處理的要求上。用戶的需求往往體現在系統的易用程度和功能強大與否;而系統的需求往往體現在了系統運行的效率、穩定性與安全性等系統特性之上。本系統為了體現系統設計的模塊化及關系型數據庫的應用,按照關系型數據庫的三個范式標準對數據庫進行了關系化處理。自行車在線租賃系統的表項目與之間的關系,如圖2-4所示。箭頭端為父關系所在表,箭頭尾是子關系所在表。PK為主鍵(Primary Key),FK為外鍵(Foreign Key),黑體為必填字段。圖2-4自行車在線租賃系統表項目與關系第三章 客戶界面設計客戶界面的設計采用了界面模塊化的思想
23、,每個頁面都具有一定的功能。還運用了CSS樣式表,以達到美化頁面的效果。故每個頁面都內嵌了一個CSS樣式表的連接。3.1系統預覽圖3-1是用戶未登錄時以訪客的身份所看到的主界面。從圖中可以看出,客戶在沒有登錄的時候,可以進行用戶登錄,瀏覽自行車的詳細資料,可以根據自行車的名稱查找自行車,還可以根據自行車的類別來瀏覽自行車。圖3-1用戶未登錄時的主界面圖3-2是用戶登錄以后的主界面從圖中可以看出,普通用戶登錄后,可以查看自己預定的、已租的自行車,可以更改自己的用戶信息。在已租的自行車當中又存在更詳細的分類,使用戶即時了解自己自行車租賃情況。如果用戶是管理員,還可以通過鏈接跳轉到管理頁面。圖3-2
24、用戶登錄后的主界面3.2界面頭、界面尾設計為了提高代碼的復用率,使程序設計變得高效簡潔,本文是把部分界面的界面頭和界面尾都使用了head.asp和bottom.asp文件。而在head.asp文件中,又內嵌了自行車類型的導航條Navbar.asp和用戶信息UserLogin.asp。效果如圖3-3圖3-3界面頭、尾效果演示3.3用戶注冊模塊設計為了自行車和租賃管理,用戶必須注冊后才可以預定或者租賃自行車。在注冊時,用戶需要留下聯系方式以便收到信息或通知。注冊后用戶可以根據注冊的用戶名和密碼登陸系統,瀏覽和預定自行車。該模塊所在的文件是Reg.asp文件。此文件采用了頁面和代碼分離技術。普通的用
25、戶注冊模塊,需要將用戶注冊信息的輸入做成一個文件,再使用標單將數據傳遞到另一個處理注冊信息的文件。使用此技術,就可以在使用普通的網頁編輯器來編輯頁面風格的同時,頁面也同時具備操作功能,不必再將一個功能做成兩個獨立的文件了。其實現的原理是通過在頁面的標單中包含了一個名為IsReg的隱含域:<input type=hidden name=IsReg Value=ok>。打開此頁面后,IsReg并沒有提交,Request(“IsReg”)的值為空,則顯示頁面;提交后,Request(“IsReg”)的值不為空,則執行代碼。實現后的效果如圖3-4所示。圖3-4 用戶注冊模塊效果3.4用戶登
26、錄模塊設計用戶登錄時,需要檢測用戶名和用戶密碼;用戶名和密碼通過檢測后,需要判斷用戶是否被鎖定。檢測通過后,還需要遍歷數據庫中的數據,找出有沒有用戶的租賃超過了期限,如果超過了則在數據庫中進行標注。用戶登錄后,服務器端會創建一個用戶的私有變量Session(“UserID”)來保存用戶的ID。在本系統的其他模塊,經常需要用到此私有變量判斷用戶狀態是否失效、用戶是否為管理員。最后,程序會使用Response.Redirect "index.asp"重定向網頁到index.asp文件。例程3-1用戶登錄模塊<!-#include file="CONN.ASP&q
27、uot;-><!-#include file="md5.asp"-><!-#include file="ChkSQL.asp"-><!-#include file="ChkErr.asp"-><%Dim strSQL,objRSSet objRS=Server.CreateObject("ADODB.RecordSet")'取得用戶文件名、密碼Dim UserName,UserPassword'過濾SQL字符,防止SQL漏洞注入UserName=Chk
28、SQL(Request("UserName") 使用md5()函數加密密碼UserPassword=md5(Request("UserPassword")'在數據庫中查找用戶strSQL="SELECT * FROM UserInfo WHERE UI_Name_S='"&UserName&"'"objRS.Open strSQL,objConn,1,3'判斷用戶是否存在'若用戶不存在則通過GetErr()函數提交并顯示錯誤代碼If objRS.BOF Or
29、objrs.EOF ThenobjRS.Close Set objRS=NothingResponse.Write GetErr(3)Response.EndElse'若用戶存在,則檢測用戶密碼的正誤If objRS("UI_Password_S")<>UserPassword ThenobjRS.CloseSet objRS=NothingResponse.Write GetErr(4)Response.EndEnd IF'判斷用戶是否被鎖定If objRS("UI_IsLocked_B")=True ThenobjRS.C
30、loseSet objRS=NothingResponse.Write GetErr(5)Response.EndEnd If'建立用戶私有變量Session.Timeout =30Session("UserID")=objRS("UI_ID_N")objRS.Close'每當有用戶登錄則刷新數據庫,判斷是否有自行車的預訂超時或超期未還strSQL="SELECT TAC_ReserveTime_D,TAC_StartTime_D FROM Tenancy”&_” WHERE TAC_StartTime_D IS NUL
31、L"objRS.Open strSQL,objConn,1,3For i=1 To objRS.RecordCount'有超時的預訂則刪除If IsNull(objRS("TAC_StartTime_D")=True And&_ DateDiff("h",objRS("TAC_ReserveTime_D"),Now()>12 ThenobjRS.DeleteEnd IfobjRS.MoveNextNextobjRS.ClosestrSQL="SELECT * FROM Tenancy WHER
32、E TAC_StartTime_D”&_” IS NOT NULL AND TAC_EndTime_D IS NULL"objRS.Open strSQL,objConn,1,3Dim MsgUserFor i=1 To objRS.RecordCount'有超期租賃的則標注If DateDiff("d",DateAdd("d",objRS("TAC_Lease_N"),&_objRS("TAC_StartTime_D"),Now()=>objRS("TAC_Lea
33、se_N") ThenstrSQL="UPDATE Tenancy SET TAC_TimeOut_B=True,”&_”TAC_MsgUser_B=True WHERE TAC_ID_N="&objRS("TAC_ID_N")objConn.Execute(strSQL)End IfobjRS.MoveNextNextobjRS.Close'跳轉回主頁Response.Redirect "index.asp"End If%>3.5自行車瀏覽模塊設計自行車瀏覽模塊的功能是讓用戶找到自己感興趣的自
34、行車,找到后可以進行預定。實現后的效果如圖3-5所示。圖3-5 自行車流量模塊效果圖3.6用戶信息模塊設計此模塊是為了顯示用戶的預定、租賃關系與租賃關系提醒所設計的。使用此模塊,用戶可以查看自己預定了哪些自行車,租了哪些自行車,哪些自行車將要到期、哪些自行車已超過了歸還期限。點擊這些自行車的名稱后操作將交給disprent.asp用于顯示詳細的預定及租賃信息。此模塊是嵌入在用戶界面頭head.asp當中的。在此模塊中通過Select Case判斷自行車的狀態后,再使用If和DateDiff函數結合判斷自行車的狀態是將要到期還是已經超期。實現后的效果如圖3-6所示圖3-6 用戶信息模塊設計3.7
35、用戶資料管理模塊設計此模塊的設計也運用了頁面與代碼的分離技術。用戶可以通過此功能模塊察看和修改自己的資料。如果是管理員的話,則可以修改用戶的狀態。此模塊的表單域中包含三個隱含的域:uid、IsModify和ChangeBy。uid傳遞的是用戶ID; ChangeBy是根據用戶是否為管理員來判斷是否要更新用戶基本信息外的屬性實現后的效果如圖3-7。圖3-7用戶資料管理模塊實現效果圖3.8 查看用戶租賃關系模塊設計此模塊的功能是讓用戶查看現存的租賃關系,包括預訂和租賃??梢缘玫阶馄诤妥饨鸬男畔?。如果是以管理員身份查看租賃關系,則可以連接到起租與結算的頁面,執行相應的操作。在此模塊中,會通過Sess
36、ion(“UserID”)來讀取數據庫中的用戶信息,判斷用戶是否是管理員。那為什么不使用ChkAdmin.asp來判斷用戶是否是管理員呢?這是因為ChkAdmin.asp的作用僅僅是判斷用戶是否是管理員,如果不是管理員則終止操作。而查看用戶租賃關系模塊是用戶與管理員公用的模塊,所以如果使用ChkAdmin.asp來判斷用戶是否是管理員,會使不是管理員的用戶無法繼續進行操作。此模塊可以計算出用戶所要支付的實際租金,便于管理員對租賃收費進行管理。實現后的效果如圖3-8圖3-8 查看用戶租賃關系實現效果圖3.9用戶預訂自行車模塊設計此模塊的功能是用戶預訂自行車。當用戶預訂自行車后,預定的狀態會保存1
37、2小時。若12小時內用戶沒有去起租自行車,則預訂會被刪除。如果用戶不是管理員且有超期未還的自行車,則不可以預訂自行車,直到超期未還的自行車歸還為止。此模塊實現效果圖如圖3-9和圖3-10。圖3-9 用戶預定自行車圖3-10 用戶預定自行車成功3.10用戶注銷登錄模塊設計此模塊的作用是注銷用戶的登錄。其原理是結束用戶的私有變量Session(“UserID”)。例程3-2用戶注銷登錄Logout.asp<%Session.Abandon結束用戶私有變量Response.Redirect "index.asp"重定向網頁%>第四章 系統通用功能模塊和管理界面4.1系
38、統通用模塊 以下是本系統的一些通用文件。Head.asp 統一格式的頁面頭Bottom.asp 統一格式的頁面尾ChangePage.asp 頁面轉換ChkAdmin.asp 檢查用戶是否具有管理權限ChkErr.asp 根據錯誤代碼提取錯誤信息及解決對策Conn.asp 數據庫聯接Md5.asp 用戶密碼加密Navbar.asp 自行車類型導航條ResultMsg.asp 輸出操作結果信息 UserLogin.asp 用戶信息Style.css 頁面風格INCInc.js 通用Javascript腳本(1)CONN.ASP4.2管理界面管理界面的設計采用了框架的結構,框架構建文件為admin
39、_index.asp,可以根據Request(“Type”)獲取用戶需要顯示的管理頁面。這樣的設計可以使用戶使用清晰明了,能快速找出所要使用的功能。admin_menu.asp為管理項目列表,所在的框架名稱為leftFrame。而mainFrame顯示的是管理選項頁面。在每個管理界面當中均采用<!-#include file=”ChkAdmin.asp”->方法引用了ChkAdmin.asp文件,這種設計是為了檢測用戶是否擁有管理權限,防止沒有管理權限的用戶非法篡改系統數據。在管理界面中包含這幾個模塊,系統信息的查看與修改,用戶管理,自行車管理,起租與結租模塊。第五章 系統要點、難
40、點5.1系統安全性系統的安全性,在傳統經典的C/S架構中就已經得到了充分的重視,自從電子商務誕生以來,新興的B/S架構系統安全性也成為了一個新興的問題。安全性問題的產生,可能很多讀者認為多與網絡系統與服務器有關,類似于DoS之類的名詞耳熟能詳。殊不知在系統開發的過程中,卻隱藏著更多更具有破壞性的安全問題。SQL漏洞注入是一個很簡單,同時又很復雜的問題。簡單的說,SQL漏洞注入是通過瀏覽器提交特殊的代碼,從而收集服務器、程序或數據庫信息。而獲取數據庫中的信息,又往往是實行SQL漏洞注入者的主要目的。在程序當中,很可能出現類似于<a href=dispuser.asp?id=1>顯示用
41、戶</a>這樣的html代碼。如果把“dispuser.asp?id=1”改成“dispuser.asp?id=1 and ui_isadmin_b=true”,并在瀏覽器地址欄里提交,如果程序中沒有相應的措施,那么這個SQL漏洞注入就算是成功了。在SQL語言當中,單引號“”是格外需要注意的。利用好單引號,可以構造出極具攻擊性漏洞注入,例如在程8-1的文本框中輸入“1 or ui_name_s like '%'”,那么程序就會將所有用戶都羅列出來。所以在此案例中,使用Replace函數過濾單引號是非常常見的。5.2故意入侵的防范大多數故意入侵,都是針對程序漏洞進行的
42、。前節的SQL漏洞注入。對于入侵的防范,大體可以依據以下幾條消除:(1)在頁面中傳遞數據時,盡量使用數值類型的數據傳遞,因為數值類型的數據比較好判斷;(2)在程序設計時,判斷出非法的數據類型后,要及時終止程序的運行并提交錯誤,最好還能夠將錯誤記錄進入數據庫供用戶判斷;(3)如果程序運行不能被終端,則將此數據強制變更為系統合法格式的數據;(4)對用戶提交數據中輸入的空格的判別要格外注意。比如一個用戶注冊,輸入的用戶名是一排空格,那么使用IsEmpty或者Request(“UserName”)=”是可以蒙混過關,但在將注冊插入數據庫或者顯示出來時,這個用戶的用戶名便不可見了。遇到需要判別輸入空格情
43、況的。5.3安全防范對于敏感的數據,應確保數據庫連接字符串,最好不要保存在文本文件中,比如,可以將其保存在Application對象中。一個安全性比較高的做法是將敏感數據編譯進一個ActiveX組件中,其缺點在于數據改動時需要重新編譯組件。如果保存包含文件,包含文件不要使用*.inc后綴名,建議使用*.asp后綴。為了保護ASP應用程序,要在應用程序的Global.asa文件上為適當的用戶或用戶組設置NTFS文件權限。如果Global.asa包含瀏覽器返回信息的命令而沒有保護Global.asa文件,則信息將被返回給瀏覽器,即便應用程序的其他文件被保護。5.4錯誤處理(1)ASP錯誤處理機制在
44、我們調試ASP腳本時經常會出現一些錯誤信息,其實我們只要在做腳本時稍考慮一下錯誤處理,就會讓編制出的應用程序更加合理。常見的ASP錯誤的類型大致包括編譯錯誤、運行錯誤和邏輯錯誤三種。編譯錯誤出現一般都是代碼的語法問題。因為編譯錯誤而導致ASP停止運行。運行錯誤多發生在準備運行ASP時的,例如,如果試圖給一個變量賦值,但是卻超出該變量允許的范圍。邏輯錯誤是最難發現的,這種錯誤是一種結構錯誤,計算機發現不了,這就需要我們徹底檢查代碼。在頁面中出現這樣一種錯誤,錯誤類型:Microsoft OLE DB Provider for SQL Server(0x80040E37)Invalid objec
45、t name admini /aspspecial/error_handle/test.asp,第10行此錯誤頁面實際是在IIS中存在的一個ASP頁面500-100.asp,在出現錯誤時候IIS在后臺使用Server.Tansfer()方法調用頁面500-100.asp將錯誤返回給用戶。修改該頁面錯誤是,打開IIS默認web站點的屬性頁,選擇自定義錯誤信息標簽。在HTTP錯誤信息列表中找到500;100HTTP錯誤類型,單擊“編輯屬性”按鈕可以修改處理ASP錯誤頁面。(2)開發時錯誤處理開發程序時如果出現錯誤,我就希望得到最詳細,精確的錯誤信息。同時,如果將忽略錯誤后的運行結果同時也提示出來,是最好的。現在制定一個錯誤處理頁面,制定好后可以對程序的錯誤進行處理。這樣經過制定后,可以提供更多的錯誤信息,同時,即使在頁面出錯之后仍能看到頁面的輸出,這可以讓開發將輸出結果與期望結果比較,更快地找到更多錯誤信息。(3)防止錯誤為了在編寫程序過程中盡量少出錯誤,養成良好的編程習慣非常必要。主要注意代碼的格式和縮進編排;變量現實表明;變量轉換為合適的數據類型;使用有意義的變量命名
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 三年級數學三位數除以一位數競賽試題口算題帶答案
- 客戶關系管理外包服務合同
- 農業種植園區化生產合作協議
- 電子商城買賣交易平臺服務協議
- 《古代希臘的民主制度:高中歷史文明教案》
- 2024年中國真空淬火油行業調查報告
- 2019-2025年中國營養奶酒行業未來趨勢預測分析及投資規劃研究建議報告
- 中國調溫器行業市場全景監測及投資戰略咨詢報告
- 2025-2030年中國鎖控棉紗地拖項目投資可行性研究分析報告
- 餐廳單據行業深度研究分析報告(2024-2030版)
- 珠寶公司文件管理制度
- 2025-2030年中國3C數碼充電器行業市場深度調研及市場供需與投資價值研究報告
- 2024年黃岡團風縣招聘城區社區工作者真題
- 2026屆云南三校高考備考聯考卷(一)化學試卷+答案
- 2025年山東省高考歷史試卷真題
- 2025至2030中國農膜行業發展分析及發展前景與投資報告
- 2025圖解《政務數據共享條例》V1.0學習解讀
- 2024中國農業銀行分行年度營銷宣傳方案
- 2025電商平臺店鋪轉讓合同模板
- 物業監控調取管理制度
- 高端私人定制服務方案
評論
0/150
提交評論