專利名稱:在Windows下不受用戶權(quán)限限制執(zhí)行操作的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及Windows操作系統(tǒng)技術(shù)領(lǐng)域,尤其涉及一種在Windows下不受用戶權(quán) 限限制執(zhí)行操作的方法。
背景技術(shù):
作為一種被廣泛使用的操作系統(tǒng),Windows操作系統(tǒng)一直在不斷提高其自身的安 全性。而用戶權(quán)限管理,應(yīng)該是Windows系統(tǒng)走向成熟的一個(gè)標(biāo)志。隨著多用戶多任務(wù)操 作系統(tǒng)的應(yīng)用,用戶權(quán)限管理變得尤為重要,因?yàn)樗鼘㈥P(guān)系到系統(tǒng)的穩(wěn)定和數(shù)據(jù)的安全。
目前,對(duì)于運(yùn)行在Windows操作系統(tǒng)下的受限用戶程序,如果受限用戶程序直接 執(zhí)行需要管理員權(quán)限或其他權(quán)限才能進(jìn)行的操作,則由于其不具有相應(yīng)的權(quán)限,執(zhí)行操作 會(huì)返回錯(cuò)誤;如果受限用戶程序要求具有管理員權(quán)限或其他權(quán)限的進(jìn)程代理其執(zhí)行,則代 理執(zhí)行的進(jìn)程應(yīng)該與受限用戶程序處于同一會(huì)話中,否則代理執(zhí)行進(jìn)程有可能無法正確獲 得與受限用戶相關(guān)的各類信息。
發(fā)明內(nèi)容
鑒于上述的分析,本發(fā)明目的在于提供一種在Windows下不受用戶權(quán)限限制執(zhí)行 操作的方法,用以解決現(xiàn)有技術(shù)中存在的Windows中受限用戶程序在執(zhí)行操作時(shí)被限制的 問題。 本發(fā)明的目的主要是通過以下技術(shù)方案實(shí)現(xiàn)的 本發(fā)明提供了一種在Windows下不受用戶權(quán)限限制執(zhí)行操作的方法,所述方法包 括 步驟A :在Windows操作系統(tǒng)中以服務(wù)程序方式安裝引導(dǎo)程序; 步驟B:引導(dǎo)程序啟動(dòng)后,當(dāng)監(jiān)控到有新用戶登錄操作系統(tǒng)成功后,創(chuàng)建一個(gè)運(yùn)行 于當(dāng)前新登錄用戶會(huì)話中的服務(wù)程序; 步驟C:當(dāng)受限用戶程序需要進(jìn)行操作時(shí),將需要進(jìn)行的操作交由該服務(wù)程序代 理執(zhí)行完成,并從服務(wù)程序處獲得其代理執(zhí)行結(jié)果。
進(jìn)一步地,所述步驟B具體包括 引導(dǎo)程序啟動(dòng)后開始監(jiān)控用戶登錄狀態(tài),當(dāng)監(jiān)控到有新用戶成功登錄Windows操 作系統(tǒng)后,引導(dǎo)程序?qū)⒆陨淼倪M(jìn)程令牌進(jìn)行復(fù)制; 引導(dǎo)程序?qū)@得的當(dāng)前新登錄用戶的安全標(biāo)識(shí)符置入復(fù)制令牌中。 引導(dǎo)程序以復(fù)制后的令牌作為進(jìn)程令牌,創(chuàng)建一個(gè)服務(wù)程序,該服務(wù)程序運(yùn)行于
當(dāng)前新登錄用戶會(huì)話中。
進(jìn)一步地,所述步驟C具體包括 當(dāng)受限用戶程序需要進(jìn)行操作時(shí),將操作內(nèi)容通過進(jìn)程間通信方式發(fā)送給服務(wù)程 序; 服務(wù)程序代替受限用戶程序完成操作,并將操作結(jié)果返回給受限用戶程序。
其中,所述通信方式包括消息或Socket或命名管道。
所述步驟C中的操作包括管理員權(quán)限操作。
本發(fā)明有益效果如下 通過本發(fā)明所述方法,管理員操作是由具有管理員權(quán)限的服務(wù)程序代理完成的,而受限用戶程序通過進(jìn)程間通信將操作請(qǐng)求發(fā)送給服務(wù)程序,并從其處獲得執(zhí)行結(jié)果。實(shí)現(xiàn)了在受限用戶環(huán)境下,用戶程序執(zhí)行管理員操作的需求。同時(shí),在此過程中,并沒有提升受限用戶的權(quán)限,從而保證了操作系統(tǒng)的安全性。 本發(fā)明的其他特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分的從說明書中變得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過在所寫的說明書、權(quán)利要求書、以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。
圖1為本發(fā)明實(shí)施例所述方法的流程示意圖。
具體實(shí)施例方式
本發(fā)明的核心思想為引導(dǎo)程序在每個(gè)受限用戶會(huì)話中分別啟動(dòng)服務(wù)程序,受限用戶程序(運(yùn)行于受限用戶會(huì)話中)與服務(wù)程序通過進(jìn)程間通信,將管理員權(quán)限操作交由服務(wù)程序代理執(zhí)行完成,并從服務(wù)程序處獲得其代理執(zhí)行結(jié)果。 下面結(jié)合附圖來具體描述本發(fā)明的優(yōu)先實(shí)施例,其中,附圖構(gòu)成本申請(qǐng)一部分,并與本發(fā)明的實(shí)施例一起用于闡釋本發(fā)明的原理。 如圖1所示,圖1為本發(fā)明實(shí)施例所述方法的流程示意圖,具體包括以下步驟
步驟101 :以管理員權(quán)限登陸Windows操作系統(tǒng)。
步驟102 :在操作系統(tǒng)管理員權(quán)限用戶下,將引導(dǎo)程序以服務(wù)方式安裝在操作系
統(tǒng)中,并設(shè)置為自動(dòng)運(yùn)行。
步驟103 :啟動(dòng)引導(dǎo)程序。
步驟104 :引導(dǎo)程序啟動(dòng)后開始監(jiān)控用戶登錄狀態(tài)。 步驟105 :引導(dǎo)程序監(jiān)控是否用新用戶登錄,當(dāng)監(jiān)控到有新用戶登錄操作系統(tǒng)成功后,執(zhí)行步驟106。 步驟106:引導(dǎo)程序獲取自身的進(jìn)程令牌A(Token A)并將其復(fù)制,產(chǎn)生令牌B(Token B);由于創(chuàng)建服務(wù)程序的令牌B是由引導(dǎo)程序的令牌A復(fù)制而成,因此當(dāng)以該令牌創(chuàng)建的服務(wù)程序,具有和引導(dǎo)程序一樣的管理員權(quán)限。 步驟107:引導(dǎo)程序通過系統(tǒng)函數(shù)(Windows操作系統(tǒng)自帶函數(shù))調(diào)用,獲得當(dāng)前
新登錄用戶的SessionID (會(huì)話ID)。 步驟108 :將該SessionID置入令牌B中。 步驟109 :引導(dǎo)程序已令牌B為進(jìn)程令牌,創(chuàng)建一個(gè)新服務(wù)程序,該服務(wù)程序的令牌B源自引導(dǎo)程序,因此其具有管理員操作權(quán)限;而其SessionID源自當(dāng)前新登錄用戶,因此該服務(wù)程序運(yùn)行于當(dāng)前新登錄用戶會(huì)話中。 步驟110 :當(dāng)受限用戶程序需要進(jìn)行管理員權(quán)限操作時(shí),其將操作內(nèi)容通過進(jìn)程間通信方式發(fā)送給服務(wù)程序;其中,受限用戶程序可將任意操作交由服務(wù)程序代理完成,并不限于管理員權(quán)限的操作。所述通信方式包括但不限于消息、Socket (套接字)和命名管道等方式。 步驟111 :服務(wù)程序代替受限用戶程序完成操作。
步驟112 :將操作結(jié)果返回給受限用戶程序。 其中,在所述步驟104中,引導(dǎo)程序在不斷監(jiān)控登錄操作系統(tǒng)的用戶的狀態(tài)變化。當(dāng)引導(dǎo)程序監(jiān)控到新用戶登錄后,會(huì)自動(dòng)執(zhí)行(但不限于)步驟105到步驟109,從而為在每個(gè)新登錄用戶會(huì)話內(nèi)分別啟動(dòng)一個(gè)服務(wù)程序。 以上本發(fā)明實(shí)施例僅以受限用戶程序通過新建的服務(wù)程序代理執(zhí)行管理員操作為例進(jìn)行了說明,當(dāng)然,本領(lǐng)域技術(shù)人員根據(jù)本發(fā)明實(shí)施例所述的方案應(yīng)該知道,本發(fā)明實(shí)施例并不僅僅局限于管理員權(quán)限的操作,受限用戶程序可將任意操作交由服務(wù)程序代理完成,實(shí)現(xiàn)過程相同,此處就不再贅述。 綜上所述,本發(fā)明實(shí)施例提供了一種在Windows下不受用戶權(quán)限限制執(zhí)行操作的方法,受限用戶程序可執(zhí)行只有管理員權(quán)限才能完成的工作,例如(但不限于)操作設(shè)備對(duì)象,讀寫核心文件等,而無需系統(tǒng)管理員提升受限用戶權(quán)限。這樣,可在保證操作系統(tǒng)安全性的前提下,賦予受限用戶更多的操作權(quán)限,避免因受限用戶權(quán)限限制造成的程序執(zhí)行障礙。 以上所述,僅為本發(fā)明較佳的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求書的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
一種在Windows下不受用戶權(quán)限限制執(zhí)行操作的方法,其特征在于,所述方法包括步驟A在Windows操作系統(tǒng)中以服務(wù)程序方式安裝引導(dǎo)程序;步驟B引導(dǎo)程序啟動(dòng)后,當(dāng)監(jiān)控到有新用戶登錄操作系統(tǒng)成功后,創(chuàng)建一個(gè)運(yùn)行于當(dāng)前新登錄用戶會(huì)話中的服務(wù)程序;步驟C當(dāng)受限用戶程序需要進(jìn)行操作時(shí),將需要進(jìn)行的操作交由該服務(wù)程序代理執(zhí)行完成,并從服務(wù)程序處獲得代理執(zhí)行結(jié)果。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟B具體包括引導(dǎo)程序啟動(dòng)后開始監(jiān)控用戶登錄狀態(tài),當(dāng)監(jiān)控到有新用戶成功登錄Windows操作系統(tǒng)后,引導(dǎo)程序?qū)⒆陨淼倪M(jìn)程令牌進(jìn)行復(fù)制;引導(dǎo)程序?qū)@得的當(dāng)前新登錄用戶的安全標(biāo)識(shí)符置入復(fù)制后的令牌中; 引導(dǎo)程序以復(fù)制后的令牌作為進(jìn)程令牌,創(chuàng)建一個(gè)服務(wù)程序,該服務(wù)程序運(yùn)行于當(dāng)前新登錄用戶會(huì)話中。
3. 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述步驟C具體包括 當(dāng)受限用戶程序需要進(jìn)行操作時(shí),將操作內(nèi)容通過進(jìn)程間通信方式發(fā)送給服務(wù)程序; 服務(wù)程序代替受限用戶程序完成相應(yīng)的操作,并將操作結(jié)果返回給受限用戶程序。
4. 根據(jù)權(quán)利要求3所述的方法,其特征在于,所述通信方式包括消息或Socket或命 名管道。
5. 根據(jù)權(quán)利要求1或3所述的方法,其特征在于,所述步驟C中的操作包括管理員權(quán) 限操作。
全文摘要
本發(fā)明公開了一種在Windows下不受用戶權(quán)限限制執(zhí)行操作的方法,所述方法包括在Windows操作系統(tǒng)中以服務(wù)程序方式安裝引導(dǎo)程序;引導(dǎo)程序啟動(dòng)后,當(dāng)監(jiān)控到有新用戶登錄操作系統(tǒng)成功后,創(chuàng)建一個(gè)運(yùn)行于當(dāng)前新登錄用戶會(huì)話中的服務(wù)程序;當(dāng)受限用戶程序需要進(jìn)行操作時(shí),將需要進(jìn)行的操作交由該服務(wù)程序代理執(zhí)行完成,并從服務(wù)程序處獲得其代理執(zhí)行結(jié)果;本發(fā)明實(shí)現(xiàn)了在受限用戶環(huán)境下,用戶程序執(zhí)行管理員操作的需求,同時(shí)在此過程中并沒有提升受限用戶的權(quán)限,從而保證了操作系統(tǒng)的安全性。
文檔編號(hào)G06F9/46GK101751287SQ200810227969
公開日2010年6月23日 申請(qǐng)日期2008年12月3日 優(yōu)先權(quán)日2008年12月3日
發(fā)明者何超 申請(qǐng)人:北京天融信科技有限公司