權(quán)限控制系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及權(quán)限控制系統(tǒng)及方法,特別是電子裝置的權(quán)限控制系統(tǒng)及方法。
【背景技術(shù)】
[0002]如今的安卓(Android)手機(jī)、平板等電子裝置通過USB線連接外部設(shè)備時(shí),可以選擇USB存儲(chǔ)設(shè)備方式連接也可以選擇MTP (Media Transfer Protocol:媒體傳輸協(xié)議)存儲(chǔ)設(shè)備方式連接。USB存儲(chǔ)設(shè)備方式即將手機(jī)、平板等當(dāng)做U盤使用,在這種模式下,對SD卡(Secure Digital Memory Card:安全數(shù)碼卡)有絕對的控制權(quán),電子裝置將不能對SD卡操作,而以MTP方式連接時(shí),SD卡的控制權(quán)屬于電子裝置,外部設(shè)備的操作是通過MTP協(xié)議向電子裝置發(fā)起請求,由電子裝置完成具體的操作,不影響手機(jī)對SD卡的操作,故MTP存儲(chǔ)設(shè)備方式已成為連接外部設(shè)備進(jìn)行文件操作的主流方式。
[0003]但是Android對MTP的支持還不完善,只完成了 MTP協(xié)議中的文件傳輸控制,沒有設(shè)置身份權(quán)限驗(yàn)證的方法。因此,在進(jìn)行MTP模式連接時(shí),存在Android手機(jī)或平板電腦等電子裝置SD卡上的文件數(shù)據(jù)都可以被拷貝、刪除、篡改,所述Android電子裝置內(nèi)的文件數(shù)據(jù)存在很大的安全隱患。
【發(fā)明內(nèi)容】
[0004]鑒于以上內(nèi)容,有必要提供一種權(quán)限控制系統(tǒng)及方法,防止Android電子裝置內(nèi)部存儲(chǔ)區(qū)及其SD卡內(nèi)的文件數(shù)據(jù)被惡意篡改、刪除、拷貝,造成用戶資料的丟失及泄漏。
[0005]一種權(quán)限控制系統(tǒng),運(yùn)行于電子裝置中,該系統(tǒng)包括:擴(kuò)展模塊,用于在所述外部設(shè)備的MTP協(xié)議中新增一條權(quán)限配置命令,并使所述外部設(shè)備通過該命令與所述電子裝置進(jìn)行通訊;所述擴(kuò)展模塊,還用于當(dāng)所述電子裝置接收到外部設(shè)備發(fā)出的權(quán)限配置命令時(shí),擴(kuò)展所述電子裝置中的MTP協(xié)議,增加所述電子裝置的存儲(chǔ)區(qū)域及其內(nèi)部文件數(shù)據(jù)的權(quán)限設(shè)定,并為不同權(quán)限的訪問者設(shè)置不同的訪問口令;保存模塊,用于將不同權(quán)限的訪問者名稱、相應(yīng)的訪問口令、可訪問的區(qū)域、對可訪問區(qū)域可進(jìn)行的操作、可訪問的文件數(shù)據(jù)類別、對可訪問類別文件數(shù)據(jù)可進(jìn)行的操作信息以數(shù)據(jù)表的形式存儲(chǔ)到所述電子裝置的數(shù)據(jù)庫中;口令模塊,用于當(dāng)接收到所述外部設(shè)備發(fā)出的獲取所述電子裝置存儲(chǔ)設(shè)備信息的命令時(shí),在所述外部設(shè)備的顯示器中彈出一個(gè)輸入口令對話框;所述口令模塊,還用于當(dāng)所述電子裝置接收到所述外部設(shè)備輸入訪問口令時(shí),查詢所述數(shù)據(jù)表信息,核實(shí)所述外部設(shè)備的訪問權(quán)限;顯示模塊,用于顯示所述外部設(shè)備訪問權(quán)限內(nèi)的所述電子裝置的存儲(chǔ)區(qū)域及文件數(shù)據(jù)信息。
[0006]一種權(quán)限控制方法,應(yīng)用于電子裝置中,該方法包括:在外部設(shè)備的MTP協(xié)議內(nèi)增加一條配置權(quán)限命令,并使其通過該命令與電子裝置進(jìn)行通訊;當(dāng)所述電子裝置接收到所述外部設(shè)備發(fā)出的所述權(quán)限配置命令時(shí),擴(kuò)展所述電子裝置中的MTP協(xié)議,增加所述電子裝置的存儲(chǔ)區(qū)域及文件數(shù)據(jù)的權(quán)限設(shè)定,并為不同權(quán)限的訪問者設(shè)置不同的訪問口令;所述電子裝置將不同權(quán)限的訪問者名稱、相應(yīng)的訪問口令、可訪問的區(qū)域、對可訪問區(qū)域可進(jìn)行的操作、可訪問的文件數(shù)據(jù)類別、對可訪問類別文件數(shù)據(jù)可進(jìn)行的操作信息以數(shù)據(jù)表的形式存儲(chǔ)到所述電子裝置的數(shù)據(jù)庫中;當(dāng)所述外部設(shè)備發(fā)出獲取所述電子裝置存儲(chǔ)設(shè)備信息的命令時(shí),所述電子裝置返回要求輸入訪問口令的回應(yīng);當(dāng)所述電子裝置接收到所述外部設(shè)備輸入的權(quán)限口令時(shí),所述電子裝置查詢數(shù)據(jù)表信息,核實(shí)所述外部設(shè)備的訪問權(quán)限;電子裝置在所述外部設(shè)備的顯示器中顯示其訪問權(quán)限內(nèi)的所述電子裝置的存儲(chǔ)區(qū)域及文件數(shù)據(jù)信息。
[0007]相較于現(xiàn)有技術(shù),本發(fā)明所述的權(quán)限控制系統(tǒng)及方法,能夠通過拓展MTP協(xié)議,設(shè)置MTP存儲(chǔ)設(shè)備連接模式下對Android電子裝置存儲(chǔ)設(shè)備的訪問權(quán)限,避免了用戶資料的丟失及泄露。
【附圖說明】
[0008]圖1是本發(fā)明權(quán)限控制系統(tǒng)較佳實(shí)施例的運(yùn)行環(huán)境示意圖。
[0009]圖2是本發(fā)明權(quán)限控制系統(tǒng)較佳實(shí)施例的系統(tǒng)架構(gòu)圖。
[0010]圖3是本發(fā)明權(quán)限控制方法較佳實(shí)施例的流程圖。
[0011]圖4是本發(fā)明的數(shù)據(jù)庫表單的結(jié)構(gòu)示意圖。
[0012]主要元件符號說明
[0013]電子裝置I
[0014]外部設(shè)備2
[0015]權(quán)限控制系統(tǒng) 10
[0016]存儲(chǔ)裝置11
[0017]處理器12
[0018]顯示裝置13
[0019]監(jiān)控模塊101
[0020]擴(kuò)展模塊102
[0021]保存模塊103
[0022]口令模塊104
[0023]顯示模塊105
[0024]如下【具體實(shí)施方式】將結(jié)合上述附圖進(jìn)一步說明本發(fā)明。
【具體實(shí)施方式】
[0025]參閱圖1所示,是本發(fā)明權(quán)限控制系統(tǒng)較佳實(shí)施例的運(yùn)行環(huán)境示意圖。
[0026]在本實(shí)施例中,電子裝置I通過MTP存儲(chǔ)設(shè)備模式與外部設(shè)備2相連,MTP協(xié)議在所述電子裝置I與外部設(shè)備2間構(gòu)建了一套虛擬文件系統(tǒng),所述外部設(shè)備2對電子裝置I內(nèi)文件的操作均需通過MTP協(xié)議向電子裝置I發(fā)起請求,然后由電子裝置I完成具體的操作。所述外部設(shè)備2是一種桌上型計(jì)算機(jī)、筆記本、一體機(jī)、掌上電腦或者平板電腦等電子設(shè)備,所述電子裝置I是一種手機(jī)、平板電腦等Android操作系統(tǒng)的便攜式電子設(shè)備。所述電子裝置I及外部設(shè)備2內(nèi)均安裝有本發(fā)明所述的權(quán)限控制系統(tǒng)10。
[0027]參閱圖2所示,是本發(fā)明權(quán)限控制系統(tǒng)10較佳實(shí)施例的系統(tǒng)架構(gòu)圖。
[0028]在本實(shí)施例中,所述的權(quán)限控制系統(tǒng)10安裝并運(yùn)行于電子裝置I中,該電子裝置I還包括,但不僅限于,存儲(chǔ)裝置11、處理器12及顯示裝置13。所述存儲(chǔ)裝置11用于存儲(chǔ)所述的權(quán)限控制系統(tǒng)10的程序代碼和數(shù)據(jù)資料等,該存儲(chǔ)裝置11可以是電子裝置I的內(nèi)存,也可以是智能媒體卡(smart media card)、安全數(shù)字卡(secure digital card)、快閃存儲(chǔ)器卡(flash card)等儲(chǔ)存設(shè)備。所述顯示裝置13用于顯示環(huán)境判定結(jié)果等資料,該顯示裝置13可以是計(jì)算機(jī)的液晶顯示屏,也可以是手機(jī)或者平板電腦的觸摸屏等。所述電子裝置I可以是便攜式電子設(shè)備,也可以是外部設(shè)備2。
[0029]在本實(shí)施例中,所述的權(quán)限控制系統(tǒng)10可以被分割成一個(gè)或多個(gè)模塊,所述的一個(gè)或多個(gè)模塊均被存儲(chǔ)于存儲(chǔ)裝置11中,并由一個(gè)或多個(gè)處理器(本實(shí)施例為一個(gè)處理器12)所執(zhí)行,以完成本發(fā)明。如圖2所示,所述的權(quán)限控制系統(tǒng)10被分割成監(jiān)控模塊101、擴(kuò)展模塊102、保存模塊103、口令模塊104及顯示模塊105。本發(fā)明所稱的模塊是指能完成固定功能的一系列程序指令段,比程序更適合于描述軟件在電子裝置I中的執(zhí)行過程。以下將結(jié)合圖3的流程圖來詳細(xì)描述模塊101-105的具體功能。
[0030]參閱圖3所示,是本發(fā)明權(quán)限控制方法較佳實(shí)施例的流程圖。根據(jù)不同的需求,圖3所示的流程圖中的步驟的執(zhí)行順序可以改變,某些步驟可以省略。
[0031]步驟S21,擴(kuò)展模塊102在外部設(shè)備2的MTP協(xié)議中增加一條權(quán)限配置命令,并在當(dāng)電子裝置I以MTP存儲(chǔ)設(shè)備模式與所述外部設(shè)備2連接時(shí),使外部設(shè)備2通過新增的權(quán)限配置命令與所述電子裝置I進(jìn)行通訊,從而擴(kuò)展所述電子裝置I的訪問權(quán)限。
[0032]當(dāng)電子裝置I通過MTP協(xié)議連接上所述外部設(shè)備2時(shí),所有的操作請求均由作為Initator (發(fā)起者)的所述外部設(shè)備2發(fā)起,而作為Responder (應(yīng)答者)的電子裝置I在MTP協(xié)議中的作用就是處理所述外部設(shè)備2發(fā)出的請求,同時(shí)根據(jù)自身狀態(tài)的變化發(fā)送事件(Event)通知所述外部設(shè)備2。如圖1所示,在正常情況下,當(dāng)所述電子裝置I通過MTP存儲(chǔ)設(shè)備模式連接上外部設(shè)備2時(shí),所述外部設(shè)備2需要通過以下步驟才能對所述電子裝置I內(nèi)的文件進(jìn)行操作:
[0033]獲取設(shè)備信息步驟:所述外部設(shè)備2發(fā)送獲取裝置信息(GetDeviceInf0)請求,以獲取所述電子裝置I所支持的PTP版本(Picture Transfer Protocol:圖片傳輸協(xié)議)、MTP命令及Event類型等設(shè)備信息。
[0034]創(chuàng)建會(huì)話步驟:所述外部設(shè)備2發(fā)送開啟會(huì)話(OpenSess1n)命令,用以創(chuàng)建發(fā)送后續(xù)命令的會(huì)話,該會(huì)話一直保持到MTP存儲(chǔ)設(shè)備連接模式斷開為止。
[0035]獲取存儲(chǔ)編號(StorageIDs)步驟:所述外部設(shè)備2發(fā)送獲取存儲(chǔ)編號(GetStorageIDs)命令,獲取所述電子裝置I內(nèi)部存儲(chǔ)區(qū)及SD卡存儲(chǔ)區(qū)的存儲(chǔ)編號,進(jìn)而通過獲取存儲(chǔ)信息(GetStorageInf0)的操作獲取所述電子裝置I的剩余存儲(chǔ)空間、文件系統(tǒng)類型及訪問權(quán)限等存儲(chǔ)信息。
[0036]獲取對象句柄(0b jectHandles)步驟:所述外部設(shè)備2發(fā)送獲取對象句柄(GetObjectHandles)命令,獲取所述電子裝置I內(nèi)部存儲(chǔ)區(qū)或SD卡存儲(chǔ)區(qū)的文件及目錄的對象句柄,通過獲取的對象句柄達(dá)到操作所述電子裝置I內(nèi)存儲(chǔ)的文件及目錄的目的。例如繼續(xù)發(fā)送獲取對象句柄命令獲取某個(gè)目錄中子文件或子目錄的信息等。
[0037]很明顯,上述步驟中沒有權(quán)限控制的部分,存在所述電子裝置I內(nèi)部存儲(chǔ)區(qū)及SD卡上的所有文件均可以被任意拷貝、涂改及刪除,這對于所述電子裝置I內(nèi)文件數(shù)據(jù)的安全有很大的隱患。
[0038]因此,為所述電子裝置I的MTP協(xié)議增加權(quán)限控制成為必然。鑒于上述步驟中的獲取存儲(chǔ)編號步驟可直接獲取所述電子裝置I的存儲(chǔ)設(shè)備信息,所以需要擴(kuò)展所述電子裝置I的MTP協(xié)議中的存儲(chǔ)設(shè)備信息(MtpStorageInfo)內(nèi)的訪問控制項(xiàng)(AccessCapability);同時(shí),鑒于上述步驟中的獲取對象句柄步驟可直接獲取所述電子裝置I存儲(chǔ)區(qū)域內(nèi)的文件信息,所以還需要擴(kuò)展所述電子裝置I的MTP協(xié)議的操作對象Object(—個(gè)Object對應(yīng)一個(gè)文件)的保護(hù)屬性(Prote