用于終端權限管理的方法和終端的制作方法
【技術領域】
[0001]本發(fā)明涉及終端管理領域,更具體地涉及在終端上執(zhí)行的用于權限管理的方法和相應終端。
【背景技術】
[0002]隨著移動終端的日益流行,其已經成為了現代社會的生產生活中不可缺少的重要組成部分。因此,移動終端上的信息安全性就成為了廣受關注的課題。在目前的主流移動終端上(特別是基于安卓平臺的智能終端上),對于應用是否可以使用ROOT權限(類似地權限還有(且不限于)管理員(Administrator)權限等),主要是通過人工(用戶)參與方式,來判斷是否授予應用可以ROOT訪問權限。
[0003]如本領域技術人員所熟知的,ROOT權限通常代表了一個系統上的最高權限,在具有該權限的情況下,第三方應用程序可以對系統中的任何資源(例如,網絡、存儲、計算等資源)進行分配、處理、操作等。而現有的這種對應用要求ROOT權限的檢查,過分依賴于人工判斷:對于專業(yè)用戶,它們可以從權限描述上采取相對謹慎的操作;而對于非專業(yè)(普通)用戶,它們通常會忽略這種權限描述,從而導致對應用的過分授權,使得某些應用獲得本不應當獲取的ROOT權限,帶來潛在的諸如隱私竊取、位置信息非法獲取、關鍵系統數據秘密反饋等侵犯用戶合法權益的非法行為。
[0004]例如,一個惡意的地圖應用在安裝和/或運行時可能會向用戶請求除了“定位”資源之外的敏感存儲區(qū)域(例如,存儲有用戶身份信息、銀行賬戶、信用卡信息、電話簿等)的讀寫權限,進而導致敏感數據泄漏,并使得用戶利益受損。
【發(fā)明內容】
[0005]為了解決上述問題,提供了根據本發(fā)明的用于終端權限管理的方法和相應終端。
[0006]根據本發(fā)明的第一方面,提供了一種在終端上執(zhí)行的用于管理權限的方法。該方法包括:a)監(jiān)聽所述終端上的權限請求;b)將發(fā)起所述權限請求的應用與在終端上維護的應用白名單進行比對;以及
[0007]c)根據所述比對的結果,執(zhí)行相應的權限管理。
[0008]在一些實施例中,步驟c)包括:如果所述比對的結果是所述應用在所述應用白名單中,則許可所述權限請求;如果所述比對的結果是所述應用不在所述應用白名單中,則向所述終端的用戶告警。
[0009]在一些實施例中,所述應用白名單是由所述終端從服務器獲取的。
[0010]在一些實施例中,所述終端定期或在啟動時更新所述應用白名單。
[0011]在一些實施例中,所述終端定期或在啟動時更新所述應用白名單包括:比較所述應用白名單的時間戳或版本號和服務器上的應用白名單的時間戳或版本號,以確定是否需要更新所述應用白名單;如果需要更新,則從服務器下載最新的應用白名單,并基于下載的應用白名單來更新所述終端上的所述應用白名單;如果不需要更新,則結束更新過程。
[0012]在一些實施例中,基于下載的應用白名單來更新所述終端上的所述應用白名單包括:備份所述終端上的所述應用白名單;對下載的應用白名單進行完整性和有效性校驗;以及如果校驗結果正確,則用下載的應用白名單來替換所述終端的上的所述應用白名單;如果校驗結果不正確,則結束所述更新過程。
[0013]在一些實施例中,將所述更新過程中的相關信息以日志方式加以保存。
[0014]在一些實施例中,步驟a)包括:在所述終端上調用以后臺服務模式運行的監(jiān)聽模塊,以監(jiān)聽所述終端上的權限請求。
[0015]在一些實施例中,所述應用白名單中還包括與各應用分別相關的“云端檢查”標志項,用于指示是否在云端檢查相應應用的權限請求。
[0016]在一些實施例中,步驟c)包括:如果所述比對的結果是所述應用在所述應用白名單中,則檢查所述應用白名單中所述應用的“云端檢查”標志項:如果所述“云端檢查”標志項指示需要在云端檢查所述應用的權限請求,則向云端發(fā)送檢查請求,并從云端接收檢查結果,以及執(zhí)行相應的權限管理;如果所述“云端檢查”標志項指示不需要在云端檢查所述應用的權限請求,則許可所述權限請求。
[0017]在一些實施例中,步驟b)包括:計算所述應用的數字摘要值;以及將計算出的數字摘要值與所述應用白名單中各應用的數字摘要值進行比較,以確定所述應用是否在所述應用白名單中。
[0018]在一些實施例中,在所述終端上提供用戶界面,以供用戶設置以下至少一項:是否進行應用白名單更新;是否進行云端檢查;以及是否進行云端日志分析。
[0019]根據本發(fā)明的第二方面,提供了一種用于管理權限的終端。該終端包括:監(jiān)聽單元,用于監(jiān)聽所述終端上的權限請求;比對單元,用于將發(fā)起所述權限請求的應用與在終端上維護的應用白名單進行比對;以及管理單元,用于根據所述比對的結果,執(zhí)行相應的權限管理。
[0020]在一些實施例中,所述管理單元用于:如果所述比對的結果是所述應用在所述應用白名單中,則許可所述權限請求;如果所述比對的結果是所述應用不在所述應用白名單中,則向所述終端的用戶告警。
[0021 ] 在一些實施例中,所述應用白名單是由所述終端從服務器獲取的。
[0022]在一些實施例中,還包括:更新單元,用于定期或在啟動時更新所述應用白名單。
[0023]在一些實施例中,所述更新單元還用于:比較所述應用白名單的時間戳或版本號和服務器上的應用白名單的時間戳或版本號,以確定是否需要更新所述應用白名單;如果需要更新,則從服務器下載最新的應用白名單,并基于下載的應用白名單來更新所述終端上的所述應用白名單;如果不需要更新,則結束更新過程。
[0024]在一些實施例中,所述更新單元還用于:備份所述終端上的所述應用白名單;對下載的應用白名單進行完整性和有效性校驗;以及如果校驗結果正確,則用下載的應用白名單來替換所述終端的上的所述應用白名單;如果校驗結果不正確,則結束所述更新過程。
[0025]在一些實施例中,所述更新單元還用于將所述更新過程中的相關信息以日志方式加以保存。
[0026]在一些實施例中,所述監(jiān)聽單元用于:以后臺服務模式在所述終端上運行,以監(jiān)聽所述終端上的權限請求。
[0027]在一些實施例中,所述應用白名單中還包括與各應用分別相關的“云端檢查”標志項,用于指示是否在云端檢查相應應用的權限請求。
[0028]在一些實施例中,所述管理單元用于:如果所述比對的結果是所述應用在所述應用白名單中,則檢查所述應用白名單中所述應用的“云端檢查”標志項:如果所述“云端檢查”標志項指示需要在云端檢查所述應用的權限請求,則向云端發(fā)送檢查請求,并從云端接收檢查結果,以及執(zhí)行相應的權限管理;如果所述“云端檢查”標志項指示不需要在云端檢查所述應用的權限請求,則許可所述權限請求。
[0029]在一些實施例中,所述比對單元用于:計算所述應用的數字摘要值;以及將計算出的數字摘要值與所述應用白名單中各應用的數字摘要值進行比較,以確定所述應用是否在所述應用白名單中。
[0030]在一些實施例中,所述終端還包括用戶界面,以供用戶設置以下至少一項:是否進行應用白名單更新;是否進行云端檢查;以及是否進行云端日志分析。
[0031]通過使用本發(fā)明的方法和終端,能夠自動進行ROOT權限請求檢測,保證安全的應用獲得權限,并減少用戶對惡意應用誤授權的情況,進而保護用戶的數據安全。
【附圖說明】
[0032]通過下面結合【附圖說明】本發(fā)明的優(yōu)選實施例,將使本發(fā)明的上述及其它目的、特征和優(yōu)點更加清楚,其中:
[0033]圖1是示出