国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于ASP.NET的項(xiàng)目管理系統(tǒng)的網(wǎng)絡(luò)安全模式研究

2010-12-25 01:42:58李愛(ài)軍
辦公自動(dòng)化 2010年8期
關(guān)鍵詞:表單管理系統(tǒng)數(shù)據(jù)庫(kù)

李愛(ài)軍

(蘇州職業(yè)大學(xué)計(jì)算機(jī)工程系 蘇州 215104)

隨著互聯(lián)網(wǎng)技術(shù)的日益普及和各行各業(yè)基于網(wǎng)絡(luò)的信息化的快速發(fā)展,網(wǎng)絡(luò)的安全性問(wèn)題因其特殊的重要性成為當(dāng)前研究的熱點(diǎn)話題之一。網(wǎng)絡(luò)信息系統(tǒng)用戶多,功能復(fù)雜,一般采用基于角色權(quán)限的訪問(wèn)控制模型,而ASP.NET技術(shù)從驗(yàn)證(認(rèn)證)、授權(quán)和扮演(模擬)3個(gè)層次上為網(wǎng)絡(luò)提供了良好的安全機(jī)制。

項(xiàng)目管理系統(tǒng)為企業(yè)提供了功能強(qiáng)大的項(xiàng)目管理平臺(tái),旨在幫助企業(yè)成功完成所進(jìn)行的所有項(xiàng)目。但是跟其他網(wǎng)站一樣,面臨著一個(gè)重要的安全問(wèn)題。保證項(xiàng)目管理平臺(tái)的安全是項(xiàng)目管理系統(tǒng)正常運(yùn)營(yíng)的重要前提。

一、系統(tǒng)的安全需求分析

項(xiàng)目管理系統(tǒng)的安全威脅主要來(lái)自于以下幾個(gè)方面。

1、來(lái)自數(shù)據(jù)庫(kù)管理系統(tǒng)本身的威脅

由于項(xiàng)目管理系統(tǒng)是一個(gè)大型事務(wù)處理系統(tǒng),其采用的數(shù)據(jù)庫(kù)系統(tǒng)應(yīng)當(dāng)穩(wěn)定、安全地運(yùn)行。所以應(yīng)當(dāng)防止系統(tǒng)崩潰(包括OS和DBMS)和重新啟動(dòng),避免內(nèi)存的數(shù)據(jù)丟失而使數(shù)據(jù)庫(kù)中的數(shù)據(jù)的完整性遭到破壞。

2、來(lái)自項(xiàng)目管理系統(tǒng)內(nèi)部人員對(duì)整個(gè)系統(tǒng)的威脅

因?yàn)槭褂孟到y(tǒng)的用戶很多,每個(gè)用戶所完成的工作是不一樣的,即分配給每個(gè)用戶的權(quán)限是不同的,某些用戶就有可能以合法身份進(jìn)行非授權(quán)操作。

3、應(yīng)當(dāng)防止外部人員(如黑客)、或其它因素對(duì)整個(gè)系統(tǒng)的威脅

這主要表現(xiàn)在以下幾個(gè)方面:

■系統(tǒng)是一個(gè)多用戶系統(tǒng),所以就難免存在攻擊者利用某個(gè)合法用戶的身份登錄系統(tǒng)進(jìn)行“假冒攻擊”。

■攻擊者為了騙取某合法用戶的身份和登錄密碼,可能會(huì)采取“主頁(yè)”欺騙。

■系統(tǒng)中所有數(shù)據(jù)的處理都是通過(guò)網(wǎng)絡(luò)實(shí)現(xiàn)的,如何保證信息的接收(發(fā)送)者不能否認(rèn)曾經(jīng)接收(發(fā)送)過(guò)某信息也是系統(tǒng)面臨的一個(gè)安全問(wèn)題。

二、安全技術(shù)描述

1、基于角色權(quán)限的訪問(wèn)控制(RBAC)

RBAC(Role-Base Access Control),在系統(tǒng)的應(yīng)用層安全控制中起非常重要的作用。RBAC的核心思想就是將訪問(wèn)權(quán)限與角色相聯(lián)系,通過(guò)給用戶分配適合的角色,從而使用戶與訪問(wèn)權(quán)限相聯(lián)系。角色是根據(jù)企業(yè)內(nèi)為完成各種不同的任務(wù)需要設(shè)置的特定的任務(wù)范疇,系統(tǒng)根據(jù)用戶在企業(yè)中的職責(zé)和責(zé)任來(lái)設(shè)定他們的角色。用戶可以在角色間進(jìn)行轉(zhuǎn)換。

