/導出及其脫殼模塊、日志存儲模塊和認證單元。訪問仲裁單元包括至少一個訪問仲裁器。訪問仲裁單元中的每一個訪問仲裁器與訪問控制規(guī)則存儲模塊、數(shù)據(jù)緩存模塊和日志存儲模塊連接。數(shù)據(jù)緩存模塊與服務器之間還連接有用于數(shù)據(jù)脫殼處理的導入/導出及脫殼處理模塊。至少一個訪問仲裁器與數(shù)據(jù)緩存模塊形成至少一個訪問通道。獨立式訪問控制器還包括認證單元,認證單元包括系統(tǒng)用戶登錄認證模塊、安全員認證模塊和審計員認證模塊。用于系統(tǒng)用戶登錄認證的系統(tǒng)用戶登錄認證模塊設置在系統(tǒng)用戶與訪問仲裁器之間。系統(tǒng)用戶登錄認證模塊與訪問控制規(guī)則存儲模塊連接,并且由訪問仲裁器對訪問控制模塊以只讀方式進行訪問。用于安全員身份認證的安全員認證模塊與訪問控制規(guī)則存儲模塊連接。安全員以寫方式對訪問控制規(guī)則模塊進行訪問。用于審計員身份認證的審計員認證模塊與日志存儲模塊連接。日志存儲模塊與至少一個訪問仲裁器連接以記錄系統(tǒng)用戶操作信息。
[0060]根據(jù)一個優(yōu)選實施方式,獨立式訪問控制器還包括新客體標記緩存模塊??腕w標記緩存模塊與安全員認證模塊和導入/導出及脫殼處理模塊分別連接。
[0061]獨立式訪問控制器設置在系統(tǒng)用戶和服務器之間。系統(tǒng)用戶發(fā)出訪問請求。系統(tǒng)用戶登錄認證模塊包括登錄信息前置模塊。該登錄信息前置模塊寫入用戶的身份信息和賬戶信息。
[0062]訪問仲裁器從系統(tǒng)用戶登錄認證模塊讀取系統(tǒng)用戶的賬戶信息,并且將讀取的賬戶信息與訪問控制規(guī)則存儲模塊中的賬戶信息區(qū)存儲的賬戶信息進行比對。若賬戶信息比對成功,則系統(tǒng)用戶為合法登錄。若賬戶信息比對失敗,則系統(tǒng)用戶為非法登錄。訪問仲裁器拒絕非法用戶的訪問,并且清除登錄信息前置模塊的用戶登錄信息。
[0063]訪問仲裁器繼續(xù)讀取合法用戶的身份信息,并且將讀取的身份信息與訪問控制規(guī)則存儲模塊中的身份驗證區(qū)存儲的身份信息進行身份驗證。若驗證信息錯誤,訪問仲裁器拒絕系統(tǒng)用戶的訪問,并且清除登錄信息前置模塊的用戶登錄信息。
[0064]對于身份驗證通過的用戶,訪問仲裁器進一步識別系統(tǒng)用戶提出的操作請求。訪問仲裁器向訪問控制規(guī)則存儲模塊內的訪問控制列表發(fā)出詢問,求證用戶的訪問權限。對于高安全級別的訪問,訪問仲裁器還向訪問控制規(guī)則存儲模塊中的標記區(qū)求證其標記的合法性。對于非法的訪問,訪問仲裁器拒絕其進一步操作,并清除登錄信息前置模塊的用戶登錄信息O
[0065]對于操作請求合法的系統(tǒng)用戶,訪問仲裁器打開至少一個訪問通道。以使系統(tǒng)用戶訪問服務器。訪問通道由訪問仲裁器和數(shù)據(jù)緩存模塊連接形成。訪問通道可以直接由計算機中的數(shù)據(jù)總線,或者專業(yè)的開關器件形成。當認為此次訪問合法,訪問仲裁器就通過程序控制,使得用戶可以使用數(shù)據(jù)總線。數(shù)據(jù)總線與數(shù)據(jù)緩存模塊連接。對于計算機中的總線,可以以分段形式分配給用戶使用,也可以分時復用為多個用戶服務。CPU肯定是分時復用的。
[0066]如果訪問通道為電子開關器件,電子開關器件的控制端會根據(jù)電平的高低,導致器件斷開與導通。訪問仲裁器只要根據(jù)用戶的操作是否合法,為電子開關器件的控制端加上高電平或者低電平就行了。電子開關器件的控制端,就是器件的某一個或者某一組器件外部的引腳。對該引腳加上高電壓,可能就使器件處于導通狀態(tài)。加上O電壓,電子開關器件處于斷開狀態(tài)。
[0067]同時,訪問仲裁器指示訪問控制規(guī)則存儲模塊內的服務器資源映射列表和導入/導出及脫殼處理模塊向服務器發(fā)出響應的訪問請求。服務器資源映射列表記錄的資源名稱與服務器中的數(shù)據(jù)資源呈映射關系。訪問仲裁器監(jiān)控系統(tǒng)用戶的所用操作。
[0068]當系統(tǒng)用戶提出的操作請求為讀操作時,導入/導出及脫殼處理模塊向服務器讀取相應的數(shù)據(jù)文件。導入/導出及脫殼處理模塊將數(shù)據(jù)載入數(shù)據(jù)緩存模塊,供系統(tǒng)用戶訪問處理。數(shù)據(jù)緩存模塊可根據(jù)實際需求,將數(shù)據(jù)文件設置為只讀、只寫、讀寫、復制、移動等操作模式。數(shù)據(jù)緩存模塊可以利用計算機中的指針技術,依據(jù)用戶的需求將整個數(shù)據(jù)緩存模塊內的數(shù)據(jù)緩存區(qū)動態(tài)的劃分為若干多個分區(qū),不同用戶對應的數(shù)據(jù)會暫存在相應的區(qū)間內。在系統(tǒng)用戶獲得到原數(shù)據(jù),并且將數(shù)據(jù)通過訪問通道讀取到客戶端的內存中的時候,數(shù)據(jù)緩存模塊內的數(shù)據(jù)緩存區(qū)隨即被釋放,供下一個用戶使用。為了防止剩余信息被當前用戶使用,數(shù)據(jù)緩存模塊設置兩項條件:(I)在沒有新數(shù)據(jù)寫入數(shù)據(jù)緩存區(qū)的情況下,不允許系統(tǒng)用戶讀此區(qū)域;(2)當前重新劃分的區(qū)域只能是上一次釋放區(qū)域的一個小部分。
[0069]當系統(tǒng)用戶提出的操作請求為寫操作時,導入/導出及脫殼處理模塊需要向服務器資源映射列表查詢數(shù)據(jù)文件是否標記,即服務器中是否已存在該數(shù)據(jù)文件。若服務器資源映射列表已經(jīng)記錄了訪問的數(shù)據(jù)文件,則導入/導出及脫殼處理模塊對數(shù)據(jù)文件進行脫殼處理。導入/導出及脫殼處理模塊將脫殼后的裸數(shù)據(jù)發(fā)送至服務器,由服務器重新按照文件格式進行封裝儲存。
[0070]若服務器資源映射列表沒有記錄訪問的數(shù)據(jù)文件,導入/導出及脫殼處理模塊將數(shù)據(jù)文件發(fā)送至新客體標記緩存模塊。導入/導出及脫殼處理模塊向安全員發(fā)出通知,通知安全員對此數(shù)據(jù)文件進行標記。安全員通過安全員認證模塊后,對數(shù)據(jù)文件進行標記。導入/導出及脫殼處理模塊將標記好的數(shù)據(jù)文件添加到服務器資源映射列表中。導入/導出模塊對標記的數(shù)據(jù)文件進行脫殼處理。導入/導出及脫殼處理模塊將脫殼后的裸數(shù)據(jù)發(fā)送至服務器,由服務器重新按照文件格式進行封裝儲存。
[0071]本發(fā)明中,導入/導出及脫殼處理模塊的脫殼處理即去掉原數(shù)據(jù)文件的應用程序平臺的信息,僅保留原始的裸數(shù)據(jù)。所有的數(shù)據(jù)文件,都會有一個后綴,這個后綴標明了該文件是由何種應用程序平臺所產生。即在保存時,將原來的數(shù)據(jù)上增加應用程序平臺中信息,形成加殼的數(shù)據(jù)文件。從而該數(shù)據(jù)文件以相應的軟件平臺來打開和處理。病毒和木馬可能利用一些應用程序平臺中的漏洞,插入一些惡意代碼,使數(shù)據(jù)文件感染病毒。脫殼處理的目的就是去掉原始應用程序的信息,僅保留原始的裸數(shù)據(jù)。這些數(shù)據(jù)如果不重新加“殼”,只能是一些二進制的代碼,系統(tǒng)將無法識別。由于在服務器上應用的程序平臺,被認為是干凈的、可信的。因此將裸數(shù)據(jù)在服務器上重新被封裝,減少了服務器感染惡意代碼的機會。
[0072]訪問仲裁器將系統(tǒng)用戶的所有操作過程和結果記錄后生成日志文件,發(fā)送至日志存儲模塊保存。對于超出閾值的操作信息,訪問仲裁器將產生報警信息,發(fā)送至相關報警設備。
[0073]實施例二
[0074]如圖3所示,為單一用戶訪問控制器的原理圖。用戶在智能終端安裝有客戶端??蛻舳藢⒂脩舻牡卿浶畔⑦M行透明的加密,避免在網(wǎng)上被其他用戶截獲。同時可以將用戶的登錄信息,欲訪問的服務器資源等信息打包。用戶在發(fā)起對服務器的某資源的訪問時,打包信息就會寫入(只寫操作)到用戶登錄的登錄信息前置模塊。訪問仲裁器同時向訪問控制規(guī)則存儲模塊讀取與用戶相關的信息。信息包括:1、用于身份認證的用戶身份信息。2、用于識別該用戶的安全屬性、所屬部門及相應的權力的用戶標記信息。3、用于最終確認此次訪問的合法性的訪問控制列表。訪問仲裁器對用戶的信息進行合法匹配。只要用戶的信息中,有一條信息不合法,此次用戶的訪問即被取消。登錄信息前置模塊的存儲空間即被釋放。
[0075]登錄信息前置模塊由RAM器件構成,保證有足夠大的容量,允許多用戶排隊登錄。登錄信息前置模塊對于每個用戶的訪問,是完全開放的。當?shù)谝粋€用戶按照規(guī)定的格式將信息全部寫入后,系統(tǒng)用戶登錄認證模塊會為該用戶自動生成保護邊界,保護用戶的信息。當?shù)诙€用戶登錄時,系統(tǒng)用戶登錄認證模塊的保護邊界內的區(qū)域不能再次寫入。但其他的存儲區(qū)域則可以被第二個用戶寫入,同樣當按照規(guī)則的格式寫入完畢后,該存儲區(qū)域也會自動生成一個保護邊界,依此類推。直到登錄信息前置模塊的用戶完成了一次操作,該存儲區(qū)域被釋放為止。
[0076]訪問仲裁器確認用戶的登錄和操作為合法時,隨即打開訪問仲裁單元的其中一個訪問通道,并且向服務器映射列表發(fā)出指令,使用戶通過導入/導出及脫殼處理模塊向服務器對應的資源發(fā)起相應的訪問。
[0077]對于讀操作,導入/導出及脫殼處理模塊將對應的資源文件導入到由訪問仲裁器指定數(shù)據(jù)緩存模塊的緩存區(qū)域中。并且由用戶通過訪問通道導入客戶端,并將此緩存區(qū)域釋放。
[0078]當用戶完成了對某一文件的訪問并進行了寫操作后,用戶啟動“保存”操作時,訪問仲裁器首先要向服務器資源映射列表進行查詢。若數(shù)據(jù)資源是服務器資源映射列表中的已有數(shù)據(jù)資源,則指令導入/導出及脫殼處理模塊對此數(shù)據(jù)資源進行脫殼處理。只向服務器端傳輸裸數(shù)據(jù),并告知服務器此數(shù)據(jù)是何種類型的數(shù)據(jù),由服務器重新給該數(shù)據(jù)進行加殼處理。這樣做的目的,是盡可能的防范惡意代碼的感染。若訪問仲裁器的查詢結果是,月艮務器資源表中沒有該客體,該客體會被轉入到新客體標記緩存模塊,等