Windows Vista下紫光拼音終極解決辦法
在實(shí)際的使用過(guò)程中,發(fā)現(xiàn)這個(gè)方法在大多數(shù)時(shí)候可以正常工作,但是如果在打開(kāi)IE之前,已經(jīng)調(diào)用過(guò)紫光拼音,則可能無(wú)法在IE瀏覽器里順利啟動(dòng)紫光拼音。有人曾說(shuō),Windows Vista沒(méi)有自帶的工具,無(wú)法查看和設(shè)置文件夾的完整性級(jí)別。
果真是這樣嗎?
筆者有幸在Tech.Ed北京聽(tīng)了IE保護(hù)模式的負(fù)責(zé)人Robert Gu的一堂課,了解到Windows Vista其實(shí)自帶了一款命令行工具Icacls.exe,可以用它來(lái)查看和設(shè)置指定文件夾的完整性級(jí)別。
提示
Robert Gu,微軟總部的首席開(kāi)發(fā)主管,目前負(fù)責(zé)IE 7安全的開(kāi)發(fā)。他是EFS算法的發(fā)明者,曾主導(dǎo)EFS、PKI的開(kāi)發(fā),是華人中的驕傲。
現(xiàn)在我們可以大膽猜測(cè),既然有現(xiàn)成的Icacls.exe可供使用,則完全可以用它來(lái)把紫光拼音的工作目錄“%AppData%Unispim”的完整性級(jí)別設(shè)置為“低級(jí)”,這樣無(wú)論是IE進(jìn)程(低級(jí))和外部的進(jìn)程(中級(jí)),都可以訪問(wèn)該工作目錄,紫光拼音就可以工作正常。
說(shuō)做就做,接下來(lái)就以Windows Vista RC2 Build 5744為例進(jìn)行介紹(需要注意的是,該Icacls命令在RC1下無(wú)法正常工作):
1.首先需要給當(dāng)前的帳戶增加“修改一個(gè)對(duì)象標(biāo)簽”特權(quán),其內(nèi)部名稱為SeRelabelPrivilege。方法是運(yùn)行secpol.msc,打開(kāi)“本地安全策略”管理單元,在左側(cè)控制臺(tái)樹(shù)中展開(kāi)本地策略、用戶權(quán)限分配,在右側(cè)詳細(xì)窗格里定位到“修改一個(gè)對(duì)象標(biāo)簽”策略項(xiàng),雙擊該策略項(xiàng),把當(dāng)前的登錄帳戶添加進(jìn)去,如附圖所示。
2.注銷重新登錄,然后以管理員權(quán)限運(yùn)行命令提示符,在命令提示符下輸入以下命令:
Whoami/all |find /i 'SeRelabelPrivilege'
結(jié)果如附圖所示,這表示當(dāng)前登錄用戶已經(jīng)擁有SeRelabelPrivilege特權(quán),只是狀態(tài)為禁用。
3.然后運(yùn)行以下命令:
Icacls.exe %AppData%Unispim /SetIntegrityLevel Level:L
命令結(jié)果如附圖所示,表示成功完成。
4.可以繼續(xù)運(yùn)行以下命令,查看%AppData%Unispim目錄的完整性級(jí)別:
Icacls.exe %AppData%Unispim
命令結(jié)果如附圖所示,表示該目錄的強(qiáng)制完整性級(jí)別為“低”。
經(jīng)過(guò)這樣處理以后,就可以正常在IE瀏覽器里啟用紫光拼音了,而無(wú)法針對(duì)特定網(wǎng)站禁用IE保護(hù)模式。如果偶爾發(fā)現(xiàn)無(wú)法在IE里啟動(dòng)紫光拼音,這時(shí)候不要著急,只需關(guān)閉其他啟用輸入法的程序,一般是OutLook、Word、Notepad等編輯程序,然后就可以在IE里正常使用紫光拼音。
接下來(lái),還有兩個(gè)問(wèn)題:
1 細(xì)心的讀者朋友發(fā)現(xiàn)用Whoami/all命令查看當(dāng)前用戶的訪問(wèn)令牌時(shí),發(fā)現(xiàn)SeRelabelPrivilege特權(quán)是禁用的。而這個(gè)特權(quán)正是用來(lái)設(shè)置對(duì)象的完整性級(jí)別,那么這時(shí)候?yàn)槭裁碔cacls命令可以成功運(yùn)行?
當(dāng)運(yùn)行Icacls命令設(shè)置目錄的完整性級(jí)別時(shí),該Icacls進(jìn)程的訪問(wèn)令牌會(huì)自動(dòng)啟用SeRelabelPrivilege特權(quán),以便命令能夠順利完成。
2。由于Windows Vista RC1下的Icacls命令不能正常工作,這里可以下載一個(gè)第三方的命令行工具chml.exe。