2、ASP.NET的安全技術(shù)

(1)驗(yàn)證(Authentication)

驗(yàn)證是對(duì)請(qǐng)求信息的用戶進(jìn)行身份識(shí)別。ASP.NET身份列表中的驗(yàn)證是通過(guò)驗(yàn)證提供程序來(lái)實(shí)現(xiàn),其中包含對(duì)來(lái)自客戶的請(qǐng)求進(jìn)行驗(yàn)證的代碼模塊。

ASP.NET提供了ASP.NET自身和ASP.NET+IIS兩大類驗(yàn)證實(shí)現(xiàn)形式。它不僅支持微軟的Passport驗(yàn)證服務(wù),還單方面提供簽到服務(wù)和用戶描述服務(wù);而且還提供了cookies幫助建立一種基于用戶Forms的驗(yàn)證方式。通過(guò)cookies用戶的應(yīng)用程序可以用自己的代碼和邏輯實(shí)現(xiàn)用戶定義的可信性驗(yàn)證。ASP.NET提供了三種認(rèn)證用戶的方法,每一種都是通過(guò)一個(gè)獨(dú)立的認(rèn)證提供程序?qū)崿F(xiàn)的Windows,F(xiàn)orms和Passport。接下來(lái)將介紹這些認(rèn)證方法。

①Windows認(rèn)證

請(qǐng)求ASP.NET時(shí),客戶首先遇到的是微軟的WEB服務(wù)器IIS。此時(shí)IIS將對(duì)用戶進(jìn)行認(rèn)證,或?qū)⒃摴ぷ鹘唤o服ASP.NET應(yīng)用程序;當(dāng)IIS處理認(rèn)證工作時(shí),它可以直接與操作系統(tǒng)通信,對(duì)用戶的證件進(jìn)驗(yàn)證。

②表單認(rèn)證

在ASP.NET中,可以選擇由ASP.NET應(yīng)用程序(而不是IIS)通過(guò)表單進(jìn)行認(rèn)證,這讓用戶對(duì)站點(diǎn)的認(rèn)證方案有更大的控制權(quán),可以將用戶的證件存儲(chǔ)在一個(gè)數(shù)據(jù)庫(kù)或XML文件中,而不是Windows系統(tǒng)中。

③Passport認(rèn)證

Passport認(rèn)證是微軟公司提供的一種集中式認(rèn)證服務(wù)。其工作原理與表單認(rèn)證非常相似,只是無(wú)須創(chuàng)建任何自定義的功能。這兩種方法都在客戶端創(chuàng)建認(rèn)證cookie。使用Passport認(rèn)證時(shí),用戶將被重定向到Passport登錄頁(yè)面,讓用戶填寫表單,該表單將通過(guò)微軟的Passport服務(wù)來(lái)檢查用戶的證件,以確定用戶是否合法。然后像表單認(rèn)證一樣設(shè)置一個(gè)認(rèn)證cookie。Passport認(rèn)證服務(wù)并不創(chuàng)建認(rèn)證cookie,這項(xiàng)工作是由原來(lái)的Web服務(wù)器來(lái)完成的。

(2)授權(quán)(Authorization)

授權(quán)是安全系統(tǒng)提供的又一項(xiàng)重要功能,旨在確定通過(guò)驗(yàn)證的用戶可訪問(wèn)哪些資源。ASP.NET提供了兩種授權(quán)方式即基于ACL資源權(quán)限的授權(quán)方式和URL授權(quán)。

(3)扮演(Impersonation)

扮演能夠讓ASP.NET通過(guò)運(yùn)行客戶程序的用戶身份來(lái)執(zhí)行頁(yè)面。如果用戶以某一身份通過(guò)授權(quán),那么ASP.NET將會(huì)根據(jù)該用戶的權(quán)限來(lái)限制或拒絕其對(duì)資源的訪問(wèn)。

(4)安全通信(Secure Communication)

許多應(yīng)用程序跨網(wǎng)絡(luò)在終端用戶和中間的應(yīng)用程序節(jié)點(diǎn)之間,來(lái)回傳遞機(jī)密數(shù)據(jù)。機(jī)密數(shù)據(jù)可能包括用于身份驗(yàn)證的憑據(jù),或者是諸如信用卡號(hào)碼或銀行事務(wù)處理細(xì)節(jié)等數(shù)據(jù)。為防止出現(xiàn)不希望發(fā)生的信息泄露以及保護(hù)數(shù)據(jù)在傳輸過(guò)程中不被非法修改,對(duì)通信端點(diǎn)之間的信道必須加以保護(hù)。

