本發(fā)明涉及通信領(lǐng)域的終端安全技術(shù),尤其涉及一種安全配置方法,安全控制裝置及安全配置裝置。
背景技術(shù):
由于android系統(tǒng)的靈活性和良好的兼容性,使得越來(lái)越多的終端采用android系統(tǒng),也出現(xiàn)了大量的android應(yīng)用,其中很大一部分應(yīng)用可能涉及用戶的隱私信息,如果信息泄露,很可能會(huì)對(duì)用戶的人身安全或財(cái)產(chǎn)安全造成威脅。為了保證android系統(tǒng)的安全性,android系統(tǒng)的內(nèi)核集成了強(qiáng)制訪問(wèn)控制安全系統(tǒng)(security-enhancedlinux,selinux),所述selinux采用安全策略確保文件的安全性,即對(duì)每個(gè)文件設(shè)置安全策略,在沒(méi)有被文件的安全策略允許的情況下,所有對(duì)文件的訪問(wèn)都是非法的。
現(xiàn)有技術(shù)中,android系統(tǒng)將每個(gè)應(yīng)用都作為一個(gè)操作系統(tǒng)用戶,每個(gè)應(yīng)用都有自己唯一的身份標(biāo)識(shí),從而可以為不同應(yīng)用配置不同的selinux安全策略,在android系統(tǒng)中應(yīng)用的身份標(biāo)識(shí)可以是程序的簽名,所述簽名通常為開(kāi)發(fā)者的私鑰。為了使用selinux在android系統(tǒng)上構(gòu)建安全運(yùn)行環(huán)境,通常需要通過(guò)服務(wù)器遠(yuǎn)程為該域內(nèi)的應(yīng)用配置相應(yīng)的安全策略,終端收到服務(wù)器推送的包括應(yīng)用對(duì)應(yīng)的安全策略和應(yīng)用安裝包的安裝文件之后,首先需要安裝安全策略,然后安裝應(yīng)用。在應(yīng)用運(yùn)行時(shí),android系統(tǒng)通過(guò)識(shí)別該應(yīng)用程序的簽名匹配該應(yīng)用對(duì)應(yīng)的selinux安全策略。
但是,由于android系統(tǒng)中需要重點(diǎn)保護(hù)的應(yīng)用眾多,而且每個(gè)應(yīng)用的來(lái)源不同,開(kāi)發(fā)者不同,其簽名也不同,因此必須為每個(gè)應(yīng)用編寫(xiě)對(duì)應(yīng)的安全策略才能為該應(yīng)用提供保護(hù),導(dǎo)致為應(yīng)用配置安全策略的程序復(fù)雜,并且由于每 個(gè)應(yīng)用的安全策略是服務(wù)器推送給終端的,終端用戶不能個(gè)性化選擇需要安全策略保護(hù)的應(yīng)用,用戶體驗(yàn)較差。
技術(shù)實(shí)現(xiàn)要素:
為解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例期望提供一種安全配置方法,安全控制裝置及安全配置裝置,能夠簡(jiǎn)化安全策略配置的程序,并且使得用戶能夠個(gè)性化選擇需要安全策略保護(hù)的應(yīng)用,提高用戶體驗(yàn)。
本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
第一方面,本發(fā)明實(shí)施例提供一種安全配置方法,包括:
確定應(yīng)用是否設(shè)置有安全標(biāo)識(shí);
當(dāng)所述應(yīng)用設(shè)置有所述安全標(biāo)識(shí)時(shí),采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的安全。
可選的,在所述確定應(yīng)用是否設(shè)置有安全標(biāo)識(shí)之前,所述方法還包括:
接收簽名信息,所述簽名信息包括所述應(yīng)用的真實(shí)簽名或虛擬簽名;
所述確定應(yīng)用是否設(shè)置有安全標(biāo)識(shí)包括:
若所述簽名信息包括所述應(yīng)用的真實(shí)簽名,確定所述應(yīng)用未設(shè)置所述安全標(biāo)識(shí);
若所述簽名信息包括所述應(yīng)用的虛擬簽名,確定所述應(yīng)用設(shè)置有所述安全標(biāo)識(shí)。
可選的,在接收簽名信息之前,所述方法還包括:
發(fā)送查詢請(qǐng)求,所述查詢請(qǐng)求用于查詢所述應(yīng)用的所述簽名信息。
可選的,在所述采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的安全之后,所述方法還包括:
接收廣播消息,所述廣播消息包括所述應(yīng)用的身份標(biāo)識(shí),所述廣播消息用于指示所述應(yīng)用設(shè)置的安全標(biāo)識(shí)已取消;
停止采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的安全。
第二方面,本發(fā)明實(shí)施例提供一種安全配置方法,包括:
接收用戶輸入的標(biāo)記指示;
根據(jù)所述標(biāo)記指示,為應(yīng)用設(shè)置安全標(biāo)識(shí)。
可選的,所述方法還包括:
建立安全列表,所述安全列表記錄有所有設(shè)置安全標(biāo)識(shí)的應(yīng)用的身份標(biāo)識(shí)。
可選的,所述方法還包括:
接收查詢請(qǐng)求,所述查詢請(qǐng)求包括所述應(yīng)用的身份標(biāo)識(shí);
根據(jù)所述身份標(biāo)識(shí),查詢所述安全列表;
根據(jù)查詢結(jié)果,生成所述應(yīng)用的簽名信息;
其中,若所述安全列表中存在所述應(yīng)用的身份標(biāo)識(shí),所述應(yīng)用的簽名信息中包括所述應(yīng)用的虛擬簽名;若所述安全列表中不存在所述應(yīng)用的身份標(biāo)識(shí),所述應(yīng)用的簽名信息中包括所述應(yīng)用的真實(shí)簽名;
發(fā)送所述應(yīng)用的簽名信息。
可選的,在根據(jù)所述標(biāo)記指示,為應(yīng)用設(shè)置安全標(biāo)識(shí)之后,所述方法還包括:
接收用戶輸入的取消指示;
根據(jù)所述取消指示,取消所述應(yīng)用的安全標(biāo)識(shí)。
可選的,在根據(jù)所述取消指示,取消所述應(yīng)用的安全標(biāo)識(shí)之后,所述方法還包括:
發(fā)送廣播消息,所述廣播消息包括所述應(yīng)用的身份標(biāo)識(shí),所述廣播消息用于指示所述應(yīng)用設(shè)置的安全標(biāo)識(shí)已取消。
可選的,在根據(jù)所述取消指示,取消所述應(yīng)用的安全標(biāo)識(shí)之后,所述方法還包括:
更新所述安全列表,使得所述安全列表中不存在所述應(yīng)用的身份標(biāo)識(shí)。
第三方面,本發(fā)明實(shí)施例提供一種安全控制裝置,包括:
處理單元,用于確定應(yīng)用是否設(shè)置有安全標(biāo)識(shí);當(dāng)所述應(yīng)用設(shè)置有所述安全標(biāo)識(shí)時(shí),采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的安全。
可選的,所述裝置還包括:
第一接收單元,用于接收簽名信息,所述簽名信息包括所述應(yīng)用的真實(shí)簽名或虛擬簽名;
所述處理單元具體用于:若所述簽名信息包括所述應(yīng)用的真實(shí)簽名,確定所述應(yīng)用未設(shè)置所述安全標(biāo)識(shí);若所述簽名信息包括所述應(yīng)用的虛擬簽名,確定所述應(yīng)用設(shè)置有所述安全標(biāo)識(shí)。
可選的,所述裝置還包括:
發(fā)送單元,用于發(fā)送查詢請(qǐng)求,所述查詢請(qǐng)求用于查詢所述應(yīng)用的所述簽名信息。
可選的,所述裝置還包括:
第二接收單元,用于接收廣播消息,所述廣播消息包括所述應(yīng)用的身份標(biāo)識(shí),所述廣播消息用于指示所述應(yīng)用設(shè)置的安全標(biāo)識(shí)已取消;
所述處理單元還用于停止采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的安全。
第四方面,本發(fā)明實(shí)施例提供一種安全配置裝置,包括:
第一接收單元,用于接收用戶輸入的標(biāo)記指示;
配置單元,用于根據(jù)所述標(biāo)記指示,為應(yīng)用設(shè)置安全標(biāo)識(shí)。
可選的,所述配置單元還用于建立安全列表,所述安全列表記錄有所有設(shè)置安全標(biāo)識(shí)的應(yīng)用的身份標(biāo)識(shí)。
可選的,所述裝置還包括:
第二接收單元,用于接收查詢請(qǐng)求,所述查詢請(qǐng)求包括所述應(yīng)用的身份標(biāo)識(shí);
查詢單元,用于根據(jù)所述身份標(biāo)識(shí),查詢所述安全列表;根據(jù)查詢結(jié)果,生成所述應(yīng)用的簽名信息;其中,若所述安全列表中存在所述應(yīng)用的身份標(biāo)識(shí),所述應(yīng)用的簽名信息中包括所述應(yīng)用的虛擬簽名;若所述安全列表中不存在所述應(yīng)用的身份標(biāo)識(shí),所述應(yīng)用的簽名信息中包括所述應(yīng)用的真實(shí)簽名;
第一發(fā)送單元,用于發(fā)送所述應(yīng)用的簽名信息。
可選的,所述第一接收單元還用于接收用戶輸入的取消指示;
所述配置單元還用于根據(jù)所述取消指示,取消所述應(yīng)用的安全標(biāo)識(shí)。
可選的,所述裝置還包括:
第二發(fā)送單元,用于發(fā)送廣播消息,所述廣播消息包括所述應(yīng)用的身份標(biāo)識(shí),所述廣播消息用于指示所述應(yīng)用設(shè)置的安全標(biāo)識(shí)已取消。
可選的,所述配置單元還用于更新所述安全列表,使得所述安全列表中不存在所述應(yīng)用的身份標(biāo)識(shí)。
本發(fā)明實(shí)施例提供了安全配置方法,安全控制裝置及安全配置裝置,所述安全配置方法包括:首先確定應(yīng)用是否設(shè)置有安全標(biāo)識(shí),當(dāng)所述應(yīng)用設(shè)置有所述安全標(biāo)識(shí)時(shí),采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的安全。相較于現(xiàn)有技術(shù),不需要為每個(gè)應(yīng)用設(shè)置對(duì)應(yīng)的安全策略,而是用戶根據(jù)需要為應(yīng)用設(shè)置安全標(biāo)識(shí),在終端運(yùn)行應(yīng)用時(shí),設(shè)置有安全標(biāo)識(shí)的所有應(yīng)用均可采用本地預(yù)設(shè)selinux安全策略保護(hù)其安全,因此簡(jiǎn)化了安全策略配置的程序,同時(shí)使得用戶能夠個(gè)性化選擇需要安全策略保護(hù)的應(yīng)用,提高了用戶體驗(yàn)。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例提供的一種安全配置方法的流程示意圖1;
圖2為本發(fā)明實(shí)施例提供的終端結(jié)構(gòu)示意圖;
圖3為本發(fā)明實(shí)施例提供的簽名映射模塊的流程示意圖;
圖4為本發(fā)明實(shí)施例提供的用戶配置模塊的流程示意圖;
圖5為本發(fā)明實(shí)施例提供的一種安全配置方法的流程示意圖2;
圖6為本發(fā)明實(shí)施例提供的一種安全配置方法的流程示意圖3;
圖7為本發(fā)明實(shí)施例提供的一種安全配置方法的流程示意圖4;
圖8為本發(fā)明實(shí)施例提供的一種安全配置方法的流程示意圖5;
圖9為本發(fā)明實(shí)施例提供的一種安全配置方法的流程示意圖6;
圖10為本發(fā)明實(shí)施例提供的一種安全控制裝置的結(jié)構(gòu)示意圖1;
圖11為本發(fā)明實(shí)施例提供的一種安全控制裝置的結(jié)構(gòu)示意圖2;
圖12為本發(fā)明實(shí)施例提供的一種安全控制裝置的結(jié)構(gòu)示意圖3;
圖13為本發(fā)明實(shí)施例提供的一種安全配置裝置的結(jié)構(gòu)示意圖1;
圖14為本發(fā)明實(shí)施例提供的一種安全配置裝置的結(jié)構(gòu)示意圖2;
圖15為本發(fā)明實(shí)施例提供的一種安全配置裝置的結(jié)構(gòu)示意圖3。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述。
本發(fā)明實(shí)施例一種安全配置方法,用于終端,所述終端可以為手機(jī),平板電腦等,本發(fā)明實(shí)施例對(duì)此不做限定。如圖1所示,所述安全配置方法包括:
步驟101、接收用戶輸入的標(biāo)記指示。
示例的,所述終端可以參考圖2所示,包括用戶配置模塊201,簽名映射模塊202,selinux安全策略保護(hù)模塊203,其中所述用戶配置模塊201與所述簽名映射模塊202連接,所述簽名映射模塊202與所述selinux安全策略保護(hù)模塊203連接,所述簽名映射模塊202和selinux安全策略保護(hù)模塊203分別與android(安卓)系統(tǒng)204連接。所述用戶配置模塊201包括用戶標(biāo)記應(yīng)用接口和用戶取消標(biāo)記接口,當(dāng)用戶確定需要為應(yīng)用提供selinux安全策略保護(hù)時(shí),可以通過(guò)用戶標(biāo)記應(yīng)用接口輸入標(biāo)記指示。具體的,所述應(yīng)用可以設(shè)置標(biāo)記開(kāi)關(guān),當(dāng)用戶選擇打開(kāi)所述標(biāo)記開(kāi)關(guān)時(shí),表示所述用戶輸入了標(biāo)記指示。
步驟102、根據(jù)所述標(biāo)記指示,為應(yīng)用設(shè)置安全標(biāo)識(shí)。
示例的,所述安全標(biāo)識(shí)可以為虛擬簽名,所述虛擬簽名一般為某個(gè)未公布的私有簽名,和已知簽名不同即可。初始化時(shí),用戶配置模塊201可以建立安全列表,所述安全列表記錄有所有設(shè)置安全標(biāo)識(shí)的應(yīng)用的身份標(biāo)識(shí)。當(dāng)用戶通過(guò)用戶標(biāo)記應(yīng)用接口輸入標(biāo)記指示之后,解析所述應(yīng)用的信息,獲取所述應(yīng)用的身份標(biāo)識(shí),然后將所述應(yīng)用的身份標(biāo)識(shí)記錄在安全列表中,并且通過(guò)簽名映射模塊202為所述應(yīng)用設(shè)置虛擬簽名。然后簽名映射模塊202可以將selinux安全策略保護(hù)模塊203中的安全服務(wù)設(shè)置成有效,表示android系統(tǒng)204采用預(yù)設(shè)的selinux安全策略保護(hù)該應(yīng)用的安全。
這樣一來(lái),用戶根據(jù)需要為應(yīng)用設(shè)置安全標(biāo)識(shí),在終端運(yùn)行應(yīng)用時(shí),設(shè)置有安全標(biāo)識(shí)的所有應(yīng)用均可采用本地預(yù)設(shè)selinux安全策略保護(hù)其安全,使得用戶能夠個(gè)性化選擇需要安全策略保護(hù)的應(yīng)用,提高了用戶體驗(yàn)。
進(jìn)一步的,在為應(yīng)用設(shè)置安全標(biāo)識(shí)之后,還可以接收android系統(tǒng)發(fā)送的查詢請(qǐng)求,所述查詢請(qǐng)求包括所述應(yīng)用的身份標(biāo)識(shí),根據(jù)所述身份標(biāo)識(shí),查詢所述安全列表,并根據(jù)查詢結(jié)果,生成所述應(yīng)用的簽名信息;其中,若所述安全列表中存在所述應(yīng)用的身份標(biāo)識(shí),所述應(yīng)用的簽名信息中包括所述應(yīng)用的虛擬簽名;若所述安全列表中不存在所述應(yīng)用的身份標(biāo)識(shí),所述應(yīng)用的簽名信息中包括所述應(yīng)用的真實(shí)簽名;然后向所述android系統(tǒng)發(fā)送所述應(yīng)用的簽名信息。
示例的,在android系統(tǒng)運(yùn)行所述應(yīng)用的過(guò)程中,需要加載所述應(yīng)用的安全策略,此時(shí)android系統(tǒng)可以向簽名映射模塊202發(fā)出查詢請(qǐng)求,簽名映射模塊202根據(jù)查詢請(qǐng)求中包括的身份標(biāo)識(shí),檢索用戶配置模塊201中的安全列表,確定安全列表中是否包括所述應(yīng)用的身份標(biāo)識(shí),并根據(jù)查詢結(jié)果生成簽名信息,并反饋給android系統(tǒng)。其中,若所述安全列表中存在所述應(yīng)用的身份標(biāo)識(shí),表示用戶希望為該應(yīng)用提供安全保護(hù),此時(shí)應(yīng)用的簽名信息中包括所述應(yīng)用的虛擬簽名;若所述安全列表中不存在所述應(yīng)用的身份標(biāo)識(shí),標(biāo)識(shí)用戶并沒(méi)有指示為該應(yīng)用設(shè)置安全標(biāo)識(shí),此時(shí)應(yīng)用的簽名信息中包括所述應(yīng)用的真實(shí)簽名。具體的,簽名映射模塊202的查詢流程可以如圖3所示:
步驟301、接收android系統(tǒng)發(fā)送的查詢請(qǐng)求。
步驟302、根據(jù)所述查詢請(qǐng)求,查詢所述用戶配置模塊中的安全列表。
步驟303、根據(jù)查詢結(jié)果,確定所述應(yīng)用是否設(shè)置有安全標(biāo)識(shí);當(dāng)所述應(yīng)用設(shè)置有安全標(biāo)識(shí)時(shí),執(zhí)行步驟304;當(dāng)所述應(yīng)用未設(shè)置安全標(biāo)識(shí)時(shí),執(zhí)行步驟305。
步驟304、發(fā)送包括所述應(yīng)用的虛擬簽名的簽名信息。
步驟305、發(fā)送包括所述應(yīng)用的真實(shí)簽名的簽名信息。
進(jìn)一步的,在根據(jù)所述標(biāo)記指示,為應(yīng)用設(shè)置安全標(biāo)識(shí)之后,還可以接收 用戶輸入的取消指示,然后根據(jù)所述取消指示,取消所述應(yīng)用的安全標(biāo)識(shí)。
示例的,在應(yīng)用運(yùn)行的過(guò)程中,用戶可以根據(jù)實(shí)際情況,取消為該應(yīng)用設(shè)置的安全標(biāo)識(shí),此時(shí)用戶可以點(diǎn)擊關(guān)閉標(biāo)記開(kāi)關(guān),表示用戶輸入了取消指示,用戶配置模塊201通過(guò)用戶取消標(biāo)記接口接收到用戶輸入的取消指示之后,解析所述應(yīng)用的信息,獲取所述應(yīng)用的身份標(biāo)識(shí),然后更新安全列表,即刪除安全列表中所述應(yīng)用的身份標(biāo)識(shí)。
具體的,用戶配置模塊201的具體工作流程如圖4所示:
步驟401、接收用戶輸入的標(biāo)記指示或取消指示。
步驟402、根據(jù)所述標(biāo)記指示或取消指示,解析所述應(yīng)用的信息,獲取所述應(yīng)用的身份標(biāo)識(shí)。
步驟403、更新安全列表。
進(jìn)一步的,在根據(jù)所述取消指示,取消所述應(yīng)用的安全標(biāo)識(shí)之后,還可以發(fā)送廣播消息,所述廣播消息包括所述應(yīng)用的身份標(biāo)識(shí),所述廣播消息用于指示所述應(yīng)用設(shè)置的安全標(biāo)識(shí)已取消。
示例的,用戶在取消應(yīng)用的安全標(biāo)識(shí)之后,簽名映射模塊202需要更新android系統(tǒng)中的簽名信息,即通知android系統(tǒng)該應(yīng)用的安全標(biāo)識(shí)已取消,同時(shí)需要將selinux安全策略保護(hù)模塊203中的策略緩存標(biāo)記成失效,從而使得android系統(tǒng)204重新加載安全策略信息。具體的,用戶在取消應(yīng)用的安全標(biāo)識(shí)之后,簽名映射模塊202可以發(fā)送廣播消息,廣播消息中攜帶了應(yīng)用的身份標(biāo)識(shí)。android系統(tǒng)204收到廣播通知后發(fā)起針對(duì)該應(yīng)用的簽名信息進(jìn)行查詢。所述查詢流程與android系統(tǒng)204加載安全策略時(shí)的查詢流程一致,本發(fā)明實(shí)施例再次不做贅述。同時(shí),為了刷新android系統(tǒng)204中的selinux安全策略,簽名映射模塊202將selinux安全策略保護(hù)模塊203中的策略緩存標(biāo)記成失效,android系統(tǒng)204在檢測(cè)到策略緩存失效后,重新加載該應(yīng)用的安全策略,使得android系統(tǒng)204停止使用預(yù)設(shè)的selinux安全策略保護(hù)該應(yīng)用的安全。
本發(fā)明實(shí)施例提供一種安全配置方法,包括:接收用戶輸入的標(biāo)記指示;根據(jù)所述標(biāo)記指示,為應(yīng)用設(shè)置安全標(biāo)識(shí)。相較于現(xiàn)有技術(shù),用戶根據(jù)需要為 應(yīng)用設(shè)置安全標(biāo)識(shí),在終端運(yùn)行應(yīng)用時(shí),設(shè)置有安全標(biāo)識(shí)的所有應(yīng)用均可采用本地預(yù)設(shè)selinux安全策略保護(hù)其安全,使得用戶能夠個(gè)性化選擇需要安全策略保護(hù)的應(yīng)用,提高了用戶體驗(yàn)。
本發(fā)明實(shí)施例提供一種安全配置方法,應(yīng)用于終端控制器,或者操作系統(tǒng),所述操作系統(tǒng)可以為android系統(tǒng),ios系統(tǒng)或者symbian(塞班)系統(tǒng)等,本發(fā)明實(shí)施例對(duì)此不做限定。如圖5所示,包括:
步驟501、確定應(yīng)用是否設(shè)置有安全標(biāo)識(shí)。
本發(fā)明實(shí)施例以android系統(tǒng)為例進(jìn)行說(shuō)明,運(yùn)行所述android系統(tǒng)的終端可以參考圖2所示。示例的,所述安全標(biāo)識(shí)可以是為應(yīng)用設(shè)置虛擬簽名。當(dāng)在android系統(tǒng)運(yùn)行所述應(yīng)用的過(guò)程中,需要加載所述應(yīng)用的安全策略,此時(shí)android系統(tǒng)可以向終端的簽名映射模塊202發(fā)出查詢請(qǐng)求,簽名映射模塊202根據(jù)查詢請(qǐng)求中包括的身份標(biāo)識(shí),檢索用戶配置模塊201中的安全列表,確定安全列表中是否包括所述應(yīng)用的身份標(biāo)識(shí),所述安全列表記錄了所有設(shè)置有安全標(biāo)識(shí)的應(yīng)用的身份標(biāo)識(shí)。當(dāng)安全列表中包括所述應(yīng)用的身份標(biāo)識(shí)時(shí),簽名映射模塊202向android系統(tǒng)發(fā)送包括應(yīng)用虛擬簽名的簽名信息;當(dāng)安全列表中不包括所述應(yīng)用的身份標(biāo)識(shí)時(shí),簽名映射模塊202向android系統(tǒng)發(fā)送包括應(yīng)用真實(shí)簽名的簽名信息。然后android系統(tǒng)根據(jù)接收到的簽名信息中包括的簽名確定應(yīng)用是否設(shè)置有安全標(biāo)識(shí)。
步驟502、當(dāng)所述應(yīng)用設(shè)置有所述安全標(biāo)識(shí)時(shí),采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的安全。
示例的,假設(shè)所述應(yīng)用為微信,由于微信可能綁定用戶的通信錄和銀行卡,因此需要對(duì)微信實(shí)行安全策略的保護(hù)?,F(xiàn)有技術(shù)中,微信的安裝文件通常包括微信的selinux安全策略以及微信的安裝包,在安裝微信時(shí),需要首先安裝selinux安全策略,然后安裝微信,采用微信對(duì)應(yīng)的selinux安全策略保護(hù)微信的安全,但是這樣會(huì)導(dǎo)致微信的selinux安裝策略配置較為復(fù)雜,并且用戶不能自主選擇是否為微信提供selinux安全策略保護(hù)。因此,用戶可以在安裝完微信之后,為微信設(shè)置安全標(biāo)識(shí),當(dāng)android系統(tǒng)確定微信設(shè)置有安全標(biāo)識(shí)時(shí), 可以從selinux安全策略保護(hù)模塊203加載預(yù)設(shè)的selinux安全策略,采用加載的selinux安全策略保護(hù)微信的安全,不需要為微信安裝專門的安全策略。
這樣一來(lái),不需要為每個(gè)應(yīng)用設(shè)置對(duì)應(yīng)的安全策略,而是用戶根據(jù)需要為應(yīng)用設(shè)置安全標(biāo)識(shí),在終端運(yùn)行應(yīng)用時(shí),設(shè)置有安全標(biāo)識(shí)的所有應(yīng)用均可采用預(yù)設(shè)selinux安全策略保護(hù)其安全,因此簡(jiǎn)化了安全策略配置的程序,同時(shí)使得用戶能夠個(gè)性化選擇需要安全策略保護(hù)的應(yīng)用,提高了用戶體驗(yàn)。
進(jìn)一步的,如圖6所示,在所述確定應(yīng)用是否設(shè)置有安全標(biāo)識(shí)之前,所述方法還包括:
步驟503、接收簽名信息,所述簽名信息包括所述應(yīng)用的真實(shí)簽名或虛擬簽名。
在確定應(yīng)用是否設(shè)置有安全標(biāo)識(shí)時(shí),可以通過(guò)解析簽名信息中的內(nèi)容來(lái)確定應(yīng)用是否設(shè)置有安全標(biāo)識(shí),具體的,若所述簽名信息包括所述應(yīng)用的真實(shí)簽名,確定所述應(yīng)用未設(shè)置所述安全標(biāo)識(shí);若所述簽名信息包括所述應(yīng)用的虛擬簽名,確定所述應(yīng)用設(shè)置有所述安全標(biāo)識(shí)。
進(jìn)一步的,如圖7所示,在接收簽名信息之前,所述方法還包括:
步驟504、發(fā)送查詢請(qǐng)求,所述查詢請(qǐng)求用于查詢所述應(yīng)用的所述簽名信息。
示例的,當(dāng)在android系統(tǒng)需要加載應(yīng)用的安全策略時(shí),可以向終端的簽名映射模塊202發(fā)出查詢請(qǐng)求,簽名映射模塊202根據(jù)查詢請(qǐng)求中包括的身份標(biāo)識(shí),進(jìn)行查詢,并且在應(yīng)用設(shè)置有安全標(biāo)識(shí)時(shí)向android系統(tǒng)發(fā)送包括應(yīng)用虛擬簽名的簽名信息;在應(yīng)用未設(shè)置安全標(biāo)識(shí)時(shí)向android系統(tǒng)發(fā)送包括應(yīng)用真實(shí)簽名的簽名信息。
進(jìn)一步的,如圖8所示,在所述采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的安全之后,所述方法還包括:
步驟505、接收廣播消息,所述廣播消息包括所述應(yīng)用的身份標(biāo)識(shí),所述廣播消息用于指示所述應(yīng)用設(shè)置的安全標(biāo)識(shí)已取消。
步驟506、停止采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的安全。
示例的,當(dāng)用戶取消應(yīng)用的安全標(biāo)識(shí)之后,終端的簽名映射模塊202可以發(fā)送廣播消息,廣播消息中攜帶了該應(yīng)用的身份標(biāo)識(shí)。android系統(tǒng)204收到廣播通知后發(fā)起針對(duì)該應(yīng)用的簽名查詢,所述查詢流程與android系統(tǒng)204加載安全策略時(shí)的查詢流程一致。同時(shí),為了刷新android系統(tǒng)204中的selinux安全策略,簽名映射模塊202將selinux安全策略保護(hù)模塊203中的策略緩存標(biāo)記成失效,android系統(tǒng)204在對(duì)該應(yīng)用的簽名進(jìn)行查詢時(shí),獲取到真實(shí)簽名,然后會(huì)對(duì)策略緩存的有效性進(jìn)行檢測(cè),若檢測(cè)到策略緩存失效,重新加載該應(yīng)用的安全策略,使得android系統(tǒng)204停止使用預(yù)設(shè)的selinux安全策略保護(hù)該應(yīng)用的安全。
本發(fā)明實(shí)施例提供了一種安全配置方法,包括:首先確定應(yīng)用是否設(shè)置有安全標(biāo)識(shí),當(dāng)所述應(yīng)用設(shè)置有所述安全標(biāo)識(shí)時(shí),采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的安全。相較于現(xiàn)有技術(shù),不需要為每個(gè)應(yīng)用設(shè)置對(duì)應(yīng)的安全策略,而是用戶根據(jù)需要為應(yīng)用設(shè)置安全標(biāo)識(shí),在終端運(yùn)行應(yīng)用時(shí),設(shè)置有安全標(biāo)識(shí)的所有應(yīng)用均可采用預(yù)設(shè)selinux安全策略保護(hù)其安全,因此簡(jiǎn)化了安全策略配置的程序,同時(shí)使得用戶能夠個(gè)性化選擇需要安全策略保護(hù)的應(yīng)用,提高了用戶體驗(yàn)。
本發(fā)明實(shí)施例提供一種安全配置方法,應(yīng)用于終端,所述終端可以為手機(jī),平板電腦,以及其他智能終端,所述終端可以運(yùn)行多種類型的操作系統(tǒng),以android系統(tǒng)為例進(jìn)行說(shuō)明,如圖9所示,所述安全配置方法包括:
步驟901、預(yù)先設(shè)置selinux安全策略,執(zhí)行步驟902。
示例的,selinux和傳統(tǒng)linux最大區(qū)別在于采用了強(qiáng)制訪問(wèn)控制機(jī)制,例如,由于設(shè)置失誤或有意篡改,導(dǎo)致一個(gè)root文件的讀取權(quán)限被設(shè)置為允許所有進(jìn)程讀取,包括非root進(jìn)程。在傳統(tǒng)linux中,由于權(quán)限允許,其他非root進(jìn)程可以讀取該root文件數(shù)據(jù)。但在selinux中,由于可以通過(guò)預(yù)先配置的安全策略禁止所有非root進(jìn)程訪問(wèn)root文件,這樣,即使文件權(quán)限允許非root進(jìn)程讀取該root文件的數(shù)據(jù),由于selinux的安全策略會(huì)判定該讀取動(dòng)作非法,因此會(huì)阻止非root進(jìn)程進(jìn)行讀取,確保了該root文件的安全性。
因此,為了提高應(yīng)用的安全性,可以預(yù)先在終端中設(shè)置selinux安全策略,示例的,假設(shè)用戶的隱私信息存放在參考文件中,所述selinux安全策略可以設(shè)置為僅有授權(quán)進(jìn)程可以訪問(wèn)該參考文件,其他未授權(quán)進(jìn)程訪問(wèn)該參考文件均為非法操作。實(shí)際應(yīng)用中,所述selinux安全策略的具體內(nèi)容可以根據(jù)具體情況進(jìn)行設(shè)定,本發(fā)明實(shí)施例在此不做限定。
步驟902、根據(jù)用戶輸入的標(biāo)記指示,為相關(guān)應(yīng)用設(shè)置安全標(biāo)識(shí),執(zhí)行步驟903。
示例的,用戶可以預(yù)先確定是否為應(yīng)用設(shè)置安全標(biāo)識(shí),假設(shè)終端正在安裝第一應(yīng)用,在第一應(yīng)用安裝完成后,終端可以提醒用戶,是否需要為第一應(yīng)用設(shè)置安全標(biāo)識(shí),若用戶選擇“是”,則為第一應(yīng)用設(shè)置安全標(biāo)識(shí),即第一應(yīng)用運(yùn)行時(shí)采用預(yù)設(shè)的selinux安全策略保護(hù)文件安全;若用戶選擇“否”,則不為第一應(yīng)用設(shè)置安全標(biāo)識(shí)。其中,所述安全標(biāo)識(shí)可以為虛擬簽名,即若用戶選擇為第一應(yīng)用設(shè)置安全標(biāo)識(shí),則為第一應(yīng)用設(shè)置虛擬簽名。
實(shí)際應(yīng)用中,終端可以設(shè)置安全列表,所述安全列表記錄所有設(shè)置安全標(biāo)識(shí)的應(yīng)用的身份標(biāo)識(shí),還可以包括每個(gè)應(yīng)用設(shè)置安全標(biāo)識(shí)的時(shí)間,當(dāng)用戶選擇為第一應(yīng)用設(shè)置安全標(biāo)識(shí)時(shí),將第一應(yīng)用記錄在安全列表中,當(dāng)用戶選擇取消第一應(yīng)用設(shè)置的安全標(biāo)識(shí)時(shí),將第一應(yīng)用從安全列表中刪除。
由于所述selinux安全策略可以被多個(gè)應(yīng)用同時(shí)使用,避免了為每個(gè)應(yīng)用設(shè)置selinux安全策略的情況,簡(jiǎn)化了為應(yīng)用配置selinux安全策略的程序。同時(shí),用戶可以自主選擇需要采用selinux安全策略進(jìn)行保護(hù)的應(yīng)用,提高了selinux安全策略應(yīng)用的靈活性。并且,為應(yīng)用設(shè)置安全標(biāo)識(shí)不需要更改應(yīng)用的原始簽名信息,保留了開(kāi)發(fā)者的信息,擴(kuò)大了selinux安全策略的應(yīng)用范圍,受到應(yīng)用開(kāi)發(fā)者的歡迎。
步驟903、運(yùn)行應(yīng)用,執(zhí)行步驟904。
示例的,假設(shè)終端當(dāng)前共安裝了五個(gè)應(yīng)用,用戶可以選擇使用該五個(gè)應(yīng)用中的任意一個(gè)應(yīng)用,其中,第一應(yīng)用和第二應(yīng)用設(shè)置有安全標(biāo)識(shí),其他應(yīng)用未設(shè)置安全標(biāo)識(shí)。
步驟904、確定所述應(yīng)用是否設(shè)置有安全標(biāo)識(shí),當(dāng)所述應(yīng)用設(shè)置有所述安全標(biāo)識(shí),執(zhí)行步驟905;當(dāng)所述應(yīng)用未設(shè)置所述安全標(biāo)識(shí),執(zhí)行步驟906。
示例的,以安全標(biāo)識(shí)為虛擬簽名為例進(jìn)行說(shuō)明,android系統(tǒng)在運(yùn)行應(yīng)用時(shí),需要查詢?cè)搼?yīng)用的簽名信息,若該應(yīng)用設(shè)置有虛擬簽名,則可以將虛擬簽名反饋給android系統(tǒng),此時(shí)android系統(tǒng)可知該應(yīng)用設(shè)置有安全標(biāo)識(shí);若該應(yīng)用沒(méi)有設(shè)置虛擬簽名,則可以將真實(shí)簽名反饋給android系統(tǒng),此時(shí)android系統(tǒng)可知該應(yīng)用未設(shè)置安全標(biāo)識(shí)。
步驟905、采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的文件安全,步驟906。
示例的,若應(yīng)用設(shè)置有虛擬簽名,說(shuō)明用戶需要該應(yīng)用得到充足的保護(hù),因此可以采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的文件安全。此時(shí),無(wú)論該應(yīng)用的文件是否被設(shè)置為所有進(jìn)程可讀取,僅有被selinux安全策略允許的進(jìn)程才是合法的讀取,其他的進(jìn)程都會(huì)因?yàn)槠洳僮鞯姆欠ㄐ远唤棺x取該應(yīng)用的文件。
示例的,在應(yīng)用的運(yùn)行過(guò)程中,用戶還可以根據(jù)需要取消應(yīng)用的安全標(biāo)識(shí),此時(shí),可以將該應(yīng)用從安全列表中刪除,同時(shí)在android系統(tǒng)中廣播該取消消息,所述取消消息中攜帶所述應(yīng)用的身份標(biāo)識(shí),所述身份標(biāo)識(shí)可以為所述應(yīng)用的原始簽名。
步驟906、正常運(yùn)行所述應(yīng)用。
示例的,selinux安全策略雖然可以更有效的保護(hù)應(yīng)用的安全,但是過(guò)度的保護(hù)會(huì)影響系統(tǒng)的響應(yīng)速度,對(duì)于一些涉及用戶隱私不多的應(yīng)用,可能沒(méi)有必要進(jìn)行selinux安全策略的保護(hù),因此可以不為這些應(yīng)用設(shè)置安全標(biāo)識(shí),例如,不為這些應(yīng)用設(shè)置虛擬簽名,當(dāng)android系統(tǒng)查詢?cè)搼?yīng)用的簽名信息時(shí),向android系統(tǒng)反饋所述應(yīng)用的原始簽名。
可選的,在應(yīng)用的運(yùn)行過(guò)程中,用戶也可以隨時(shí)選擇為該應(yīng)用設(shè)置安全標(biāo)識(shí)。當(dāng)用戶選擇為該應(yīng)用設(shè)置安全標(biāo)識(shí)時(shí),將該應(yīng)用記錄在安全列表中,并將該設(shè)置消息在android系統(tǒng)中進(jìn)行廣播,所述設(shè)置消息中攜帶所述應(yīng)用的身份 標(biāo)識(shí),android系統(tǒng)在收到該廣播消息之后重新確定該應(yīng)用的簽名信息,并在查詢到真實(shí)簽名時(shí),停止使用selinux安全策略保護(hù)所述應(yīng)用的文件安全。
需要說(shuō)明的是,本發(fā)明實(shí)施例提供的安全配置方法步驟的先后順序可以進(jìn)行適當(dāng)調(diào)整,步驟也可以根據(jù)情況進(jìn)行相應(yīng)增減,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化的方法,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi),因此不再贅述。
本發(fā)明實(shí)施例提供了一種安全配置方法,相較于現(xiàn)有技術(shù),不需要為每個(gè)應(yīng)用設(shè)置對(duì)應(yīng)的安全策略,而是用戶根據(jù)需要為應(yīng)用設(shè)置安全標(biāo)識(shí),在終端運(yùn)行應(yīng)用時(shí),設(shè)置有安全標(biāo)識(shí)的所有應(yīng)用均可采用預(yù)設(shè)selinux安全策略保護(hù)其安全,因此簡(jiǎn)化了安全策略配置的程序,同時(shí)使得用戶能夠個(gè)性化選擇需要安全策略保護(hù)的應(yīng)用,提高了用戶體驗(yàn)。
本發(fā)明實(shí)施例提供一種安全控制裝置100,如圖10所示,包括:
處理單元1001,用于確定應(yīng)用是否設(shè)置有安全標(biāo)識(shí);當(dāng)所述應(yīng)用設(shè)置有所述安全標(biāo)識(shí)時(shí),采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的安全。
這樣一來(lái),用戶根據(jù)需要為應(yīng)用設(shè)置安全標(biāo)識(shí),在終端運(yùn)行應(yīng)用時(shí),設(shè)置有安全標(biāo)識(shí)的所有應(yīng)用均可采用本地預(yù)設(shè)selinux安全策略保護(hù)其安全,使得用戶能夠個(gè)性化選擇需要安全策略保護(hù)的應(yīng)用,提高了用戶體驗(yàn)。
進(jìn)一步的,如圖11所示,所述裝置100還包括:
第一接收單元1002,用于接收簽名信息,所述簽名信息包括所述應(yīng)用的真實(shí)簽名或虛擬簽名;
所述處理單元1001具體用于:若所述簽名信息包括所述應(yīng)用的真實(shí)簽名,確定所述應(yīng)用未設(shè)置所述安全標(biāo)識(shí);若所述簽名信息包括所述應(yīng)用的虛擬簽名,確定所述應(yīng)用設(shè)置有所述安全標(biāo)識(shí)。
進(jìn)一步的,如圖12所示,所述裝置100還包括:
發(fā)送單元1003,用于發(fā)送查詢請(qǐng)求,所述查詢請(qǐng)求用于查詢所述應(yīng)用的所述簽名信息。
進(jìn)一步的,如圖12所示,所述裝置100還包括:
第二接收單元1004,用于接收廣播消息,所述廣播消息包括所述應(yīng)用的身份標(biāo)識(shí),所述廣播消息用于指示所述應(yīng)用設(shè)置的安全標(biāo)識(shí)已取消;
所述處理單元還用于停止采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的安全。
需要說(shuō)明的是,在實(shí)際應(yīng)用中,所述處理單元1001可由位于安全控制裝置100中的中央處理器(centralprocessingunit,cpu)、微處理器(microprocessorunit,mpu)、數(shù)字信號(hào)處理器(digitalsignalprocessor,dsp)、或現(xiàn)場(chǎng)可編程門陣列(fieldprogrammablegatearray,fpga)等實(shí)現(xiàn)。
本發(fā)明實(shí)施例提供一種安全控制裝置,包括:處理單元,用于確定應(yīng)用是否設(shè)置有安全標(biāo)識(shí);當(dāng)所述應(yīng)用設(shè)置有所述安全標(biāo)識(shí)時(shí),采用本地預(yù)設(shè)的selinux安全策略保護(hù)所述應(yīng)用的安全。相較于現(xiàn)有技術(shù),用戶根據(jù)需要為應(yīng)用設(shè)置安全標(biāo)識(shí),在終端運(yùn)行應(yīng)用時(shí),設(shè)置有安全標(biāo)識(shí)的所有應(yīng)用均可采用本地預(yù)設(shè)selinux安全策略保護(hù)其安全,使得用戶能夠個(gè)性化選擇需要安全策略保護(hù)的應(yīng)用,提高了用戶體驗(yàn)。
本發(fā)明實(shí)施例提供一種安全配置裝置130,如圖13所示,包括:
第一接收單元1301,用于接收用戶輸入的標(biāo)記指示。
配置單元1302,用于根據(jù)所述標(biāo)記指示,為應(yīng)用設(shè)置安全標(biāo)識(shí)。
這樣一來(lái),不需要為每個(gè)應(yīng)用設(shè)置對(duì)應(yīng)的安全策略,而是用戶根據(jù)需要為應(yīng)用設(shè)置安全標(biāo)識(shí),在終端運(yùn)行應(yīng)用時(shí),設(shè)置有安全標(biāo)識(shí)的所有應(yīng)用均可采用預(yù)設(shè)selinux安全策略保護(hù)其安全,因此簡(jiǎn)化了安全策略配置的程序,同時(shí)使得用戶能夠個(gè)性化選擇需要安全策略保護(hù)的應(yīng)用,提高了用戶體驗(yàn)。
可選的,所述配置單元還用于建立安全列表,所述安全列表記錄有所有設(shè)置安全標(biāo)識(shí)的應(yīng)用的身份標(biāo)識(shí)。
進(jìn)一步的,如圖14所示,所述裝置130還包括:
第二接收單元1303,用于接收查詢請(qǐng)求,所述查詢請(qǐng)求包括所述應(yīng)用的身份標(biāo)識(shí)。
查詢單元1304,用于根據(jù)所述身份標(biāo)識(shí),查詢所述安全列表;根據(jù)查詢結(jié) 果,生成所述應(yīng)用的簽名信息;其中,若所述安全列表中存在所述應(yīng)用的身份標(biāo)識(shí),所述應(yīng)用的簽名信息中包括所述應(yīng)用的虛擬簽名;若所述安全列表中不存在所述應(yīng)用的身份標(biāo)識(shí),所述應(yīng)用的簽名信息中包括所述應(yīng)用的真實(shí)簽名。
第一發(fā)送單元1305,用于發(fā)送所述應(yīng)用的簽名信息。
可選的,所述第一接收單元1301還用于接收用戶輸入的取消指示。所述配置單元1302還用于根據(jù)所述取消指示,取消所述應(yīng)用的安全標(biāo)識(shí)。
進(jìn)一步的,如圖15所示,所述裝置130還包括:
第二發(fā)送單元1306,用于發(fā)送廣播消息,所述廣播消息包括所述應(yīng)用的身份標(biāo)識(shí),所述廣播消息用于指示所述應(yīng)用設(shè)置的安全標(biāo)識(shí)已取消。
可選的,所述配置單元1302還用于更新所述安全列表,使得所述安全列表中不存在所述應(yīng)用的身份標(biāo)識(shí)。
需要說(shuō)明的是,第一,在實(shí)際應(yīng)用中,所述配置單元1302和所述查詢單元1304可由位于安全配置裝置130中的中央處理器(centralprocessingunit,cpu)、微處理器(microprocessorunit,mpu)、數(shù)字信號(hào)處理器(digitalsignalprocessor,dsp)、或現(xiàn)場(chǎng)可編程門陣列(fieldprogrammablegatearray,fpga)等實(shí)現(xiàn)。
本發(fā)明實(shí)施例提供了一種安全配置裝置,包括:第一接收單元,用于接收用戶輸入的標(biāo)記指示。配置單元,用于根據(jù)所述標(biāo)記指示,為應(yīng)用設(shè)置安全標(biāo)識(shí)。相較于現(xiàn)有技術(shù),用戶根據(jù)需要為應(yīng)用設(shè)置安全標(biāo)識(shí),在終端運(yùn)行應(yīng)用時(shí),設(shè)置有安全標(biāo)識(shí)的所有應(yīng)用均可采用預(yù)設(shè)selinux安全策略保護(hù)其安全,使得用戶能夠個(gè)性化選擇需要安全策略保護(hù)的應(yīng)用,提高了用戶體驗(yàn)。
所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡(jiǎn)潔,上述描述的終端和單元的具體工作過(guò)程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過(guò)程,在此不再贅述。
以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。