計算機系統的管理方法、計算機管理系統及程序的製作方法
2023-05-30 18:30:51
專利名稱:計算機系統的管理方法、計算機管理系統及程序的製作方法
技術領域:
本發明涉及一種管理方法以及管理和使用計算機系統中的應用程式的系統。更具體地,本發明涉及一種用於防止非授權使用計算機系統的方法和管理系統,在該計算機系統中對各個用戶可以使用的應用程式進行了限制。
背景技術:
諸如個人計算機的計算機系統具有兩個或更多個用戶。在這種情況下,通常各個用戶必須首先輸入他/她自己的密碼,並且在核准密碼以後,他/她才可以使用計算機系統。
在計算機系統中安裝了許多應用程式,用戶需要指定並加載(例如通過雙擊)應用程式來對其進行使用。
當計算機系統具有兩個或更多個用戶時,預先確定每一個可以使用的應用程式,並且提供一種管理系統,以防止用戶激活不允許其使用的應用程式。由這種管理系統採用的用於防止激活對於某用戶禁止使用的特定應用程式的方法包括以下兩種方法。
在這兩種方法之一中,將防止由各個用戶激活的應用程式的執行文件名預先記錄在管理表等中,並且當各個用戶試圖激活應用程式時,獲取該應用程式的執行文件名,並且如果該應用程式被作為不能由該用戶激活的應用程式而記錄在管理表中,則立即終止該應用程式。
在另一種方法中,將防止由各個用戶激活的應用程式的窗口標題名稱預先記錄在管理表等中,並且當用戶試圖激活應用程式時,獲取該應用程式的窗口標題名稱,並且如果該窗口標題名稱被記錄為不能由該用戶激活的應用程式的窗口標題名稱,則立即終止該應用程式。
日本未審專利公報(公開)No.7-230380描述了一種構造,其中,當應用程式調用在動態連結庫(DLL)中作為部分程序預先準備的DLL文件時調用管理程序,以使得可以可靠地監測所有激活應用程式的請求。
發明內容
在目前廣泛使用的作業系統(O/S)中,用戶可以任意改變應用程式的執行文件名。因此,例如用戶可以通過改變應用程式的執行文件名並使用已改變的執行文件名來激活該應用程式來執行該應用程式。如上所述,通過上述方法(其中記錄並管理被禁止的應用程式的執行文件名)不能充分地防止非授權使用。
此外,與文件名不同,用戶不能隨意改變窗口標題名稱,但是例如當可以將通過應用程式而打開的文件的名稱顯示為窗口標題名稱時,可能存在可以改變窗口標題名稱的情況,這取決於應用程式。如上所述,窗口標題名稱不是固定的。因此,不能認為記錄並管理被禁止的窗口標題名稱的方法是能夠根據各種應用程式充分地防止激活的方法。
如上所述,通過記錄並管理被禁止使用的應用程式的執行文件名或窗口標題名稱的傳統方法不能防止有意的非授權使用,因為可以改變執行文件名或窗口標題名稱。即使使用專利文獻1中所述的管理方法,如果改變執行文件名或窗口標題名稱也不能防止非授權使用。
本發明的目的是實現一種更簡便、更可靠的防止非授權使用應用程式的方法。
為了達到上述目的,在根據本發明的計算機系統的管理方法中,根據要用作為部分程序的DLL文件集合來識別應用程式。
換句話說,根據本發明的計算機系統的管理方法防止非授權使用應用程式(在預定的使用條件下禁止使用該應用程式),該計算機系統包括硬體,其包括處理器;作業系統(O/S),用於執行程序;動態連結庫(DLL)存儲要用作為部分程序的多個動態連結庫(DLL)文件;以及多個應用程式,其使用該多個DLL文件中的至少一個作為部分程序,該計算機系統的特徵在於從要由被禁止的應用程式使用的多個DLL文件中確定用於識別該應用程式的DLL文件集合;與預定的使用條件相關聯地存儲該預定的DLL文件集合;當請求激活該應用程式時檢測使用條件;檢測由被請求激活的應用程式所使用的DLL文件集合;判斷所檢測的使用條件是否為所存儲的預定使用條件,同時判斷所檢測的DLL文件集合是否包括與預定使用條件相關聯存儲的預定DLL文件集合;以及當判定所檢測的使用條件為所存儲的預定使用條件,並且所檢測的DLL文件集合包括預定DLL文件集合時,終止被請求激活的應用程式。
因為每一個應用程式都使用作為一部分程序的DLL文件,所以可以基於要使用的DLL文件集合來識別應用程式。根據本發明,因為基於DLL文件集合來識別被禁止的應用程式,所以即使改變了應用程式的執行文件名或者窗口標題名稱,也可以識別被禁止的應用程式並防止其被激活。
該使用條件主要包括用戶名,但是還可以將使用條件和其它條件相關聯。
在目前廣泛使用的O/S中,也可以改變DLL文件的名稱。然而,如果DLL文件的名稱改變,則不能再從應用程式調用所需的DLL文件,並且不能執行該應用程式,因此,從防止激活被禁止的應用程式的角度來看,不存在任何問題。
通常,應用程式使用多個DLL文件,並且某些DLL文件由多個應用程式共用。因此,優選地基於包括至少兩個或更多個DLL文件的集合來識別應用程式。然而,存在可以僅通過一個DLL文件來識別應用程式的情況。
根據本發明的管理方法可以是一種始終監測應用程式激活請求的方法,或者是一種以與日本未審專利公報(公開)No.7-230380中所述相同的方式,響應於DLL文件的調用,自動監測應用程式激活請求的方法。
通過檢測要由應用程式調用的DLL文件來檢測要使用的DLL文件集合也是優選的。
此外,根據本發明的管理方法可以和預先記錄被禁止的應用程式的執行文件名的傳統方法一起使用。在這種情況下,當請求激活應用程式時,獲取該應用程式的執行文件名,並判斷該應用程式是否為被禁止的應用程式。當判定該應用程式是被禁止的應用程式時,終止該應用程式,而不進行任何進一步的操作,並且僅當判定該應用程式不是被禁止的應用程式時,檢測DLL文件集合,並判斷該集合是否為被禁止的集合。
根據本發明,可以在計算機系統中容易並更可靠地防止激活被禁止的應用程式,並進一步提高計算機系統的可靠性。
根據以下結合附圖的說明,可以更清楚地理解本發明的特徵和優點,在附圖中圖1表示根據本發明一實施例的計算機系統的分層結構。
圖2是用於說明應用程式調用DLL文件的操作的簡圖。
圖3表示在根據該實施例的計算機系統中的程序使用管理系統的結構。
圖4是根據該實施例的管理程序的功能性方框圖。
圖5表示記錄表的示例。
圖6是顯示該實施例中的處理的流程圖。
圖7是顯示在一改進示例中的附加處理的流程圖。
具體實施例方式
圖1表示根據本發明一實施例的計算機系統的分層結構。該實施例中的計算機系統是由具有不同權限的多個用戶使用的諸如個人計算機或工作站的系統。如圖1所示,該計算機系統包括硬體層1,其包括諸如CPU、ROM和RAM、硬碟驅動器(HDD)的多個存儲器、監示器、印表機以及諸如通信功能終端的各種外圍設備;作業系統(O/S)2;動態連結庫(DLL)3,用於存儲要用作為部分程序的各種DLL文件;以及應用層4。在本發明中對使用DLL文件的應用程式的激活進行管理。某些應用程式不使用DLL文件,但是這些應用程式通常是非常簡單的程序,並且不是要進行保護的目標,因此,即使不對其應用本發明,也不會產生任何問題。
圖2是用於說明應用程式調用DLL文件的操作的簡圖。DLL文件是由各種應用程式共用的程序,這些DLL文件執行基本處理,並且被編程為可以容易地將各種基本處理和其它處理進行組合使用的形式。當創建應用程式時,不需要從頭開始創建所有程序,而是調用適當的DLL文件(預先準備用於基本處理)來使用。因此,創建應用程式變得容易,同時,因為不會重複存儲共用的程序,所以可以減少在計算機系統中存儲所有程序所需的容量,此外,因為使用了優異品質的DLL文件,所以提高了計算機系統的可靠性。
應用程式文件11具有用於存儲要使用的DLL文件的列表的頭部,並在激活時執行處理來調用DLL文件12-1、...、12-n。如果沒有正確執行該處理,則不加載也不執行該應用程式。
圖3表示本實施例的計算機系統中的程序使用管理系統的結構。如示意性所示,除了各種應用程式11-A、...,11-P、...,11-R、...之外,還提供了管理程序21。如圖1所示,還提供了O/S和DLL文件,但在此未示出,因為其層級不同。如上所述,每一個應用程式都使用DLL文件。管理程序21以不同的方式進行管理,當用戶試圖激活應用程式時,管理程序21中的非授權激活防止部分判斷該用戶是否被授權,並當判定該用戶是授權用戶時允許激活,而如果判定該用戶是非授權用戶,則執行處理以終止該應用程式。
如圖3所示,應用程式A是禁止用戶X和Y使用的應用程式,並且使用這些DLL文件中的DLL1、DLL2、DLL3、...、DLL1等。應用程式P是禁止用戶Z使用的應用程式,並且使用這些DLL文件中的DLL1、DLL2、DLL4、...、DLLj、DLLm等。此外,應用程式R是不禁止任何用戶使用的應用程式(即任何用戶都可以使用應用程式R),並且使用這些DLL文件中的DLL1、DLL2、...、DLLj等。
圖3是僅表示被禁止使用應用程式的用戶根據應用程式而不同,並且所調用的DLL也根據應用程式而不同,因此,不必在應用程式中保持與被禁止使用該應用程式的用戶相關的信息。
圖4是表示在本實施例的管理程序21中提供的非授權激活防止部分的功能框圖。如圖4所示,當通過滑鼠或鍵盤的操作指示O/S激活應用程式時,O/S激活目標應用程式11,並且同時將指示該激活的用戶的名稱通知給管理程序21。管理程序21通過監測由被激活的應用程式11調用的DLL文件來獲得要由應用程式11使用的DLL文件的列表,並且在非授權使用的情況下終止該應用程式。此外,管理程序21將所獲取的DLL文件列表和用戶名稱與存儲在記錄22內的DLL文件集合(該DLL文件集合的使用對於各個用戶是禁止的)進行比較。
圖5表示存儲在記錄22中的DLL文件集合列表的示例,這些DLL文件集合的使用對於各個用戶是禁止的。如示意性所示,對於各個用戶,存儲禁止使用的應用程式的名稱,以及識別被禁止的應用程式所需的一個DLL文件的集合或者兩個或更多個DLL文件的集合。僅在列表中存儲多個DLL文件集合而不存儲被禁止的應用程式的名稱也是可以接受的。
如圖5所示,禁止用戶X使用應用程式A和B等,禁止用戶Y使用應用程式A和D等,用戶Z僅被禁止使用應用程式P,不禁止用戶S使用任何應用程式,即允許用戶S使用任一應用程式。禁止其它用戶使用應用程式A、B、D、P等。當應用程式包括DLL1、DLL2、...、DLL1的集合時判定該應用程式為應用程式A,當應用程式包括DLL1、DLL5、DLL7、...、DLLt的集合時判定該應用程式為應用程式B,當應用程式包括DLL10和DLLi的集合時判定該應用程式為應用程式D,而當應用程式包括DLL1、DLL2、...、DLLm的集合時判定該應用程式為應用程式P。
不必為了識別應用程式而描述各個應用程式使用的所有DLL文件。例如,當一應用程式使用其它應用程式都不使用的DLL文件時,在列表中僅存儲該DLL文件是可以接受的。此外,當禁止某一用戶使用的兩個應用程式使用五個共用的DLL文件,並且還分別使用一個以上的不同DLL文件,並且該五個共用DLL文件的集合可以與禁止另一用戶使用的DLL文件集合相區分時,僅需要列出該五個共用DLL文件的集合。
圖6是表示本實施例的管理程序21中的非授權激活防止部分的處理過程的流程圖。如圖6所示,在步驟100中,非授權激活防止部分檢測通過O/S響應於滑鼠或鍵盤來激活應用程式的操作事件。在步驟101中,非授權激活防止部分獲取試圖通過O/S執行該操作事件以激活該應用程式的用戶名稱。在步驟102中,非授權激活防止部分通過監測由被指示激活的應用程式調用的要使用的DLL文件,來獲取要使用的DLL文件的名稱列表。
在步驟103中,判斷所獲取的DLL文件的名稱列表中是否包括存儲在記錄22中的與用戶名稱相關聯記錄的所有DLL文件集合。當該列表中包括所有集合時,因為激活了被禁止的應用程式,所以流程進行到步驟104,以終止該應用程式。當該列表中不包括所有集合時,即當存儲在記錄22中的與所獲取的用戶名稱相關聯記錄的DLL文件集合中,存在未包括在所獲取的DLL文件的名稱列表中的DLL文件時,不禁止使用該應用程式,因此,流程進行到步驟105,以繼續激活該應用程式。換句話說,管理程序21不進行任何處理,也不向該應用程式發出終止命令,因此繼續激活該應用程式,並最終激活該應用程式。
在上述實施例中,僅根據要使用的DLL文件來判斷應用程式是否被禁止使用,但是也可以接受下述的改進示例,該改進示例除了採用本方法以外,還採用根據應用程式的執行文件名來判斷該應用程式是否被禁止使用的傳統方法。在這種情況下,首先執行可以比本方法更快地判斷應用程式是否被禁止使用的傳統方法,並當判定該應用程式為非禁止的應用程式時,如上述實施例中所述根據要使用的DLL文件進一步判斷該應用程式是否被禁止使用。
圖7是表示要添加到該改進示例中的處理的流程圖。在執行圖6的步驟100和101之後,在圖7的步驟111中,獲取該應用程式的執行文件名。然後,判斷存儲在圖5所示的記錄22內的用戶名稱以及與該用戶名稱相關聯記錄的被禁止的應用程式的名稱是否與所獲取的用戶和應用程式的名稱一致。當存儲在該記錄中的用戶名稱和被禁止的應用程式與所獲取的用戶和應用程式的名稱一致時,因為激活了被禁止使用的應用程式,所以流程進行到步驟112,以終止該應用程式。如果不一致,則流程進行到圖6的步驟102。
如上對本發明的實施例進行了描述,但是還可以存在各種改進示例。例如,雖然在上述實施例中,管理程序檢測通過O/S發出的激活應用程式的指示,但是還可以設計為使得當各個應用程式調用DLL文件時自動激活管理程序,如在上述專利文獻1中所述。
根據本發明,由於提高了防止非授權使用的計算機系統的可靠性,所以可以通過應用本發明,以低成本來構造在要求嚴格控制的領域中使用的計算機系統。
權利要求
1.一種計算機系統的管理方法,用於防止非授權使用在預定使用條件下禁止使用的應用程式,該計算機系統包括硬體,其包括處理器;作業系統,用於執行程序;動態連結庫,用於存儲要用作為部分程序的多個動態連結庫文件;以及多個應用程式,該多個應用程式將所述多個動態連結庫文件中的至少一個用作為部分程序,其中從要由被禁止的應用程式使用的多個動態連結庫文件中確定用於識別該應用程式的一動態連結庫文件或者兩個或更多個動態連結庫文件的集合,與所述預定使用條件相關聯地存儲所確定的動態連結庫文件或所確定的動態連結庫文件集合,當請求激活所述應用程式時檢測使用條件,檢測由被請求激活的應用程式使用的動態連結庫文件或動態連結庫文件集合,判斷所檢測的使用條件是否為所存儲的預定使用條件,同時判斷所檢測的動態連結庫文件或動態連結庫文件集合是否包括與所述預定使用條件相關聯存儲的所述預定的動態連結庫文件或所述預定的動態連結庫文件集合,並且當判定所檢測的使用條件為所存儲的預定使用條件,並且所檢測的動態連結庫文件或動態連結庫文件集合包括所述預定的動態連結庫文件或所述預定的動態連結庫文件集合時,終止被請求激活的應用程式。
2.根據權利要求1所述的計算機系統的管理方法,其中通過檢測被請求激活的應用程式對所述多個動態連結庫文件的調用,來檢測要由該應用程式使用的動態連結庫文件或動態連結庫文件集合。
3.根據權利要求1所述的計算機系統的管理方法,其中當與所述預定使用條件相關聯地存儲所述預定的動態連結庫文件或所述預定的動態連結庫文件集合時,還與所述預定使用條件相關聯地存儲所述被禁止的應用程式,在請求激活所述應用程式時檢測到使用條件之後,判斷檢測到的使用條件和所述應用程式是否與所存儲的預定使用條件以及與所述預定使用條件相關聯地存儲的應用程式一致,當判定檢測到的使用條件和所述應用程式與所存儲的預定使用條件和應用程式一致時,終止被請求激活的所述應用程式,並且僅當不終止所述應用程式時,才執行對要由被請求激活的所述應用程式使用的動態連結庫文件或動態連結庫文件集合進行檢測的處理以及後續處理。
4.一種計算機系統的管理系統,用於防止非授權使用在預定使用條件下禁止使用的應用程式,該計算機系統包括硬體,其包括處理器;作業系統,用於執行程序;動態連結庫,用於存儲要用作為部分程序的多個動態連結庫文件;以及多個應用程式,該多個應用程式將所述多個動態連結庫文件中的至少一個用作為部分程序,其中計算機的所述管理系統包括存儲裝置,用於與所述預定使用條件相關聯地存儲用於識別所述應用程式的一動態連結庫文件或者兩個或更多個動態連結庫文件的集合,這些動態連結庫文件來自要由所述被禁止的應用程式使用的多個動態連結庫文件;用於在請求激活所述應用程式時,檢測使用條件的檢測裝置;用於檢測要由被請求激活的所述應用程式使用的一動態連結庫文件或動態連結庫文件集合的檢測裝置;判斷裝置,用於判斷檢測到的使用條件是否為所存儲的預定使用條件,以及檢測到的動態連結庫文件或檢測到的動態連結庫文件集合是否包括與所述預定使用條件相關聯存儲的所述預定的動態連結庫文件或所述預定的動態連結庫文件集合;以及用於當判定檢測到的使用條件為所存儲的預定使用條件,並且檢測到的動態連結庫文件或檢測到的動態連結庫文件集合包括與所述預定使用條件相關聯存儲的所述預定的動態連結庫文件或所述預定的動態連結庫文件集合時,終止被請求激活的所述應用程式的裝置。
5.一種計算機管理程序,用於防止激活程序,並使計算機用作為存儲裝置,用於與使用條件相關聯地管理由應該被防止激活的程序調用的一動態連結庫文件或者兩個或更多個動態連結庫文件的集合;判斷裝置,用於在請求激活應用程式時,判斷該應用程式使用的多個動態連結庫文件是否包括存儲在所述存儲裝置中的所述預定的動態連結庫文件或所述預定的動態連結庫文件集合;以及終止裝置,當判定包括所述預定的動態連結庫文件或所述預定的動態連結庫文件集合時,終止被請求激活的所述應用程式。
全文摘要
計算機系統的管理方法、計算機管理系統及程序。公開了一種計算機系統的管理方法,用於簡單並更可靠地防止非授權使用應用程式。該計算機系統包括硬體、O/S、存儲有多個動態連結庫文件的動態連結庫,以及使用該多個動態連結庫文件的多個應用程式,該計算機系統的管理方法防止非授權使用應用程式,該應用程式的使用對於某些用戶是禁止的。確定識別被禁止的應用程式所需的禁止動態連結庫文件集合,與使用條件相關聯地存儲該禁止動態連結庫文件集合,當請求激活應用程式時檢測使用條件,檢測要由該應用程式使用的動態連結庫文件集合,判斷檢測到的動態連結庫文件集合是否包括與檢測到的使用條件相關聯的禁止動態連結庫文件集合,以及當判定其包括該禁止動態連結庫文件集合時,終止該應用程式。
文檔編號G06F9/46GK1755573SQ20051000216
公開日2006年4月5日 申請日期2005年1月14日 優先權日2004年9月30日
發明者宮本裕司, 疋田幹人, 周四君, 田悅 申請人:富士通株式會社