3、數(shù)據(jù)庫(kù)保護(hù)設(shè)計(jì)

本系統(tǒng)通過(guò)SQLServer 2000數(shù)據(jù)庫(kù)管理系統(tǒng)提供的安全賬戶認(rèn)證控制用戶對(duì)服務(wù)器的連接,使用數(shù)據(jù)庫(kù)用戶和角色等限制用戶對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)。項(xiàng)目管理系統(tǒng)創(chuàng)建了不同用戶賬戶、角色以及分別授予不同的權(quán)限。

三、基于ASP.NET的三層網(wǎng)絡(luò)架構(gòu)

系統(tǒng)基于Windows2000 Server操作系統(tǒng),采用ASP.NET實(shí)現(xiàn)Web服務(wù)器與數(shù)據(jù)庫(kù)的連接,后臺(tái)數(shù)據(jù)庫(kù)為SQL sever2000系統(tǒng),以.net為系統(tǒng)開發(fā)平臺(tái),系統(tǒng)采用B/S的三層架構(gòu)。系統(tǒng)利用ASP.NET部署B(yǎng)/S的三層架構(gòu),三層是由表示層、業(yè)務(wù)層、數(shù)據(jù)層組成。表示層就是利用瀏覽器為客戶提用服務(wù)的圖形界面,負(fù)責(zé)直接跟用戶進(jìn)行交互;業(yè)務(wù)層位于表示層和數(shù)據(jù)層之間,由應(yīng)用服務(wù)器和Web服務(wù)器實(shí)現(xiàn)系統(tǒng)業(yè)務(wù)邏輯功能;數(shù)據(jù)層是三層中的最底層,負(fù)責(zé)數(shù)據(jù)的存儲(chǔ)和訪問(wèn)。每層的功能非常清晰,層與層之間不能跨越,客戶端不直接與數(shù)據(jù)庫(kù)進(jìn)行交互,而是通過(guò)COM/DCOM通訊與業(yè)務(wù)層建立連接,業(yè)務(wù)層經(jīng)過(guò)ADO.NET實(shí)現(xiàn)對(duì)數(shù)據(jù)層的數(shù)據(jù)進(jìn)行訪問(wèn),實(shí)現(xiàn)了顯示、數(shù)據(jù)、邏輯的分開,減少了耦合度,更加靈活,適于維護(hù)。

ASP.NET在網(wǎng)頁(yè)中使用基于事件的處理,表示層的頁(yè)面代碼和后臺(tái)的代碼分離,系統(tǒng)采用C#作為后臺(tái)代碼的語(yǔ)言。.NET中可以方便地實(shí)現(xiàn)組件的裝配,后臺(tái)代碼通過(guò)命名控件可以方便地使用自己定義的組件。表示層放在ASP.NET頁(yè)面中,數(shù)據(jù)庫(kù)操作和業(yè)務(wù)邏輯用組件來(lái)實(shí)現(xiàn),這樣就很方便地實(shí)現(xiàn)了三層架構(gòu)。這樣的結(jié)構(gòu)減少了入口點(diǎn),減少了由于客戶端被破壞而給數(shù)據(jù)庫(kù)帶來(lái)?yè)p失的風(fēng)險(xiǎn),保證了系統(tǒng)的安全。

四、系統(tǒng)安全性的具體實(shí)現(xiàn)

針對(duì)項(xiàng)目管理系統(tǒng)業(yè)務(wù)流程,為保證在整個(gè)項(xiàng)目管理過(guò)程中信息的完整性和保密性,系統(tǒng)設(shè)計(jì)時(shí)必須采取如下的安全措施。

項(xiàng)目管理系統(tǒng)采用的是由ASP.NET應(yīng)用程序通過(guò)表單進(jìn)行身份認(rèn)證。通過(guò)這種方法,用戶被引導(dǎo)到系統(tǒng)所提供的一個(gè)登陸表單,通過(guò)該表單,用戶可以提供其證件,如果被認(rèn)可,則可以繼續(xù)進(jìn)行管理工作,否則活動(dòng)被取消,頁(yè)面將重新定位到用戶登陸界面。圖1說(shuō)明了本系統(tǒng)中采用的表單認(rèn)證過(guò)程。

