非超級用戶訪問存儲設備的方法和系統的製作方法
2023-10-08 18:19:59
專利名稱:非超級用戶訪問存儲設備的方法和系統的製作方法
技術領域:
本發明涉及一種基於Windows NT技術架構作業系統下非超級用戶訪問存儲設備的方法,特別涉及一種利用服務程序實現基於Windows NT技術架構作業系統下非超級用戶訪問存儲設備的方法。
背景技術:
Windows NT提供了一個穩定、可擴展作業系統的基礎。目前基於WindowsNT技術架構的作業系統主要有Windows2000,Windows2003,Windows XP,以及Windows VISTA等。
由於Windows是一個支持多用戶、多任務的作業系統,安全性是非常關鍵的問題,因此Windows NT技術架構的作業系統需要對用戶進行權限設置。權限是指用戶對系統資源的訪問權利。權限的設置是基於用戶和進程而言,不同的用戶訪問計算機具有不同的權限。
Windows NT的用戶被分成許多組,常見的用戶組有以下幾種Administrator管理員組,默認情況下,Administrator中的用戶對計算機/域有不受限制的完全訪問權。
System擁有和Administrator一樣,甚至比其還高的權限。具有系統和系統級的服務正常運行所需要的權限。
Power User高級用戶組,在權限設置中,這個組的權限是僅次於Administrator的。Power User可以執行除了為Administrator組保留的任務外的其他任何作業系統任務。
User普通用戶組,這個組的用戶無法對計算機系統進行改動。
Guest來賓組,來賓帳戶的限制要比普通User帳號更多。
通常習慣稱Administrator、System和Power User為超級用戶,User和Guest為非超級用戶。
隨著計算機技術的不斷發展,人們對數據存儲設備的要求也越來越高,特別是數據的移動存儲。對於通過USB接口與計算機連接的存儲設備通常稱為USB存儲設備。信息安全設備是一種帶有處理器和存儲器的小型硬體裝置,可通過計算機的數據通訊接口與計算機連接,一般通過USB接口與計算機相連,通常被稱為USB KEY或USB Token。信息安全設備中的存儲器不僅可以方便的進行數據的加密/解密處理,還可以提供多種數據保護方式,已被越來越廣泛的應用於信息安全領域中。
軟體開發商或程序開發商(簡稱開發商)為了提高其產品的安全性,維護自身利益,廣泛採用信息安全設備,一般情況下開發商會通過編寫應用程式來實現信息安全設備對其產品的保護。
目前,在基於Windows NT技術架構的作業系統下,只有超級用戶對包括信息安全設備在內的存儲設備有設置權限,通常是通過設備對象或接口讀寫存儲設備的扇區或者以發送特定SCSI(Small Computer System Interface,小型計算機系統接口)命令的形式實現訪問通訊,而在非超級用戶帳號下不能對其進行寫扇區、寫特定參數等設置。由於在默認情況下對於非超級用戶的設備訪問控制操作做了權限限制,使用戶在非超級用戶權限下無法直接對設備進行訪問操作。所以,這就造成了在基於Windows NT技術架構作業系統下使用包括信息安全設備在內的存儲設備的局限性,給用戶的使用帶來很大的不便,同時也限制了信息安全設備等存儲設備的普及與應用。
因此,如何在非超級用戶帳號下,實現對存儲設備的訪問,是目前需要解決的技術問題。
發明內容
本發明要解決的技術問題是提供一種非超級用戶訪問存儲設備的方法和系統,可以在基於Windows NT架構的作業系統下實現非超級用戶對存儲設備的直接訪問。
本發明提供一種非超級用戶訪問存儲設備的方法,包括以下步驟1)存儲設備與預先安裝了所述存儲設備的服務程序的計算機相連;2)所述計算機在非超級用戶帳號下,所述存儲設備相關的應用程式利用所述服務程序訪問所述存儲設備。
優選地,所述安裝存儲設備的服務程序具體包括以下步驟
11)以超級用戶帳號登錄所述計算機;12)在所述計算機中安裝預先編寫的所述存儲設備的服務程序。
優選地,所述存儲設備的服務程序用於實現對設備的訪問和進程間的通訊。
所述存儲設備的服務程序是由所述存儲設備生產商預先編寫。
優選地,所述存儲設備與所述計算機通過USB接口或串行ATA接口相連。
優選地,所述存儲設備包括信息安全設備。
所述計算機運行系統為基於Windows NT架構的作業系統。
優選地,所述步驟2包括,21)所述存儲設備相關的應用程式與所述存儲設備的服務程序進行通訊;22)所述存儲設備的服務程序與所述存儲設備進行通訊,實現對所述存儲設備的訪問。
所述通訊是指進程間通訊。
所述進程間通訊方式包括管道方式、郵槽方式、內存共享方式、消息方式以及套接字方式。
本發明還提供一種實現非超級用戶訪問存儲設備的系統,包括服務程序安裝單元和設備訪問單元;所述服務程序安裝單元,用於在超級用戶帳號下在所述計算機中安裝存儲設備的服務程序;所述設備訪問單元,用於所述計算機在非超級用戶帳號下,所述與存儲設備相關的應用程式利用已經安裝在所述計算機中的所述存儲設備的服務程序訪問所述存儲設備。
優選地,所述設備訪問單元還包括進程通訊單元;所述進程通訊單元,用於所述存儲設備相關的應用程式與所述存儲設備的服務程序進行通訊。
本發明涉及的利用存儲設備Windows服務程序實現基於Windows NT技術架構作業系統下非超級用戶訪問存儲設備的方法,由於避免了在基於Windows NT技術架構的作業系統下非超級用戶對包括信息安全設備在內的存儲設備訪問權限的限制,從而提升了應用程式訪問存儲設備的權限。
圖1為本發明所述方法流程圖;圖2為本發明在超級用戶帳號下安裝存儲設備服務程序流程圖;圖3為本發明在非超級用戶帳號下訪問存儲設備流程圖。
圖4為本發明所述系統結構圖。
具體實施例方式
本發明提供一種非超級用戶訪問存儲設備的方法,可以使非超級用戶在基於Windows NT架構的作業系統下實現對存儲設備的訪問,方便用戶使用存儲設備,而且對計算機本身的安全性不會產生任何影響。所述的存儲設備包括信息安全設備。
Windows服務是運行於Windows NT技術架構的作業系統下的特殊的可執行文件。與大多數進程不同的是,它不與用戶或其他的應用程式進行交互。Windows服務可以在系統內的任何用戶環境下運行。形式為Windows服務的產品有Microsoft Exchange、SQL Server,設置計算機時鐘的Windows Time服務等。
服務控制管理器(Service Control Manager,簡稱SCM)存儲了安裝在計算機上的每個服務的有關信息。並且服務控制管理器可以跟蹤Windows服務在啟動、運行和停止時的狀態。Windows NT允許在服務控制管理器的資料庫中指定服務的安全信息,這樣服務的運行就不會受到用戶登錄和註銷的影響。Windows服務通過服務控制管理器來控制進程並實現與之交互。服務控制管理器中存儲了每個服務的相關信息,可以跟蹤服務在啟動、運行和停止時的狀態。服務通常是與計算機相關聯,而不是與特定用戶相關聯。
因此,本發明提出一種利用存儲設備的Windows服務程序,實現基於Windows NT技術架構作業系統下,使得非超級用戶正常訪問存儲設備的方法。
下面結合附圖對本發明具體實施方式
做進一步描述。
首先,參見圖1,該圖為本發明所述方法流程圖。
本發明所述一種訪問存儲設備的方法,包括以下步驟S1、存儲設備與預先安裝了所述存儲設備的服務程序的計算機相連。
由於計算機在默認情況下對於非超級用戶的設備訪問控制操作做了權限限制,因此在基於Windows NT技術架構的作業系統下,只有超級用戶有權限對包括信息安全設備在內的存儲設備進行設置,而非超級用戶不能對其進行設置,包括寫扇區、寫特定參數等。這樣就造成在基於Windows NT技術架構作業系統下,使用包括信息安全設備在內的存儲設備的局限性,給用戶的使用帶來很大的不便,同時也限制了信息安全設備等存儲設備的普及與應用。
本發明在超級用戶帳號下,安裝存儲設備的Windows服務程序到計算機中。這樣非超級用戶便可以通過安裝在所述計算機上的存儲設備的Windows服務程序與該存儲設備相關的應用程式的交互通信,來實現非超級用戶對存儲設備的直接訪問。
所述存儲設備與所述計算機可以通過USB接口或者串行ATA接口等方式相連。
S2、所述計算機在非超級用戶帳號下,所述存儲設備相關的應用程式利用所述服務程序訪問所述存儲設備。
非超級用戶登錄所述已經預先安裝了存儲設備的Windows服務程序的計算機後,非超級用戶可以通過安裝在所述計算機上的存儲設備的Windows服務程序與所述存儲設備相關的應用程式的交互通信,來實現非超級用戶對存儲設備的訪問。
步驟S2具體為所述存儲設備相關的應用程式與所述存儲設備的服務程序進行通訊;所述存儲設備的服務程序與所述存儲設備進行通訊,實現對存儲設備的訪問。
由於在計算機上已經安裝存儲設備的服務程序,當非超級用戶登錄計算機,並連接所述存儲設備後,所述存儲設備相關的應用程式可以與該計算機上已經安裝存儲設備的服務程序實現通訊。
下面介紹一下,在超級用戶帳號下訪問存儲設備的過程。
在基於Windows NT技術架構作業系統下,在超級用戶帳號下訪問存儲設備的過程首先通過存儲設備的應用程式調用硬體設備驅動程序,然後通過硬體設備驅動程序與存儲設備進行交互,實現對存儲設備的訪問。
在基於Windows NT技術架構作業系統下,非超級用戶沒有對存儲設備的訪問權限。在非超級用戶帳號下,可以利用本發明所述方法實現對存儲設備的訪問。
與所述存儲設備相關的應用程式利用所述存儲設備的Windows服務程序與存儲設備相關的應用程式進行交互通信,具體為存儲設備相關的應用程式透過硬體設備驅動程序與存儲設備對象進行交互,實現對存儲設備對象進行訪問操作。
由於增加了存儲設備的Windows服務程序,使得存儲設備相關的應用程式不必和硬體驅動程序直接交互,避免了用戶權限的問題。
下面介紹一下在超級用戶帳號下安裝存儲設備服務程序的過程。
參見圖2,該圖為本發明在超級用戶帳號下安裝存儲設備服務程序流程圖。
在超級用戶帳號下安裝存儲設備的Windows服務程序的過程S201、以超級用戶帳號登錄計算機。
所述計算機中運行的是基於Windows NT技術架構作業系統,比如Windows2000,Windows2003,Windows XP,或Windows VISTA等。
S202、在所述計算機中安裝預先編寫的存儲設備的Windows服務程序。
由於超級用戶具有安裝服務程序的權限,因此可以在所述計算機中安裝預先編寫的存儲設備的Windows服務程序。
所述存儲設備的Windows服務程序是由存儲設備生產商預先編寫好的,該服務程序可以實現對存儲設備的訪問,還可以實現進程間的通訊。
S203、服務控制管理器啟動所述存儲設備的Windows服務程序。
服務控制管理器可以在安裝完所述服務程序之後啟動所述存儲設備的Windows服務程序,也可以在計算機下次登錄的時候啟動所述存儲設備的Windows服務程序。
下面介紹一下在非超級用戶帳號下訪問存儲設備的過程。
參見圖3,該圖為本發明在非超級用戶帳號下訪問存儲設備流程圖。
在非超級用戶帳號下利用存儲設備的Windows服務程序訪問存儲設備過程S301、以非超級用戶帳號登錄該計算機。
S302、存儲設備相關的應用程式與所述存儲設備的Windows服務程序進行通訊。
存儲設備相關的應用程式是運行在非超級用戶帳號下的,其與存儲設備的Windows服務程序間進行通訊實質上是指進程間通訊。進程間通訊可以採用管道方式、郵槽方式、內存共享方式、消息方式或套接字方式等。
管道通訊方式,就是連接在兩個進程之間打開一個共享文件,專用於進程之間進行數據通信。
郵槽通訊就是創建一個連結兩個進程的信箱,以發送信件以及接收回答信件為進程間通訊的基本方式。
內存共享就是在相互通信的進程之間開設一個公共內存區,一組進程向該公共內存中寫,另一組進程從該公共內存中讀,通過這種方式實現兩組進程間的信息交換。
套接字可用於不同機器之間的進程間通訊。
上述幾種進程間通訊手段均為現有技術,具體實現過程在此不再贅述。
S303、所述存儲設備的Windows服務程序與存儲設備進行通訊,實現對該存儲設備的訪問操作。
由於本發明預先在計算機上安裝存儲設備的服務程序,當非超級用戶登錄計算機,該計算機連接該存儲設備時,該存儲設備相關的應用程式可以與計算機上已經安裝存儲設備的服務程序實現通訊。從而實現了非超級用戶與該存儲設備的通信。
本發明還提供了一種實現非超級用戶訪問存儲設備的系統。所述的存儲設備包括信息安全設備。
參見圖4,該圖為本發明所述系統的結構圖。
一種實現非超級用戶訪問存儲設備的系統1包括服務程序安裝單元11和設備訪問單元12。
服務程序安裝單元11,用於在超級用戶帳號下在計算機中安裝存儲設備2的服務程序。
服務程序安裝單元11在超級用戶帳號下,安裝存儲設備特定的Windows服務程序到計算機中。這樣非超級用戶便可以通過安裝在所述計算機上的存儲設備的Windows服務程序與該存儲設備相關的應用程式的交互通信,來實現非超級用戶對存儲設備2的訪問。
設備訪問單元12,用於該計算機在非超級用戶帳號下,所述存儲設備相關的應用程式利用已經安裝在該計算機中的該存儲設備的服務程序訪問該存儲設備2。
利用服務程序安裝單元11安裝在計算機中的存儲設備的服務程序,通過設備訪問單元12實現與存儲設備相關的應用程式進行交互通信。這樣,存儲設備相關的應用程式就可以透過硬體設備驅動程序打開存儲設備2,實現對存儲設備2的訪問操作。
所述設備訪問單元12還包括進程通訊單元121。
進程通訊單元121,用於所述存儲設備相關的應用程式與所述存儲設備的服務程序進行通訊。
所述存儲設備的服務程序是特定的Windows服務程序,是由存儲設備生產商預先編寫好的。該服務程序可以實現對存儲設備的訪問,還可以實現進程間的通訊。進程通訊單元121用於實現所述存儲設備相關的應用程式與所述存儲設備的服務程序進行通訊。
由於服務程序安裝單元11在計算機上預先安裝了存儲設備的服務程序。當以非超級用戶帳號登錄計算機,並將該存儲設備2與計算機相連接時,設備訪問單元12可以使該存儲設備相關的應用程式與計算機上已經安裝的存儲設備的服務程序進行通訊。因此,在基於Windows NT架構的作業系統下可以實現非超級用戶對存儲設備2的訪問和使用。
以上所述僅是本發明的優選實施方式,應當指出,對於本技術領域的普通技術人員來說,在不脫離本發明原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應視為本發明的保護範圍。
權利要求
1.一種非超級用戶訪問存儲設備的方法,其特徵在於,包括以下步驟1)存儲設備與預先安裝了所述存儲設備的服務程序的計算機相連;2)所述計算機在非超級用戶帳號下,所述存儲設備相關的應用程式利用所述服務程序訪問所述存儲設備。
2.根據權利要求1所述非超級用戶訪問存儲設備的方法,其特徵在於,安裝所述存儲設備的服務程序具體包括以下步驟11)以超級用戶帳號登錄所述計算機;12)在所述計算機中安裝預先編寫的所述存儲設備的服務程序。
3.根據權利要求2所述非超級用戶訪問存儲設備的方法,其特徵在於,所述存儲設備的服務程序用於實現對設備的訪問和進程間的通訊。
4.根據權利要求3所述非超級用戶訪問存儲設備的方法,其特徵在於,所述存儲設備的服務程序是由所述存儲設備生產商預先編寫。
5.根據權利要求1所述非超級用戶訪問存儲設備的方法,其特徵在於,所述存儲設備與所述計算機通過USB接口或串行ATA接口相連。
6.根據權利要求1至5任一所述非超級用戶訪問存儲設備的方法,其特徵在於,所述存儲設備包括信息安全設備。
7.根據權利要求1所述非超級用戶訪問存儲設備的方法,其特徵在於,所述計算機運行作業系統為基於Windows NT架構的作業系統。
8.根據權利要求1所述非超級用戶訪問存儲設備的方法,其特徵在於,所述步驟2包括,21)所述存儲設備相關的應用程式與所述存儲設備的服務程序進行通訊;22)所述存儲設備的服務程序與所述存儲設備進行通訊,實現對所述存儲設備的訪問。
9.根據權利要求8所述非超級用戶訪問存儲設備的方法,其特徵在於,所述通訊是指進程間通訊。
10.根據權利要求9所述非超級用戶訪問存儲設備的方法,其特徵在於,所述進程間通訊方式包括管道方式、郵槽方式、內存共享方式、消息方式以及套接字方式。
11.一種實現非超級用戶訪問存儲設備的系統,其特徵在於,所述系統包括服務程序安裝單元和設備訪問單元;所述服務程序安裝單元,用於在超級用戶帳號下,在所述計算機中安裝存儲設備的服務程序;所述設備訪問單元,用於所述計算機在非超級用戶帳號下,所述存儲設備相關的應用程式利用已經安裝在所述計算機中的所述存儲設備的服務程序訪問所述存儲設備。
12.根據權利要求11所述的系統,其特徵在於,所述設備訪問單元還包括進程通訊單元;所述進程通訊單元,用於所述存儲設備相關的應用程式與所述存儲設備的服務程序進行通訊。
全文摘要
本發明涉及一種非超級用戶訪問存儲設備的方法和系統。本發明公開一種基於Windows NT架構作業系統下非超級用戶訪問存儲設備的方法,包括以下步驟1)存儲設備與預先安裝了所述存儲設備的服務程序的計算機相連;2)所述計算機在非超級用戶帳號下,所述存儲設備相關的應用程式利用所述服務程序訪問所述存儲設備。本發明還提供了一種實現非超級用戶訪問存儲設備的系統,包括服務程序安裝單元、進程通訊單元和設備訪問單元。本發明的目的是提供一種訪問存儲設備的方法和系統,可以實現非超級用戶對存儲設備的直接訪問。
文檔編號G06F21/00GK1963791SQ20061014425
公開日2007年5月16日 申請日期2006年11月30日 優先權日2006年11月30日
發明者陸舟, 於華章 申請人:北京飛天誠信科技有限公司