專利名稱:用于控制應(yīng)用程序?qū)Y源的訪問的信息處理設(shè)備和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及控制應(yīng)用程序通過操作系統(tǒng)對資源的訪問,并且更特別 地,涉及一種用于作為對信息處理設(shè)備的運行環(huán)境或運行狀態(tài)的響應(yīng)而 控制運行在該信息處理設(shè)備上的應(yīng)用程序?qū)Y源的訪問的技術(shù)。
背景技術(shù):
已經(jīng)提出了一種已知技術(shù)(例如參考專利文獻1 ),其中為了完全拒 絕沒有訪問權(quán)限的用戶所進行的信息導出,在信息處理設(shè)備中,作為對 用戶訪問權(quán)限的響應(yīng),限制諸如文件的打印、移動和復制,在軟盤中用 另一個名字保存文件,以及捕獲屏幕之類的功能。在專利文獻l (日本未審專利申請公開No. 2003-44297)中的技術(shù) 中,首先由資源管理程序捕獲對操縱由操作系統(tǒng)管理的諸如文件、網(wǎng)絡(luò)、 存儲單元、顯示器屏幕和外部附件之類的計算機資源的請求。捕獲到該 操縱請求的資源管理程序確定用戶是否有訪問在該操縱請求中指定的 計算機資源的權(quán)限。然后,作為確定的結(jié)果,當用戶有訪問^=又限時,資 源管理程序?qū)⒉倏v請求不加改變地傳遞給操作系統(tǒng)。另一方面,當用戶 沒有訪問權(quán)限時,資源管理系統(tǒng)拒絕操縱請求。發(fā)明內(nèi)容但是,在前述技術(shù)中,結(jié)合用戶和計算機資源的組合而定義了對計 算機資源的訪問許可。訪問許可由例如管理員靜態(tài)地定義。這樣,在前 述技術(shù)中,不能作為對信息處理設(shè)備的運行環(huán)境或運行狀態(tài)的響應(yīng)而改 變訪問許可。不能作為對信息處理設(shè)備的運行環(huán)境的響應(yīng)而指定訪問許 可,該運行環(huán)境例如是如下環(huán)境,在該環(huán)境中,在諸如公司i殳備之類的
安全場所使用信息處理設(shè)備。而且,不能作為對信息處理設(shè)備的運行狀 態(tài)的響應(yīng)而指定訪問許可,該運行狀態(tài)例如是如下狀態(tài),在該狀態(tài)下,USB連接到信息處理設(shè)備。本發(fā)明的 一個目的是提供一種用于控制應(yīng)用程序通過操作系統(tǒng)對 數(shù)據(jù)的訪問的設(shè)備、方法和程序,以便為前述問題提供解決方案。解決問題的方法用于達到前述目的的本發(fā)明由在信息處理設(shè)備中執(zhí)行的用于控制 運行在該信息處理設(shè)備上的應(yīng)用程序?qū)Y源的訪問的以下方法來實現(xiàn)。 在這種方法中,首先檢測連接到信息處理設(shè)備上的設(shè)備的連接狀態(tài)或運 行狀態(tài)的變化。作為對連接狀態(tài)或運行狀態(tài)的變化的檢測的響應(yīng),選擇 要應(yīng)用于信息處理設(shè)備的資源訪問條件,參考表,在該表中設(shè)備的連接擇的i源訪問條件存:到條;存:丄元。然i,:為對捕獲由應(yīng)用程序 向操作系統(tǒng)發(fā)出的針對資源訪問的函數(shù)調(diào)用的響應(yīng),從條件存儲單元讀 取資源訪問條件,并且基于該資源訪問條件確定是否允許所捕獲的函數(shù) 調(diào)用。如果確定不允許所捕獲的函數(shù)調(diào)用,則拒絕該函數(shù)調(diào)用。這里的資源表示由操作系統(tǒng)管理的計算機資源,諸如文件、主存儲 器、外部存儲單元以及進程。而且,這里的針對資源訪問的函數(shù)調(diào)用可 以是用以瀏覽、創(chuàng)建、刪除、復制和移動資源,將資源讀入共享存儲器, 打印資源,以及激活進程的所有類型的針對數(shù)據(jù)訪問的函數(shù)調(diào)用中的任 意一種。優(yōu)選地,該設(shè)備可以是網(wǎng)絡(luò)設(shè)備、外部顯示器和外部介質(zhì)中的任意 一個。這里的外部介質(zhì)包括所有被信息處理設(shè)備識別為外部驅(qū)動器的介 質(zhì),例如,諸如USB存儲器、CD-ROM、 DVD-ROM、壓縮閃卡及SD 卡之類的存儲介質(zhì)和諸如外部硬盤驅(qū)動器和數(shù)碼相機之類的外圍設(shè)備。優(yōu)選地,檢測步驟包括檢測網(wǎng)絡(luò)設(shè)備的運行狀態(tài)的變化的步驟。如 果無線網(wǎng)絡(luò)設(shè)備準備就緒可以使用,則選擇步驟包括選擇比在有線網(wǎng)絡(luò) 設(shè)備準備就緒可以使用的情況下的資源訪問條件更嚴格的資源訪問條 件的步驟。 優(yōu)選地,檢測步驟包括在檢測到網(wǎng)絡(luò)設(shè)備準備就緒可以使用時獲取 信息處理設(shè)備所連接到的網(wǎng)絡(luò)的類型的步驟,該類型表明了該網(wǎng)絡(luò)的安 全級別。如果網(wǎng)絡(luò)設(shè)備準備就緒可以使用并且所連4妄網(wǎng)絡(luò)的類型并不代 表安全的網(wǎng)絡(luò),則選擇步驟包括選擇比在網(wǎng)絡(luò)設(shè)備準備就緒可以使用并 且網(wǎng)絡(luò)的類型代表安全網(wǎng)絡(luò)的情況下的資源訪問條件更嚴格的資源訪 問條件的步驟。優(yōu)選地,檢測步驟包括檢測外部顯示器的連接狀態(tài)的變化的步驟。 如果外部顯示器已連接,則選擇步驟包括選擇用于拒絕用以瀏覽預定數(shù) 據(jù)的函數(shù)調(diào)用的資源訪問條件的步驟。優(yōu)選地,檢測步驟包括檢測外部介質(zhì)的連接狀態(tài)或運行狀態(tài)的變化 的步驟。如果外部介質(zhì)已連接或者準備就緒可以使用,則選擇步驟包括 選擇用于使得從外部介質(zhì)調(diào)用的進程和另 一個進程在不同的條件下訪 問資源的資源訪問條件的步驟。優(yōu)選地,檢測步驟包括在檢測到外部介質(zhì)已連接或準備就緒可以使 用時獲取外部介質(zhì)的硬件標識信息的步驟。如果外部介質(zhì)已連接或準備 就緒可以使用,則選擇步驟包括基于外部介質(zhì)的硬件標識信息選擇要應(yīng) 用于信息處理設(shè)備的資源訪問條件。使用廠商、模型號、序列號等等作 為^5更件標識信息。優(yōu)選地,該用于控制資源訪問的方法進一步包括作為對檢測多個設(shè) 備的連接狀態(tài)或運行狀態(tài)的變化的響應(yīng),將檢測到的多個設(shè)備的連接狀 態(tài)或運行狀態(tài)存儲到狀態(tài)存儲單元的步驟。在該表中,該多個設(shè)備的連擇步驟包括從狀態(tài)存儲單元讀取各個設(shè)備的當前連接狀態(tài)或運行狀態(tài)、 參考表、以及選擇要應(yīng)用于信息處理設(shè)備的資源訪問條件的步驟,在該 表中多個設(shè)備的連接狀態(tài)或運行狀態(tài)的每個組合都與應(yīng)當應(yīng)用的資源 訪問條件相關(guān)聯(lián)。雖然將本發(fā)明已經(jīng)被描述為一種在信息處理設(shè)備中用于控制通過 操作系統(tǒng)對資源的訪問的方法,但是本發(fā)明可以被考慮為 一種用于使信 息處理設(shè)備執(zhí)行這種方法的程序。而且,本發(fā)明可以被考慮為一種用于
控制通過操作系統(tǒng)對數(shù)據(jù)的訪問的信息處理設(shè)備。 優(yōu)勢根據(jù)本發(fā)明,可以基于信息處理設(shè)備的運行環(huán)境或運行狀態(tài)靈活地 拒絕或允許通過操作系統(tǒng)的資源訪問。
現(xiàn)在將基于附圖詳細描述用于執(zhí)行本發(fā)明的最佳模式。以下實施例 并不會對權(quán)利要求書中所要求保護的本發(fā)明構(gòu)成限制。此外,實施例中 所描述的特征的所有組合并不一定只能用于本發(fā)明的用于解決上述問 題的方法。貫穿對實施例的描述,相同的標號被分配給相同的組件。圖1示出了根據(jù)本發(fā)明的一個實施例的信息處理設(shè)備100的硬件配置示例。圖2是信息處理設(shè)備100的功能框圖,該信息處理設(shè)備100執(zhí)行根 據(jù)本發(fā)明的 一 個實施例的用于控制通過操作系統(tǒng)的數(shù)據(jù)訪問的程序 220。圖3的(a)部分示出了表明各個設(shè)備當前連接狀態(tài)或運行狀態(tài)的 信息的示例。(b)部分示出了分配給網(wǎng)絡(luò)設(shè)備的兩個比特的含義。(c) 部分示出了分配給不同于網(wǎng)絡(luò)設(shè)備的設(shè)備的一個比特的含義。 圖4示出了選擇表245的一個示例。 圖5示出了圖4所示的七十二個訪問條件的細節(jié)的示例。 圖6是示出駐留程序222的處理流程的示例的流程圖。 圖7是示出程序224的處理流程的示例的流程圖。
具體實施方式
圖1示出了可以在本發(fā)明的一個實施例中使用的信息處理設(shè)備的硬 件配置示例。信息處理設(shè)備100包括CPU外圍部分、輸入輸出部分和 既有輸入輸出部分,其中CPU外圍部分包括通過主機控制器110相互 連接的CPU 105、 RAM 115和圖形控制器120,顯示器125,以及外部 顯示器180,輸入輸出部分包括通過輸入輸出控制器130連接到主機控
制器110的通信接口 145、硬盤驅(qū)動器135和CD-ROM驅(qū)動器140,既 有輸入輸出部分包括連接到輸入輸出控制器130的超級I/O控制器150、閃速ROM 160和鍵盤鼠標控制器165以及連接到超級I/O控制器150 的軟盤驅(qū)動器155。主機控制器110將CPU 105和圖形控制器120連接到RAM 115, CPU 105和圖形控制器120以高傳送速率訪問RAM 115。 CPU 105根據(jù) 存儲在閃速ROM 160和RAM 115中的程序運行并控制各個組件。圖形 控制器120獲取在由CPU 105等在RAM 115中提供的幀緩沖器中產(chǎn)生 的圖像數(shù)據(jù)并在顯示器125和/或外部顯示器180上顯示該圖像數(shù)據(jù)。作 為對這種配置的替代,圖形控制器120可以包括存儲由CPU 105等產(chǎn)生 的圖像數(shù)據(jù)的幀緩沖器。輸入輸出控制器130將作為相對高速的輸入輸出單元的通信接口 145、硬盤驅(qū)動器135和CD-ROM驅(qū)動器140連接到主機控制器110。 通信接口 145通過網(wǎng)絡(luò)與外部設(shè)備通信。通信接口 145是連接到Ethernet(以太網(wǎng),注冊商標)的以太網(wǎng)適配器或通過空中接口而不是電纜連接 到網(wǎng)絡(luò)的無線LAN (局域網(wǎng))適配器。新近的信息處理設(shè)備100既包 括以太網(wǎng)適配器又包括無線LAN適配器作為通信接口 145。當信息處 理設(shè)備100是筆記本電腦時,輸入輸出控制器130進一步將CardBus控 制器190連接到主機控制器110。 CardBus控制器190控制插入到PC卡 槽的PC卡,PC卡作為例如閃存卡、硬盤、SCSI卡、LAN卡或無線LAN 卡使用。硬盤驅(qū)動器135存儲信息處理設(shè)備100使用的程序和數(shù)據(jù)。 CD-ROM驅(qū)動器140從CD-ROM讀取程序或數(shù)據(jù)并將這些程序或數(shù)椐 提供給RAM 115或硬盤驅(qū)動器135。而且,在輸入輸出控制器130中提 供USB端口 。 USB端口連接到在例如信息處理設(shè)備100的壁面上提供 的USB連接器170上。諸如USB存儲器或USB外部HDD之類的可移 動設(shè)備可以連接到USB連接器170。而且,閃速ROM 160以及作為相對低速輸入輸出單元的超級I/O 控制器150、鍵盤鼠標控制器165等連接到輸入輸出控制器130。閃速ROM 160存儲在信息處理設(shè)備100被激活時由CPU 105執(zhí)行的引導程 序、依賴于信息處理設(shè)備IOO的硬件的程序等等。軟盤驅(qū)動器155從軟 盤讀取程序或數(shù)據(jù)并通過RAM 115將這些程序或數(shù)據(jù)提供給超級I/O 控制器150。超級I/0控制器150通過并口、串口、鍵盤端口、鼠標端 口等等來實現(xiàn)對例如打印機、軟盤、鍵盤和鼠標之類的輸入輸出單元的 連接。下面描述的根據(jù)本發(fā)明的用于控制通過操作系統(tǒng)的資源訪問的程 序220存儲在諸如軟盤、CD-ROM或IC卡之類的存儲介質(zhì)中并由用戶 提供。通過輸入輸出控制器130和/或超級I/0控制器150從存儲介質(zhì)上 讀取該程序并在信息處理設(shè)備100中安裝和執(zhí)行該程序。程序220可以存儲在外部存儲介質(zhì)中。除了軟盤和CD-ROM,諸如 DVD或PD之類的光記錄介質(zhì),諸如MD、磁帶介質(zhì)之類的磁-光記錄 介質(zhì),諸如IC卡之類的半導體存儲器等可以作為存儲介質(zhì)使用。而且, 可以使用在連接到專用通信網(wǎng)絡(luò)、因特網(wǎng)等的服務(wù)器系統(tǒng)中所提供的諸 如硬盤或RAM之類的存儲單元作為存儲介質(zhì),通過網(wǎng)絡(luò)將程序提供給 信息處理設(shè)備100。圖2是信息處理設(shè)備100的功能框圖,該信息處理設(shè)備100執(zhí)行根 據(jù)本發(fā)明的 一 個實施例的用于控制通過操作系統(tǒng)的資源訪問的程序 220。圖2中示出的硬件200是圖1中示出的信息處理設(shè)備100的硬件。 信息處理設(shè)備100使得操作系統(tǒng)(以下稱為OS )205在硬件200上運行。 OS 205是執(zhí)行各種類型的應(yīng)用210的通用OS,諸如微軟公司的Windows (商標)OS, IBM公司的OS/2 (商標),或Linux (注冊商標)OS。一般而言,在通用OS上運4亍的應(yīng)用程序210在該應(yīng)用程序210訪 問資源時使用由OS205提供的應(yīng)用程序接口 (以下稱為API)。例如, 當應(yīng)用程序210制作文件副本時,應(yīng)用程序210向OS 205發(fā)出API函 數(shù)調(diào)用以制作文件副本。類似地,當應(yīng)用程序210將文件從某個介質(zhì)移 動到另一個介質(zhì)時,應(yīng)用程序210向OS 205發(fā)出API函數(shù)調(diào)用以移動 該文件。當OS 205是Windows (商標)OS時,API函數(shù)被提供為動態(tài) 鏈接庫(以下稱為DLL) 215。說明書中描述的應(yīng)用程序210表示所有
的運行在OS 205上的程序。這樣,控制各種類型的應(yīng)用對資源的訪問通過如下操作來實現(xiàn),即 監(jiān)控對由OS 205提供的多個API函數(shù)中的被預設(shè)為對象的API函數(shù)的 調(diào)用以及正在受到監(jiān)控的對象中的進程,并基于適當?shù)馁Y源訪問條件來 確定是否允許檢測到的API函數(shù)調(diào)用。根據(jù)本發(fā)明的信息處理設(shè)備100 的一個目的是針對信息處理設(shè)備100的運行環(huán)境或運行狀態(tài)動態(tài)地確定 用于確定是否允許檢測到的API函數(shù)調(diào)用的資源訪問條件。根據(jù)連接到 信息處理系統(tǒng)100的設(shè)備的連接狀態(tài)或運行狀態(tài)來估計信息處理設(shè)備 100的運行環(huán)境或運4于狀態(tài)。用于控制通過才喿作系統(tǒng)對資源的訪問的程序220包括駐留程序222 和程序224,駐留程序222包括注冊模塊、檢測模塊和選擇模塊,程序 224包括確定模塊、控制模塊和捕獲模塊。這些模塊使得信息處理設(shè)備 100用作注冊單元225、檢測單元230、選擇單元240、確定單元260、 控制單元265和捕獲單元270。注冊單元225執(zhí)行用于從OS 205接收關(guān)于信息處理設(shè)備100的設(shè) 備硬件配置的變化的通知的注冊。 一般而言,OS205提供用于向指定應(yīng) 用發(fā)送關(guān)于硬件配置變化的通知的服務(wù)。在這個實施例中,為網(wǎng)絡(luò)設(shè)備、 外部顯示器和外部介質(zhì)注冊設(shè)備通知。例如,在Windows (商標)OS中,RegisterDeviceNotification函數(shù) 可以用于注冊設(shè)備通知。在RegisterDeviceNotification函數(shù)中,指定接 收設(shè)備事件的服務(wù)或窗口的句柄和指向指定了接收通知的設(shè)備或設(shè)備 類型的數(shù)據(jù)塊的指針。而且,可以使用Windows管理工具(WMI)的 ExecNotificationQuery函數(shù)注冊更詳細的設(shè)備事件通知,WMI是管理設(shè) 備驅(qū)動器的通用方法。檢測單元230檢測連接到信息處理設(shè)備100的設(shè)備的連接狀態(tài)或運 行狀態(tài)的變4匕。當使用RegisterDeviceNotification函凄t注冊i殳備通知時, 檢測單元230通過從Windows (商標)OS接收WM—DEVICECHANGE 消息來檢測設(shè)備的連接狀態(tài)或運行狀態(tài)的變化。WM—DEVICECHANGE 消息包括表明發(fā)生了什么事件的參數(shù)和指向包括關(guān)于發(fā)生事件的設(shè)備 的信息的關(guān)于事件的詳細信息的指針。例如,當設(shè)備或介質(zhì)被插入并準備就緒可以使用時,發(fā)送WM—DEVICECHANGE消息,其中DBT—DEVICEARRIVAL作為參數(shù) 被設(shè)置。而且,當網(wǎng)絡(luò)已經(jīng)準備就緒可以使用時,發(fā)送 WM—DEVICECHANGE 消 息, 其 中 設(shè) 置 了 DBT—DEVNODES—CHANGED。有必要通過單獨接收關(guān)于WMI事件的 通知來檢測電纜的連接狀態(tài)的變化。而且,當檢測單元230檢測到網(wǎng)絡(luò)設(shè)備的運行狀態(tài)的變化時,檢測 單元230獲取信息處理設(shè)備100所連接的網(wǎng)絡(luò)的類型,該類型表明了網(wǎng) 絡(luò)的安全級別。表明了安全級別的網(wǎng)絡(luò)類型包括可以用于確定信息處理 設(shè)備100是否在安全環(huán)境下使用的所有網(wǎng)絡(luò)類型,例如,建立了防火墻 的內(nèi)部網(wǎng)絡(luò)或沒有采取措施防止外部入侵的外部網(wǎng)絡(luò)。例如,可以通過 使用ipconfig命令檢查分配給信息處理設(shè)備100的IP地址的網(wǎng)絡(luò)端口值 來獲取網(wǎng)絡(luò)類型。而且,當一直存在于網(wǎng)絡(luò)中的特定設(shè)備的IP地址已 知時,可以通過向該特定設(shè)備發(fā)出ping命令來獲取所連接的網(wǎng)絡(luò)的類 型。例如,在特定設(shè)備是內(nèi)部服務(wù)器的情況下,當獲取對ping命令的響 應(yīng)時,所連4妄的網(wǎng)絡(luò)是內(nèi)部網(wǎng)絡(luò)。而且,當檢測單元230才全測到外部介質(zhì)已連接或準備就緒可以使用 時,檢測單元230獲取外部介質(zhì)的硬件標識信息,諸如廠商、模型號和 序列號。可以通過例如向設(shè)備驅(qū)動器發(fā)送I/0控制碼(DeviceIoControl) 并獲取設(shè)備描述符(DeviceDescriptor)來獲取這種硬件標識信息。而且,檢測單元230包括狀態(tài)存儲單元235,其存儲關(guān)于每個設(shè)備 的當前連接狀態(tài)或運行狀態(tài)的信息并用檢測到的每個設(shè)備的連接狀態(tài) 或運行狀態(tài)更新存儲在狀態(tài)存儲單元235中的信息。圖3示出了存儲在 狀態(tài)存儲單元235中的信息的示例。在這個實施例中,使用一個字節(jié)存 儲六類設(shè)備的連接狀態(tài)或運行狀態(tài),這六類設(shè)備包括有線網(wǎng)絡(luò)設(shè)備、無 線網(wǎng)絡(luò)設(shè)備、外部顯示器、外部介質(zhì)#1到#3,如圖3的(a)部分所示。 兩個比特分配給每個網(wǎng)絡(luò)設(shè)備, 一個比特分配給每個其他設(shè)備。圖3的(b)部分示出了分配給每個網(wǎng)絡(luò)設(shè)備的兩個字節(jié)的含義。
值00表明對應(yīng)的網(wǎng)絡(luò)設(shè)備未被使用。值01和10都表明對應(yīng)的網(wǎng)絡(luò)設(shè) 備正在被使用。值01表明對應(yīng)的網(wǎng)絡(luò)設(shè)備連接到內(nèi)部網(wǎng)絡(luò),值10表明 對應(yīng)的網(wǎng)絡(luò)設(shè)備連接到外部網(wǎng)絡(luò)。圖3的(c)部分示出了分配^個 其他設(shè)備的一個比特的含義。值0表明對應(yīng)的設(shè)備未連接到信息處理設(shè) 備100,值1表明對應(yīng)的設(shè)備連接到信息處理設(shè)備100。選擇單元240基于檢測到的連接狀態(tài)或運行狀態(tài)選擇要應(yīng)用于信息處理 設(shè)備100的資源訪問條件。更特別地,選擇單元240包括選擇表245, 該表中多個設(shè)備的連接狀態(tài)或運行狀態(tài)的每個組合都與應(yīng)當應(yīng)用于每 個組合的資源訪問條件相關(guān)聯(lián),并且選擇單元240參考選擇表245來選 擇與從狀態(tài)存儲單元235讀取的設(shè)備的當前連接狀態(tài)或運行狀態(tài)的組合 相關(guān)聯(lián)的資源訪問條件作為要應(yīng)用于信息處理設(shè)備100的資源訪問條 件。選擇單元240進一步包括條件存儲單元250并將所選擇的資源訪問 條件存儲到條件存儲單元250。圖4示出了選擇表245的示例,包括了五類設(shè)備有線網(wǎng)絡(luò)設(shè)備、 無線網(wǎng)絡(luò)設(shè)備、外部顯示器及外部介質(zhì)#1和#2。每個網(wǎng)絡(luò)設(shè)備處于以下 三種狀態(tài)中的一種連接到內(nèi)部網(wǎng)絡(luò)、連接到外部網(wǎng)絡(luò)、未被使用,如 參考圖2所述。每個其他設(shè)備處于以下兩種狀態(tài)中的一種連接的和未 連接的。這樣,通過計算三(有線網(wǎng)絡(luò)設(shè)備可能的狀態(tài)數(shù)量)、三(無 線網(wǎng)絡(luò)設(shè)備可能的狀態(tài)數(shù)量)、二(外部顯示器可能的狀態(tài)數(shù)量)、二(外 部介質(zhì)#1可能的狀態(tài)數(shù)量)和二 (外部介質(zhì)#2可能的狀態(tài)數(shù)量)的乘 積,可以發(fā)現(xiàn)存在多個設(shè)備的連接狀態(tài)或運行狀態(tài)的七十二種組合,并 且每個組合與應(yīng)當應(yīng)用于每個組合的訪問條件相關(guān)聯(lián)。這七十二個訪問 條件并非一定要相互不同,部分訪問條件可以相互重合。一般而言,多種類型的外部介質(zhì)可以連接到信息處理設(shè)備100,并 且相同的資源訪問條件可以應(yīng)用于所有的外部介質(zhì)。但是,在這個實施 例中,將連接到信息處理設(shè)備100的外部介質(zhì)分類,如圖4所示,并且 為特定的外部介質(zhì)選擇資源訪問條件,該資源訪問條件不同于其他外部 介質(zhì)的資源訪問條件。這實現(xiàn)了訪問控制,其中例如在有特定模型號并
由公司發(fā)給員工用于商業(yè)用途的諸如有指紋認證功能的USB存儲器之 類的可靠介質(zhì)和很多非特定的不可靠介質(zhì)之間進行區(qū)分。圖5示出了圖4所示出的七十二個資源訪問條件的細節(jié)的示例。用 戶或管理信息處理設(shè)備100的系統(tǒng)管理員可以適當?shù)卮_定并設(shè)置資源訪 問條件。將資源訪問條件1應(yīng)用于信息處理設(shè)備IOO通過有線網(wǎng)絡(luò)設(shè)備 連接到內(nèi)部網(wǎng)絡(luò)的情況。由于信息處理設(shè)備IOO用電纜連接到外部網(wǎng)絡(luò), 可以假定信息處理設(shè)備IOO是在基本上只有同一部門的員工可以進入的 安全場所使用的,該場所諸如公司中員工的個人工作區(qū)。這樣,在訪問 條件1中,允許所有類型的針對數(shù)據(jù)訪問的函數(shù)調(diào)用,諸如用以瀏覽、 創(chuàng)建、刪除、復制和移動數(shù)據(jù),將數(shù)據(jù)讀入共享存儲器,打印數(shù)據(jù),以 及激活進程的函數(shù)調(diào)用。另 一方面,將資源訪問條件6應(yīng)用于信息處理設(shè)備100通過無線網(wǎng) 絡(luò)設(shè)備連接到內(nèi)部網(wǎng)絡(luò)的情況。由于信息處理設(shè)備IOO通過空中接口連 接到內(nèi)部網(wǎng)絡(luò),所以可以假定信息處理系統(tǒng)IOO是在例如另一個部門中 的員工以及參觀乂^司的客戶和商家可以進入的諸如公司的會議室或自 助餐廳之類的場所使用的。這樣,盡管信息處理設(shè)備100在公司內(nèi)使用, 還是需要在一定程度上考慮包括信息泄漏的風險。因此,在資源訪問條 件6中,對于諸如機密信息之類的預定數(shù)據(jù),禁止用以復制、刪除和移 動數(shù)據(jù),將數(shù)據(jù)讀入共享存儲器,打印數(shù)據(jù),以及激活進程的函數(shù)調(diào)用。 以這種方式,在這個實施例中,資源訪問條件6要比資源訪問條件1嚴 格。當無線網(wǎng)絡(luò)設(shè)備準備就緒可以使用時,將比在有線網(wǎng)絡(luò)設(shè)備準備就 緒可以使用的情況下更嚴格的資源訪問條件應(yīng)用于信息處理設(shè)備100。將資源訪問條件9應(yīng)用于信息處理設(shè)備IOO通過無線網(wǎng)絡(luò)設(shè)備連接 到外部網(wǎng)絡(luò)的情況。由于信息處理設(shè)備IOO通過空中接口連接到外部網(wǎng) 絡(luò),所以可以假定信息處理設(shè)備IOO是在有很多非特定的人存在的諸如 機場或旅館大廳之類的場所使用的。這樣,在資源訪問條件9中,對于 諸如機密信息之類的預定數(shù)據(jù),禁止所有類型的針對數(shù)據(jù)訪問的函數(shù)調(diào) 用,諸如用以瀏覽、復制、刪除和移動數(shù)據(jù),將數(shù)據(jù)讀入共享存儲器, 打印數(shù)據(jù),以及激活進程的函數(shù)調(diào)用。以這種方式,在這個實施例中, 資源訪問條件9要比資源訪問條件6嚴格。當信息處理設(shè)備100連接到 不安全的網(wǎng)絡(luò)時,將比在信息處理設(shè)備100連接到安全網(wǎng)絡(luò)的情況下更 嚴格的資源訪問條件應(yīng)用于信息處理設(shè)備100。將資源訪問條件12應(yīng)用于外部顯示器連接到信息處理設(shè)備100的 情況。在很多情況下,外部顯示器用于進行顯示,并且參與者可以通過 外部顯示器查看出現(xiàn)在信息處理設(shè)備100的屏幕上的信息。這樣,存在 由于操作信息處理設(shè)備100的用戶的誤操作而造成機密信息意外地出現(xiàn) 在屏幕上的風險,并且內(nèi)容可能泄漏。這樣,在資源訪問條件12中, 對于諸如機密信息之類的預定數(shù)據(jù),禁止用以瀏覽數(shù)據(jù)的函數(shù)調(diào)用。作 為對禁止用以瀏覽數(shù)據(jù)的函數(shù)調(diào)用的替代,也可以禁止用以在屏幕上顯 示數(shù)據(jù)的函數(shù)調(diào)用。將資源訪問條件19應(yīng)用于信息處理設(shè)備100通過有線網(wǎng)絡(luò)設(shè)備連 接到內(nèi)部網(wǎng)絡(luò)并且外部介質(zhì)#1連接到信息處理設(shè)備100的情況。由于外 部介質(zhì)#1連接到信息處理設(shè)備100,所以用戶可以很容易地將內(nèi)部網(wǎng)絡(luò) 中的信息存儲到外部介質(zhì)#1中并且輸出該信息。這樣,在資源訪問條件 19中,禁止用以使用外部介質(zhì)#1作為存儲場所來復制、創(chuàng)建和移動數(shù) 據(jù)以及將數(shù)據(jù)讀入共享存儲器的函數(shù)調(diào)用。在資源訪問條件19中,由于外部介質(zhì)#1所連接的信息處理設(shè)備100 連接到內(nèi)部網(wǎng)絡(luò),當感染病毒的文件存儲在外部介質(zhì)#1中時,病毒感染 可能擴散到內(nèi)部網(wǎng)絡(luò)。這樣,作為對資源訪問條件19的替代或補充, 對于在外部介質(zhì)#1中的數(shù)據(jù),禁止用以復制和移動數(shù)據(jù)及將數(shù)據(jù)讀入共 享存儲器的函數(shù)調(diào)用。將資源訪問條件21應(yīng)用于外部介質(zhì)#1連接到信息處理設(shè)備100的 情況。由于外部介質(zhì)#1存儲不需要作為機密內(nèi)容來處理的文件、程序等, 所以在資源訪問條件21中,允許所有類型的針對數(shù)據(jù)訪問的函數(shù)調(diào)用, 理由用以瀏覽、創(chuàng)建、刪除、復制和移動數(shù)據(jù),將數(shù)據(jù)讀入共享存儲器, 打印數(shù)據(jù),以及激活進程的函數(shù)調(diào)用。從資源訪問條件l、 19和21的 對比可以明顯看出,在這個實施例中,為多個設(shè)備的連接狀態(tài)或運行狀 態(tài)的每個組合提供了適用的資源訪問條件。
將資源訪問條件39應(yīng)用于外部介質(zhì)#2連接到信息處理設(shè)備100的 情況。外部介質(zhì)#2是一種用于處理機密商業(yè)信息的特殊設(shè)備,該設(shè)備包 括例如指紋認證功能和內(nèi)部VPN訪問程序,并且該外部介質(zhì)#2包括機 密數(shù)據(jù)。這樣,在資源訪問條件39中,對于在外部介質(zhì)#2中由預定硬 件標識信息標識的文件,禁止用以瀏覽、刪除、復制和移動文件的函數(shù) 調(diào)用,并且作為例外,只允許外部介質(zhì)#2中的特定程序瀏覽介質(zhì)#2中 的文件。這樣,在這個實施例中,將不同于外部介質(zhì)#1的資源訪問條件 應(yīng)用于外部介質(zhì)弁2。這樣,根據(jù)連接到信息處理設(shè)備100的設(shè)備的連接狀態(tài)或運行狀態(tài) 估計信息處理設(shè)備100的運行環(huán)境或運行狀態(tài),并且確定應(yīng)當應(yīng)用于所 估計的運行環(huán)境或運行狀態(tài)的資源訪問條件。所確定的資源訪問條件不 僅存儲在從駐留程序222和程序224都可以訪問的例如主存儲器之類的 共享區(qū)域,還可以存儲在例如硬盤或石茲光盤之類的記錄介質(zhì)的共享區(qū) 域。捕獲單元270捕獲由應(yīng)用程序210向OS 205發(fā)出的針對資源訪問 的多個函數(shù)調(diào)用。更特別地,作為對應(yīng)用程序210開始運行的響應(yīng),捕 獲單元270通過將針對資源訪問的多個函數(shù)調(diào)用的調(diào)用地址改變成控制 模塊的地址來捕獲由應(yīng)用程序210向OS 205發(fā)出的針對資源訪問的多 個函數(shù)調(diào)用,控制模塊實現(xiàn)控制單元265。這里針對資源訪問的多個函 數(shù)調(diào)用包括所有類型的針對資源訪問的函數(shù)調(diào)用,例如用以瀏覽、復制、 創(chuàng)建、刪除和移動數(shù)據(jù),將數(shù)據(jù)讀入共享存儲器,打印數(shù)據(jù),以及激活 進程的函數(shù)調(diào)用。在這個實施例中,這些功能由操作系統(tǒng)205作為 DLL#1到#3 215提供。否允許所捕獲的函i調(diào)用。在資源訪問條件中,指;^函數(shù);周用的類型、數(shù)據(jù)、進程等,允許或不允許由函數(shù)調(diào)用進行的數(shù)據(jù)處理,如參考圖5 所述。這樣,確定單元260通過將在所捕獲的函數(shù)調(diào)用中調(diào)用的函數(shù)與 資源訪問條件沖指定的函數(shù)進行比較來確定是否允許所捕獲的函數(shù)調(diào) 用。
當在資源訪問條件中禁止對預定數(shù)據(jù)的函數(shù)調(diào)用時,確定單元260 通過檢查所捕獲的函數(shù)調(diào)用的自變量所指定的數(shù)據(jù)類型來進一步確定 是否允許所捕獲的函數(shù)調(diào)用。例如,當禁止進行函數(shù)調(diào)用的預定數(shù)據(jù)的 類型是機密數(shù)據(jù)時,確定單元260檢查在所捕獲的函數(shù)調(diào)用的自變量所 指定的數(shù)據(jù)、數(shù)據(jù)名稱、存儲數(shù)據(jù)的文件夾的名稱等等中是否包括諸如 "才幾密"或"保密"之類的特定字符串。當在資源訪問條件中禁止指定預定數(shù)據(jù)存儲場所的函數(shù)調(diào)用時,確 定單元260通過檢查所捕獲的函數(shù)調(diào)用的自變量所指定的數(shù)據(jù)存儲場所 來進一步確定是否允許所捕獲的函數(shù)調(diào)用。例如,當禁止進行函數(shù)調(diào)用 的預定數(shù)據(jù)存儲場所是外部介質(zhì)時,確定單元260獲取由所捕獲的函數(shù) 的自變量所指定的存儲設(shè)備的屬性并確定該設(shè)備類型是否是可移動設(shè) 備。當指定特定的外部介質(zhì)作為預定數(shù)據(jù)存儲場所時,確定單元260進 一步獲取存儲設(shè)備的硬件標識消息并確定該硬件標識消息是否匹配于 在對應(yīng)的資源訪問條件中指定的硬件標識符,其中該特定的外部介質(zhì)由 例如表明廠家的商家ID或產(chǎn)品ID之類的預定硬件標識信息標識。在資 源訪問條件中,當只允許對函數(shù)進行調(diào)用并且被從預定場所調(diào)用的進程 執(zhí)行函數(shù)調(diào)用時,確定單元260進一步獲取其中存在調(diào)用進程程序模塊 的設(shè)備的類型、硬件標識信息等等,并確定這些信息是否匹配于資源訪 問條件。當應(yīng)用程序210已經(jīng)調(diào)用了控制單元265時,控制單元265調(diào)用確 定單元260并使得確定單元260確定是否允許所捕獲的函數(shù)調(diào)用。當確 定單元260確定不允許對應(yīng)的數(shù)據(jù)處理時,控制單元265拒絕該函數(shù)調(diào) 用。更特別地,當確定單元260確定不允許對應(yīng)的數(shù)據(jù)處理時,控制單 元265向應(yīng)用程序210返回4晉誤代碼,而不調(diào)用DLL#1到#3 215中的 函數(shù)。作為替代,控制單元265可以僅向應(yīng)用程序210返回空數(shù)據(jù)。當 確定單元260確定允許對應(yīng)的數(shù)據(jù)處理時,控制單元265指定由應(yīng)用程 序210指定的自變量,而不用改變和調(diào)用DLL#1到#3 215中的函數(shù)。 作為替代,控制單元265可以改變自變量并調(diào)用DLL#1到#3 215中的
函數(shù),或者可以在該函數(shù)調(diào)用之前和/或之后添加不同類型的函數(shù)調(diào)用。如上所述,在根據(jù)本發(fā)明的信息處理設(shè)備100中,可以基于與信息 處理設(shè)備100的運行環(huán)境或運行狀態(tài)對應(yīng)的資源訪問條件拒絕或允許通 過os的資源訪問?,F(xiàn)在將參考圖6和圖7中的流程圖描述根據(jù)本發(fā)明的信息處理設(shè)備 100的各個組件的操作。圖6示出了由駐留程序222使其用作注冊單元 225、 4企測單元230和選擇單元240的信息處理i殳備100中的處理的流 程示例。在執(zhí)行圖6所示出的處理之前,駐留程序222在信息處理設(shè)備 100上至少執(zhí)行一次并且使得信息處理設(shè)備100用作注冊單元225。特 別地,信息處理設(shè)備100作為預處理而針對從OS 205接收到關(guān)于設(shè)備 硬件配置變化的通知來執(zhí)行注冊。然后,在步驟S600中,駐留程序222 和OS 205 —起被激活,使得該處理開始。當已經(jīng)激活駐留程序222時,檢測單元230通過從OS 205接收狀 態(tài)變化通知來檢測連接到信息處理設(shè)備100的設(shè)備的連接狀態(tài)或運行狀 態(tài)的變化(步驟S610)。然后,檢測單元230確定檢測到的連接狀態(tài)或 運行狀態(tài)的變化是否是網(wǎng)絡(luò)設(shè)備或外部介質(zhì)的變化(步驟S620)。當檢 測到的連接狀態(tài)或運行狀態(tài)的變化是外部介質(zhì)的變化時,檢測單元230 獲取外部介質(zhì)的硬件標識信息(步驟S630 )。當^r測到的連接狀態(tài)或運 行狀態(tài)的變化是網(wǎng)絡(luò)設(shè)備的變化時,檢測單元230獲取信息處理設(shè)備所 連接的網(wǎng)絡(luò)的類型(步驟S635 )。在步驟S630或S635之后,或在步驟S620的"否"的情況下,處 理繼續(xù)到步驟S640,其中沖企測單元230用檢測到的i殳備的連接狀態(tài)或 運行狀態(tài)更新關(guān)于存儲在狀態(tài)存儲單元235中的設(shè)備當前連接狀態(tài)或運 行狀態(tài)的信息。該處理停留在步驟S610直到檢測單元230執(zhí)行了檢測。然后,作為對檢測單元230對狀態(tài)變化的4企測的響應(yīng),選擇單元240 基于檢測到的設(shè)備的連接狀態(tài)或運行狀態(tài)選擇要應(yīng)用于信息處理設(shè)備 100的資源訪問條件(步驟S650 )。特別地,選擇單元240參考選擇表 245,在該表中多個設(shè)備的連接狀態(tài)或運行狀態(tài)的每個組合都與應(yīng)當應(yīng) 用于每個組合的資源訪問條件相關(guān)聯(lián),并且選擇單元240選擇與從狀態(tài)
存儲單元235讀取的各個設(shè)備當前連接狀態(tài)或運行狀態(tài)的組合對應(yīng)的訪 問條件。然后,選擇單元240將所選擇的資源訪問條件存儲在條件存儲 單元250中(步驟S660 )。在步驟S660之后,處理回到步驟S610,并且重復前述的一系列步 驟。這樣,反映信息處理設(shè)備IOO的當前運行環(huán)境或運行狀態(tài)的適當訪 問條件一直存儲在條件存儲單元250中。圖7示出了由程序224使其用作捕獲單元270、確定單元260和控 制單元265的信息處理設(shè)備100中的處理的流程示例。程序224至少需并且并非一定要與OS 205 —起被激活,這與駐留程序222不同。在這 個實施例中,程序224和可以發(fā)出針對數(shù)據(jù)訪問的函數(shù)調(diào)用的應(yīng)用程序 210—起^皮激活。為了同時激活程序224和應(yīng)用程序210,將包括捕獲模塊、確定模 塊和控制模塊的程序24的對象文件(例如DLL)注冊為操作系統(tǒng)的標 準DLL。例如,在Windows (商標)中,當這些程序在注冊表中被作為 USER32擴展DLL注冊時,這些程序可以在啟動鏈接到USER32.DLL 的所有進程時被激活。在步驟S700中,在激活程序224時,處理開始。作為對應(yīng)用程序 210開始運行的響應(yīng),捕獲單元270通過將調(diào)用地址改變成控制模塊的 地址來捕獲由應(yīng)用程序210向OS 205發(fā)出的針對數(shù)據(jù)訪問的多個函數(shù) 調(diào)用,控制模塊實現(xiàn)控制單元265 (步驟S710)。更特別地,捕獲單元270在另一個區(qū)域備份DLL弁1到#3 215中一 些部分的首指令代碼(leading instruction code ),這些部分是從應(yīng)用程序 210調(diào)用的。然后,捕獲單元270用去往控制模塊的跳轉(zhuǎn)指令取代這些 指令代碼,控制模塊實現(xiàn)控制單元265。捕獲單元270進一步使控制單 元265調(diào)用備份的首指令代碼,而不是從控制單元265調(diào)用DLL #1到 #3 215。當從應(yīng)用程序210接收到調(diào)用時(步驟S720),控制單元265調(diào)用 確定單元260并"f吏得確定單元260確定是否允許所捕獲的函數(shù)調(diào)用。作
為對來自控制單元265的調(diào)用的響應(yīng),確定單元260從條件存儲單元250 讀取資源訪問條件(步驟S730)。然后,確定單元260首先確定在資源 訪問條件中不允許的任意函數(shù)是否匹配于在所捕獲的函數(shù)調(diào)用中調(diào)用 的函數(shù)(步驟S740)。當在資源訪問條件中不允許在所捕獲的函數(shù)調(diào)用中調(diào)用的函數(shù)時 (步驟S740:是),確定單元260確定在資源訪問條件中是否禁止針對 預定數(shù)據(jù)進行的函數(shù)調(diào)用(步驟S750)。當在資源訪問條件中禁止針對 預定數(shù)據(jù)進行的函數(shù)調(diào)用時,確定單元260確定所捕獲的函數(shù)調(diào)用的自 變量指定的數(shù)據(jù)類型是否與資源訪問條件中指定的預定數(shù)據(jù)對應(yīng)(步驟 S760 )。當所捕獲的函數(shù)調(diào)用是針對資源訪問條件中指定的預定數(shù)據(jù)進行 的時(步驟S760:是)或在步驟S750中"否"的情況下,確定單元260 進一 步確定在資源訪問條件中是否禁止指定預定存儲場所的函數(shù)調(diào)用 (步驟S770)。當在資源訪問條件中禁止指定預定存儲場所的函數(shù)調(diào)用 時,確定單元260確定由所捕獲的函數(shù)調(diào)用的自變量指定的數(shù)據(jù)存儲場 所是否為資源訪問條件中指定的預定存儲場所(步驟S775 )。當所捕獲的函數(shù)調(diào)用指定在資源訪問條件中指定的預定存儲場所 時(步驟S775:是)或在步驟S770中"否"的情況下,確定單元260 進一步確定在資源訪問條件中是否只允許對函數(shù)進行調(diào)用并且被從特 定場所調(diào)用的進程執(zhí)行函數(shù)調(diào)用(步驟S780)。當在訪問條件中只允許元260獲取設(shè)備的類型、硬件標識信息等,并確定該設(shè)備是否為訪問條 件中指定的用于激活進程的特定場所,其中在該設(shè)備中進程的一個程序 模塊調(diào)用該函數(shù)(步驟S785 )。當調(diào)用該函數(shù)的進程進行調(diào)用的場所不是在訪問條件中指定的特 定場所時(步驟S785:否)或在步驟S780中"否"的情況下,確定單 元260返回不允許所捕獲的函數(shù)調(diào)用的確定結(jié)果到控制單元265。作為 對確定單元260所得到的不允許所捕獲的函數(shù)調(diào)用的確定結(jié)果的響應(yīng), 控制單元265拒絕所捕獲的函數(shù)調(diào)用(步驟S790)。另一方面,在步驟20
S740、 S760或S775中"否"的情況下或在步驟S785中"是,,的情況 下,確定單元260返回允許所捕獲的函數(shù)調(diào)用的確定結(jié)果到控制單元 265。作為對確定單元260所得到的允許所捕獲的函數(shù)調(diào)用的確定結(jié)果 的響應(yīng),控制單元265繼續(xù)進行所捕獲的函數(shù)調(diào)用(步驟S795)。盡管已經(jīng)通過實施例對本發(fā)明進行了描述,但本發(fā)明的技術(shù)范圍不 限于在前述實施例中所描述的范圍。本領(lǐng)域的普通技術(shù)人員4艮容易想到 可以在前述實施例中進行各種改變和改進。因此,顯然,經(jīng)改變或改進 的實施例同樣被本發(fā)明的技術(shù)范圍所覆蓋。
權(quán)利要求
1.一種在信息處理設(shè)備中用于控制運行在所述信息處理設(shè)備上的應(yīng)用程序?qū)Y源的訪問的方法,所述方法包括檢測連接到所述信息處理設(shè)備上的設(shè)備的連接狀態(tài)或運行狀態(tài)的變化的步驟;作為檢測所述連接狀態(tài)或所述運行狀態(tài)的變化的響應(yīng),參考表并選擇要應(yīng)用于所述信息處理設(shè)備的資源訪問條件的步驟,在所述表中所述設(shè)備的所述連接狀態(tài)或所述運行狀態(tài)中的每個都與應(yīng)當應(yīng)用的資源訪問條件相關(guān)聯(lián);將所述所選擇的資源訪問條件存儲到條件存儲單元的步驟;捕獲由所述應(yīng)用程序向操作系統(tǒng)發(fā)出的針對資源訪問的函數(shù)調(diào)用的步驟;基于從所述條件存儲單元讀取的所述資源訪問條件確定是否允許所述捕獲的函數(shù)調(diào)用的步驟;以及作為對確定不允許所述函數(shù)調(diào)用的響應(yīng)而拒絕所述函數(shù)調(diào)用的步驟。
2. 根據(jù)權(quán)利要求1所述的方法,其中所述設(shè)備是網(wǎng)絡(luò)設(shè)備、外部顯 示器和外部介質(zhì)中的任意一個。
3. 根據(jù)權(quán)利要求1所述的方法,其中所述檢測步驟包括檢測網(wǎng)絡(luò)設(shè) 備的運行狀態(tài)的變化的步驟,其中如果無線網(wǎng)絡(luò)設(shè)備準備就緒可以使用,則所述選擇步驟包括選 擇比在有線網(wǎng)絡(luò)設(shè)備準備就緒可以使用的情況下的資源訪問條件更嚴 格的資源訪問條件的步驟。
4. 根據(jù)權(quán)利要求1所述的方法,其中所述檢測步驟包括在檢測到網(wǎng) 絡(luò)設(shè)備準備就緒可以使用時獲取所述信息處理設(shè)備所連接到的網(wǎng)絡(luò)的 類型的步驟,所述類型表明了所述網(wǎng)絡(luò)的安全級別,其中如果所述網(wǎng)絡(luò)設(shè)備準備就緒可以使用并且所述網(wǎng)絡(luò)的所述類 型并不代表安全的網(wǎng)絡(luò),則所述選擇步驟包括選擇比在所述網(wǎng)絡(luò)設(shè)備準備就緒可以使用并且所述網(wǎng)絡(luò)的所述類型代表安全網(wǎng)絡(luò)的情況下的資 源訪問條件更嚴格的資源訪問條件的步驟。
5. 根據(jù)權(quán)利要求1所述的方法,其中所述檢測步驟包括檢測外部顯 示器的連接狀態(tài)的變化的步驟,其中如果所述外部顯示器已連接,則所述選擇步驟包括選擇用于拒 絕用以瀏覽預定數(shù)據(jù)的函數(shù)調(diào)用的資源訪問條件的步驟。
6. 根據(jù)權(quán)利要求1所述的方法,其中所述檢測步驟包括檢測外部介 質(zhì)的連接狀態(tài)或運行狀態(tài)的變化的步驟,其中如果所述外部介質(zhì)已連接或者準備就緒可以使用,則所述選捐: 步驟包括選擇用于使得從所述外部介質(zhì)調(diào)用的進程和另 一個進程在不 同的條件下訪問資源的資源訪問條件的步驟。
7. 根據(jù)權(quán)利要求1所述的方法,其中所述檢測步驟包括在檢測到外息的步驟,其中如果所述外部介質(zhì)已連接或準備就緒可以使用,則所述選擇步 驟包括基于所述外部介質(zhì)的所述硬件標識信息選擇要應(yīng)用于所述信息 處理設(shè)備的資源訪問條件的步驟。
8. 根據(jù)權(quán)利要求1所述的方法,進一步包括作為對檢測多個設(shè)備的 所述連接狀態(tài)或所述運行狀態(tài)的所述變化的響應(yīng),將所述檢測到的所述 多個設(shè)備的連接狀態(tài)或運行狀態(tài)存儲到狀態(tài)存儲單元的步驟,其中在所述表中,所述多個設(shè)備的連接狀態(tài)或運行狀態(tài)的每個組合 都與應(yīng)當應(yīng)用的資源訪問條件相關(guān)聯(lián),當前連接狀態(tài)或運行狀態(tài)、參考所述表、以及選擇要應(yīng)用于所述信息處 理設(shè)備的資源訪問條件的步驟。
9. 一種用于控制應(yīng)用程序?qū)Y源的訪問的信息處理設(shè)備,所述信息 處理設(shè)備包括檢測單元,用于檢測連接到所述信息處理設(shè)備上的設(shè)備的連接狀態(tài) 或運行狀態(tài)的變化; 選擇單元,用于作為檢測所述連接狀態(tài)或所述運行狀態(tài)的變化的響 應(yīng),參考表并選擇要應(yīng)用于所述信息處理設(shè)備的資源訪問條件,在所述的資源訪問條件相關(guān)聯(lián);.條件存儲單元,用于存儲所述所選擇的資源訪問條件;捕獲單元,用于捕獲由所述應(yīng)用程序向操作系統(tǒng)發(fā)出的針對資源訪問的函數(shù)調(diào)用;確定單元,用于基于從所述條件存儲單元讀取的所述資源訪問條件 確定是否允許所述捕獲的函數(shù)調(diào)用;以及控制單元,用于作為對確定不允許所述函數(shù)調(diào)用的響應(yīng)而拒絕所述 函數(shù)調(diào)用。
全文摘要
本發(fā)明提供用于基于信息處理設(shè)備的運行環(huán)境或運行狀態(tài)拒絕或允許應(yīng)用程序?qū)Y源的訪問的技術(shù)。該信息處理設(shè)備包括檢測單元,用于檢測連接到信息處理設(shè)備的設(shè)備的連接狀態(tài)或運行狀態(tài)的變化;選擇單元,用于作為對檢測連接狀態(tài)的變化的響應(yīng),基于檢測到的連接狀態(tài)選擇要應(yīng)用于信息處理設(shè)備的資源訪問條件;以及條件存儲單元,用于存儲所選擇的資源訪問條件。該信息處理設(shè)備進一步包括捕獲單元,用于捕獲由應(yīng)用程序向操作系統(tǒng)發(fā)出的針對資源訪問的多個函數(shù)調(diào)用;確定單元,用于確定是否允許所捕獲的函數(shù)調(diào)用;以及控制單元,用于拒絕該函數(shù)調(diào)用。當捕獲到函數(shù)調(diào)用時,基于從條件存儲單元讀取的資源訪問條件確定是否允許所捕獲的函數(shù)調(diào)用,并且作為對確定不允許該函數(shù)調(diào)用的響應(yīng)而拒絕該函數(shù)調(diào)用。
文檔編號G06F21/00GK101211393SQ20071019273
公開日2008年7月2日 申請日期2007年11月16日 優(yōu)先權(quán)日2006年12月27日
發(fā)明者利根川聰子, 古市實裕, 小倉明宏 申請人:國際商業(yè)機器公司