圖1 表單認(rèn)證過(guò)程

整個(gè)過(guò)程的步驟如下:

1、戶向站點(diǎn)請(qǐng)求被保護(hù)的頁(yè)面。

2、如果請(qǐng)求沒(méi)有包含有效的認(rèn)證Cookie,Web服務(wù)器將把用戶重定向到web.config文件中Authentication標(biāo)簽的login-URL屬性中指定的URL,該URL包含一個(gè)供用戶登陸的表單。

3、當(dāng)用戶輸入用戶名密碼后,表單將數(shù)據(jù)提交。

4、如果輸入有效,則ASP.NET將在客戶機(jī)上創(chuàng)建一個(gè)認(rèn)證cookie。

這樣,用戶就能夠被重新定向到最初請(qǐng)求的頁(yè)面繼續(xù)進(jìn)行管理工作等。以下是代碼片段:

系統(tǒng)利用表單認(rèn)證具有靈活和強(qiáng)大的特性,系統(tǒng)擴(kuò)充時(shí)所有新增的頁(yè)面代碼都會(huì)受到保護(hù),不必為每個(gè)文件增加保護(hù)代碼。而且認(rèn)證的過(guò)程完全可以由系統(tǒng)定制,可以任意加入認(rèn)證策略。通過(guò)上述的安全性設(shè)計(jì),確保項(xiàng)目管理系統(tǒng)更穩(wěn)定、安全、柔性更好。

項(xiàng)目管理系統(tǒng)如果統(tǒng)一采用Internet進(jìn)行連接,由于現(xiàn)有的網(wǎng)絡(luò)系統(tǒng)有相當(dāng)多的安全漏洞,計(jì)算機(jī)操作系統(tǒng)的安全防護(hù)也十分脆弱,系統(tǒng)將承受巨大的安全風(fēng)險(xiǎn)。網(wǎng)絡(luò)黑客可能會(huì)滲入系統(tǒng),盜竊數(shù)據(jù)或惡意破壞記錄。項(xiàng)目管理系統(tǒng)內(nèi)部使用者也可能會(huì)有意或無(wú)意地將數(shù)據(jù)泄露出去。所以,本系統(tǒng)使用內(nèi)外網(wǎng)相結(jié)合的架構(gòu),項(xiàng)目管理系統(tǒng)內(nèi)部的運(yùn)作在局域網(wǎng)中進(jìn)行,外部的宣傳和服務(wù)在Internet網(wǎng)中進(jìn)行。

在該系統(tǒng)中,對(duì)于項(xiàng)目組的一每個(gè)用戶設(shè)置了不同的系統(tǒng)角色。系統(tǒng)根據(jù)不同的項(xiàng)目組中不同角色的人設(shè)置不同的權(quán)限。項(xiàng)目管理員具有最高權(quán)限、其他用戶的權(quán)限由項(xiàng)目管理設(shè)定,并可動(dòng)態(tài)修改,以適應(yīng)項(xiàng)目管理的需要。

在項(xiàng)目管理系統(tǒng)內(nèi)部,系統(tǒng)的管理員對(duì)項(xiàng)目管理系統(tǒng)內(nèi)部人員根據(jù)他們身份的不同賦予不同的角色,針對(duì)不同的角色,賦予他們不同的權(quán)限。由于整個(gè)系統(tǒng)被分為不同的功能模塊,所以一個(gè)權(quán)限就代表著對(duì)某個(gè)模塊或者某個(gè)模塊的一部分的可操作性。因此每個(gè)用戶根據(jù)他們角色,具有對(duì)應(yīng)模塊的操作權(quán)限,不允許操作非授權(quán)的模塊。通過(guò)這種授權(quán)訪問(wèn)的方式保證了項(xiàng)目管理系統(tǒng)不會(huì)被非法訪問(wèn)和越權(quán)操作。圖2為系統(tǒng)角色管理。

圖2 系統(tǒng)角色管理

總之,系統(tǒng)為管理員提供了一個(gè)功能全面的管理平臺(tái),管理員能夠方便地對(duì)角色、權(quán)限等進(jìn)行管理,信息更新、維護(hù)等工作則全部由系統(tǒng)的普通用戶完成。通過(guò)系統(tǒng)和項(xiàng)目權(quán)限管理,可以同時(shí)保證系統(tǒng)的安全性和數(shù)據(jù)的安全性,使得具有不同權(quán)限的用戶只能使用相應(yīng)的系統(tǒng)功能、瀏覽或維護(hù)相應(yīng)的數(shù)據(jù)。

