- 相關(guān)推薦
基于ASP.NET的Web網(wǎng)絡(luò)應(yīng)用程序開發(fā)的安全策略實(shí)踐
關(guān)鍵詞:Web應(yīng)用程序;web.config;認(rèn)證和授權(quán);視圖;存儲(chǔ)過程
1 前言
微軟公司推出的ASP.NET,可以非常方便和高效地規(guī)劃、設(shè)計(jì)、開發(fā)和發(fā)布Web網(wǎng)絡(luò)應(yīng)用程序。筆者利用ASP.NET為新疆職工培訓(xùn)中心開發(fā)了運(yùn)行在校園網(wǎng)上的網(wǎng)絡(luò)辦公管理系統(tǒng)。該系統(tǒng)分為管理部門和教學(xué)部門兩個(gè)角色,實(shí)現(xiàn)了數(shù)據(jù)存儲(chǔ)、瀏覽查詢和教學(xué)分析統(tǒng)計(jì)功能,提高了培訓(xùn)中心的信息化管理和校園網(wǎng)的利用價(jià)值。在整個(gè)系統(tǒng)的開發(fā)過程中,考慮最多的就是安全問題,相信這也是所有開發(fā)人員開發(fā)Web網(wǎng)絡(luò)應(yīng)用程序所必須面對(duì)的問題。因此本文針對(duì)基于ASP.NET的Web網(wǎng)絡(luò)應(yīng)用程序開發(fā)的安全問題,以我們開發(fā)的系統(tǒng)為例,從3個(gè)方面來闡述實(shí)際解決策略:
(1)系統(tǒng)規(guī)劃階段的安全策略;
(2)設(shè)計(jì)開發(fā)階段的安全策略;
(3)發(fā)布運(yùn)行階段的安全策略。
希望我們的實(shí)踐能對(duì)利用ASP.NET開發(fā)Web網(wǎng)絡(luò)應(yīng)用程序的相關(guān)技術(shù)人員提供參考和借鑒。
2 安全策略實(shí)踐
2.1系統(tǒng)規(guī)劃階段
Web網(wǎng)絡(luò)應(yīng)用程序,就是運(yùn)行在Web應(yīng)用服務(wù)器上的一個(gè)虛擬目錄及其子目錄下的所有文件、網(wǎng)頁、模塊以及可執(zhí)行代碼的總和。根據(jù)系統(tǒng)需求分析,用戶分為管理部和教學(xué)部(對(duì)數(shù)據(jù)的操作權(quán)限有區(qū)分),因此建立兩個(gè)目錄分別存放相應(yīng)的網(wǎng)頁文件。另外,還有數(shù)據(jù)庫文件夾、樣式文件夾、網(wǎng)頁模版文件夾等。而對(duì)數(shù)據(jù)庫表的操作文件放在特殊的文件夾bin下,因?yàn)樵撃夸浭墙谷魏螢g覽器訪問的,從而避免了遠(yuǎn)程客戶下載代碼的可能性。應(yīng)用程序根目錄下除了上述目錄外,還有兩個(gè)重要的應(yīng)用程序級(jí)文件:global.asax 和web.config(下文詳細(xì)分析)?傊,文件目錄的規(guī)劃是按類別存放文件,重要文件存在bin目錄下。
2.2設(shè)計(jì)開發(fā)階段
主要從后臺(tái)的數(shù)據(jù)庫設(shè)計(jì)、配置文件web.config及前臺(tái)界面設(shè)計(jì)三個(gè)內(nèi)容,著重闡述對(duì)安全問題的解決策略。
2.2.1數(shù)據(jù)庫設(shè)計(jì)
為了提高訪問數(shù)據(jù)的效率和安全性,能在后臺(tái)做的事情,就在后臺(tái)完成,能分開獨(dú)立做的事情,就分開獨(dú)立實(shí)現(xiàn)。
(1)充分利用后臺(tái)數(shù)據(jù)庫系統(tǒng)的視圖和存儲(chǔ)過程,如:創(chuàng)建帶參數(shù)的視圖,實(shí)現(xiàn)不同角色身份的用戶對(duì)各自權(quán)限范圍內(nèi)的數(shù)據(jù)訪問。
(2)報(bào)表設(shè)計(jì)及實(shí)現(xiàn):Web應(yīng)用程序?qū)崿F(xiàn)動(dòng)態(tài)報(bào)表,開始考慮用ASP.NET的數(shù)據(jù)控件Repeater,可以自由定義靈活的顯示方式,但通常比較麻煩,而且在代碼中字段名要出現(xiàn),即:使用數(shù)據(jù)容器Container.DataItem("字段名")方式來顯示數(shù)據(jù)內(nèi)容,降低了數(shù)據(jù)安全性。我們的做法是利用Bussiness Object 公司開發(fā)的專業(yè)報(bào)表軟件CrystalReports10設(shè)計(jì)報(bào)表,通過ODBC數(shù)據(jù)源與數(shù)據(jù)庫連接,生成報(bào)表文件(*.rpt)后,在前臺(tái)利用報(bào)表控件CrystalReprotViewer,將報(bào)表文件加載到頁面實(shí)現(xiàn)各種報(bào)表。這種把數(shù)據(jù)源、報(bào)表文件、和頁面顯示文件分開獨(dú)立實(shí)現(xiàn),不僅豐富了報(bào)表顯示樣式和提高了網(wǎng)絡(luò)報(bào)表生成效率,而且極大地提高了訪問數(shù)據(jù)的安全性。
(3)用戶口令存儲(chǔ)問題:不要將實(shí)際的口令存儲(chǔ)在數(shù)據(jù)庫表中,因?yàn)榭诹钪苯臃旁跀?shù)據(jù)庫或文件中存在安全隱患,因此要存儲(chǔ)加密后的口令。使用時(shí),例如當(dāng)用戶登錄時(shí),對(duì)口令加密,然后與數(shù)據(jù)庫中存放的加密口令進(jìn)行比較。實(shí)現(xiàn)步驟如下:
首先,導(dǎo)入命名空間:
【基于ASP.NET的Web網(wǎng)絡(luò)應(yīng)用程序開發(fā)的安全策略實(shí)踐】相關(guān)文章:
淺談基于Pushlet推技術(shù)的網(wǎng)絡(luò)應(yīng)用程序開發(fā)的研究07-26
基于Web技術(shù)的網(wǎng)絡(luò)考試系統(tǒng)10-22
基于WEB的網(wǎng)絡(luò)考試系統(tǒng)ASP+SQL10-05
基于ASP技術(shù)開發(fā)Web數(shù)據(jù)庫檢索程序08-04
基于Java Struts框架和工作流技術(shù)的Web應(yīng)用開發(fā)08-15
基于WEB的在線考試系統(tǒng)05-15
基于Web的多媒體CAI課件開發(fā)過程中若干問題的研究和實(shí)踐09-01
基于Web服務(wù)的集成研究06-21
最新推薦
- 基于Web的多媒體CAI課件開發(fā)過程中若干問題的研究和實(shí)踐
- 我國(guó)WIFI網(wǎng)絡(luò)技術(shù)的應(yīng)用與市場(chǎng)發(fā)展
- 利用建構(gòu)主義學(xué)習(xí)理論指導(dǎo)計(jì)算機(jī)基礎(chǔ)課的教學(xué)
- 網(wǎng)絡(luò)詞語規(guī)范的原則與途徑新探
- ERP中的物流模塊研究
- 組建家庭無線局域網(wǎng)實(shí)現(xiàn)計(jì)算機(jī)數(shù)據(jù)共享
- 淺談醫(yī)院財(cái)務(wù)管理中計(jì)算機(jī)網(wǎng)絡(luò)的應(yīng)用
- PVST技術(shù)導(dǎo)致的網(wǎng)絡(luò)故障分析
- Linux在信息家電IA上的應(yīng)用
- 基于WEB的勞資人事管理系統(tǒng)
- 網(wǎng)易web開發(fā)筆試
- asp.net論文
- asp.net簡(jiǎn)歷
- asp.net個(gè)人簡(jiǎn)歷
- asp.net畢業(yè)論文
- 培訓(xùn)與開發(fā)論文
- asp.net程序員簡(jiǎn)歷
- asp.net程序員面試
- 軟件開發(fā)簡(jiǎn)歷
- 軟件開發(fā)簡(jiǎn)歷模板