五、結(jié)束語(yǔ)

系統(tǒng)為管理員提供了一個(gè)功能全面的管理平臺(tái),管理員能夠方便地對(duì)角色、權(quán)限等進(jìn)行管理,信息更新、維護(hù)等工作則全部由系統(tǒng)的普通用戶完成。通過(guò)系統(tǒng)和項(xiàng)目權(quán)限管理,可以同時(shí)保證系統(tǒng)的安全性和數(shù)據(jù)的安全性,使得具有不同權(quán)限的用戶只能使用相應(yīng)的系統(tǒng)功能、瀏覽或維護(hù)相應(yīng)的數(shù)據(jù)。本文對(duì)系統(tǒng)的安全性進(jìn)行了需求分析后,詳細(xì)介紹了兩種安全技術(shù):基干角色權(quán)限的訪問(wèn)控制和ASP.NET的安全技術(shù)。并把這兩種安全技術(shù)在本系統(tǒng)的應(yīng)用進(jìn)行了具體實(shí)現(xiàn)。

本文對(duì)采用基于ASP.NET構(gòu)建的B/S結(jié)構(gòu)的項(xiàng)目管理系統(tǒng)的安全模式設(shè)計(jì)進(jìn)行了研究,這種基于W eb的應(yīng)用系統(tǒng)的安全體系設(shè)計(jì)相對(duì)于傳統(tǒng)的C/S模式.既要考慮數(shù)據(jù)訪問(wèn)的安全,又要考慮網(wǎng)絡(luò)的安全。Web開發(fā)平臺(tái)ASP.NET的安全訪問(wèn)機(jī)制使得Web的安全性和可靠性得到了基本的保障。采用B/S的三層架構(gòu),將顯示層、中間層、數(shù)據(jù)層在邏輯上相互獨(dú)立,減少了禍合度,保證了系統(tǒng)的安全。采用了身份驗(yàn)證、權(quán)限控制訪問(wèn)數(shù)據(jù)庫(kù)等多種安全策略保證了數(shù)據(jù)的安全。限制了網(wǎng)絡(luò)的入侵,最終保障了網(wǎng)絡(luò)系統(tǒng)的安全。

[1]林海燕.項(xiàng)目管理在軟件開發(fā)項(xiàng)目中的應(yīng)用[J].《計(jì)算機(jī)系統(tǒng)應(yīng)用》2003.9,P77~P79.

[2]蓋江南,王勇,閻文麗等編著.ASP.NET+SQLSERVER動(dòng)態(tài)網(wǎng)站設(shè)計(jì)寶典[M].北京:電子工業(yè)出版社.2006.

[3]李成楷,詹永照,茅兵.基于角色的系統(tǒng)訪問(wèn)控制[J].軟件學(xué)報(bào),2002,11(7):P 931-P 935.

[4]David Ferraiolo,RaviSandhu,Serban Gavrlia.Propose NIST Standard forRole-Based

Access Control.ACM Transactions on Information and System Security,2001,(4):224-227.

[5]李霞.基于_NET的研究生教學(xué)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].碩士學(xué)位論文,中國(guó)地質(zhì)大學(xué),2006.24-25

猜你喜歡
表單管理系統(tǒng)數(shù)據(jù)庫(kù)
基于James的院內(nèi)郵件管理系統(tǒng)的實(shí)現(xiàn)
電子表單系統(tǒng)應(yīng)用分析
華東科技(2021年9期)2021-09-23 02:15:24
基于LED聯(lián)動(dòng)顯示的違停管理系統(tǒng)
淺談網(wǎng)頁(yè)制作中表單的教學(xué)
海盾壓載水管理系統(tǒng)
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
基于RFID的倉(cāng)儲(chǔ)管理系統(tǒng)實(shí)現(xiàn)
SHOW| 白银市| 荥阳市| 遂平县| 五河县| 葵青区| 沅陵县| 西青区| 淮北市| 廉江市| 临潭县| 和顺县| 宁城县| 沂南县| 内黄县| 兴海县| 和硕县| 合作市| 沙坪坝区| 温宿县| 罗江县| 望江县| 成安县| 普兰县| 防城港市| 赣州市| 英吉沙县| 大姚县| 丰城市| 托克逊县| 麟游县| 鹤岗市| 五华县| 藁城市| 鹿邑县| 琼海市| 曲水县| 汉中市| 长顺县| 桑植县| 铜山县|