電子產(chǎn)業(yè)一站式賦能平臺(tái)

PCB聯(lián)盟網(wǎng)

搜索
查看: 539|回復(fù): 0
收起左側(cè)

【HarmonyOS】安全指南

[復(fù)制鏈接]

2607

主題

2607

帖子

7472

積分

高級(jí)會(huì)員

Rank: 5Rank: 5

積分
7472
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2020-9-16 17:56:50 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
【HarmonyOS】安全指南,   
安全概述

HarmonyOS操作系統(tǒng)是一個(gè)開放的系統(tǒng),開發(fā)者可以通過HarmonyOS開發(fā)靈活的服務(wù)和應(yīng)用,為開發(fā)者和使用者帶來便利和價(jià)值。為了達(dá)到這一目的,HarmonyOS提供了一個(gè)可以有效保護(hù)應(yīng)用和用戶數(shù)據(jù)的執(zhí)行環(huán)境。 在這個(gè)執(zhí)行環(huán)境中,芯片的安全能力、系統(tǒng)的安全能力、以及上層的安全服務(wù)一起協(xié)作,從硬件安全、系統(tǒng)安全、數(shù)據(jù)安全、設(shè)備互聯(lián)安全、應(yīng)用安全、安全更新多個(gè)維度提供安全保障。 圖1 安全保障示意圖


硬件安全


安全機(jī)制

  • 啟動(dòng)可信根 HarmonyOS設(shè)備采用PKI(Public Key Infrastructure)體系保護(hù)軟件完整性,確保設(shè)備運(yùn)行來源合法、軟件未被篡改。 在設(shè)備啟動(dòng)流程中,逐級(jí)進(jìn)行軟件簽名校驗(yàn)形成安全啟動(dòng)鏈,任何一個(gè)環(huán)節(jié)的簽名校驗(yàn)不通過即終止設(shè)備啟動(dòng);安全啟動(dòng)鏈中最初執(zhí)行簽名校驗(yàn)的軟硬件實(shí)體,需確保自身的合法、未被篡改。該實(shí)體即為設(shè)備的啟動(dòng)可信根。啟動(dòng)可信根可為固化在ROM中的一段代碼,這段代碼在芯片制造環(huán)節(jié)固化到芯片中,芯片制造完成后軟件不可更改,在設(shè)備上電初始化的過程中,最先執(zhí)行這段ROM中的代碼,并由這段ROm代碼執(zhí)行后續(xù)的軟件簽名校驗(yàn)。 ROM中的代碼在執(zhí)行簽名校驗(yàn)時(shí),需確保用于校驗(yàn)的PKI公鑰的合法性,HarmonyOS設(shè)備可采用efuse/OTP等存儲(chǔ)介質(zhì)來存儲(chǔ)公鑰(如公鑰哈希值),來保護(hù)公鑰自身的合法性。公鑰一般在設(shè)備制造環(huán)節(jié),燒錄到設(shè)備的eFuse/OTP中。  
  • 硬件隔離可信環(huán)境 硬件隔離的可信環(huán)境,遵循了可信計(jì)算系統(tǒng)的設(shè)計(jì)理念?尚怒h(huán)境內(nèi)外形成了兩個(gè)世界:可信世界與不可信世界,兩者之間存在清晰而明確的隔離邊界;HarmonyOS設(shè)備在可信環(huán)境中實(shí)現(xiàn)了核心敏感數(shù)據(jù)的保護(hù)機(jī)制,可確保即使不可信世界的操作系統(tǒng)存在漏洞且被利用,也依然能確?尚怒h(huán)境中敏感數(shù)據(jù)的安全。 HarmonyOS設(shè)備的可信環(huán)境,基于硬件的安全隔離機(jī)制構(gòu)建,在不同的HarmonyOS設(shè)備上芯片隔離機(jī)制略有差異,較為通用的方法是采用ARM的TrustZone技術(shù)。在部分Risc-V芯片平臺(tái)上,也可能采用獨(dú)立安全核的形式來構(gòu)建可信環(huán)境。 可信環(huán)境中,運(yùn)行特定的、精簡的操作系統(tǒng)iTrustee lite,用于管理可信環(huán)境的資源和任務(wù)調(diào)度,給HarmonyOS設(shè)備提供安全服務(wù)。密鑰管理及數(shù)據(jù)安全,是可信環(huán)境中最為常見的安全服務(wù),設(shè)備在eFuse/OTP中存有硬件唯一根密鑰,可信環(huán)境可基于該密鑰結(jié)合業(yè)務(wù)上下文衍生出多種密鑰,給應(yīng)用提供密鑰管理和數(shù)據(jù)加解密相關(guān)的服務(wù);設(shè)備核心密鑰生命周期不離開可信環(huán)境?尚怒h(huán)境同樣可提供身份認(rèn)證、系統(tǒng)狀態(tài)監(jiān)控、數(shù)據(jù)安全存儲(chǔ)等安全服務(wù),提高設(shè)備安全性。  
  • 硬件密鑰引擎 密碼學(xué)是信息安全的基礎(chǔ)。數(shù)據(jù)加解密對計(jì)算機(jī)設(shè)備的核心訴求是:高效、安全。硬件加解密技術(shù)利用計(jì)算機(jī)硬件輔助軟件,甚至直接取代軟件,來處理數(shù)據(jù)的加解密。相比由軟件實(shí)現(xiàn)的加解密計(jì)算,硬件實(shí)現(xiàn)的加解密計(jì)算更高效、更安全。 由硬件來實(shí)現(xiàn)加解密處理,意味著部分專用的硬件資源會(huì)用于處理加解密計(jì)算任務(wù),當(dāng)加解密引擎工作的時(shí)候CPU可以并發(fā)地繼續(xù)執(zhí)行其他計(jì)算任務(wù),因此硬件加解密引擎可以帶來極大的性能提升,同時(shí)降低CPU負(fù)載。此外,硬件密鑰引擎可以帶來更高的安全性,設(shè)計(jì)良好的硬件密鑰引擎,哪怕軟件被攻破也依然可保護(hù)密鑰不泄露,甚至可對抗電磁、輻射等物理側(cè)信道攻擊。 HarmonyOS設(shè)備支持硬件密鑰引擎,支撐HarmonyOS系統(tǒng)進(jìn)行數(shù)據(jù)加解密、證書驗(yàn)簽、哈希計(jì)算等計(jì)算任務(wù),可支持AES/RSA等主流的密碼學(xué)算法。
      



推薦做法

  • 啟動(dòng)可信根可由一段固化在芯片中的代碼和設(shè)備根密鑰組成,前者一般在芯片制造階段寫入,設(shè)備生命周期內(nèi)不可更改,負(fù)責(zé)在啟動(dòng)階段校驗(yàn)設(shè)備軟件證書;后者則是用于設(shè)備證書簽名的私鑰相對應(yīng)的公鑰,證書簽名私鑰不出PKI簽名服務(wù)器,而公鑰則需寫入設(shè)備。為防止攻擊者篡改公鑰從而達(dá)到繞過簽名認(rèn)證的目的,寫入HarmonyOS設(shè)備的公鑰須確保不可篡改,可將公鑰信息寫入如熔絲等介質(zhì);考慮到熔絲空間有限,可僅存儲(chǔ)公鑰的哈希值,并由啟動(dòng)代碼校驗(yàn)公鑰的合法性。
  • 可信執(zhí)行環(huán)境較為通用的做法是基于ARM TrustZone技術(shù)構(gòu)建,也可根據(jù)設(shè)備的實(shí)際形態(tài)選擇其他隔離機(jī)制,如TrustZone-M、獨(dú)立安全核等;可信執(zhí)行環(huán)境中須部署TEE OS,用于管理可信執(zhí)行環(huán)境的資源及任務(wù)調(diào)度。HarmonyOS系統(tǒng)提供iTrustee作為TEE OS的解決方案,開發(fā)者及設(shè)備商可基于iTrustee開發(fā)并部署安全業(yè)務(wù)。 并非所有HarmonyOS設(shè)備都強(qiáng)制要求支持可信執(zhí)行環(huán)境,部分運(yùn)行低敏感業(yè)務(wù)的瘦資源設(shè)備可不做強(qiáng)制要求;可根據(jù)實(shí)際業(yè)務(wù)場景選擇是否支持可信執(zhí)行環(huán)境,以及實(shí)現(xiàn)怎樣的可信執(zhí)行環(huán)境。  
  • 硬件密鑰引擎須提供真隨機(jī)數(shù)、公鑰、對稱密鑰、哈希等密鑰算法能力,通過在HarmonyOS系統(tǒng)中部署相應(yīng)的驅(qū)動(dòng)程序,給應(yīng)用提供統(tǒng)一的密鑰管理及密鑰算法服務(wù)。
      



系統(tǒng)安全


安全機(jī)制 對于128KB~128MB內(nèi)存的設(shè)備,推薦使用HarmonyOS輕內(nèi)核組件,在該內(nèi)核下:

  • 進(jìn)程隔離 進(jìn)程隔離是為了防止A進(jìn)程讀寫B(tài)進(jìn)程內(nèi)存數(shù)據(jù)的情況發(fā)生,進(jìn)程的隔離技術(shù),一般都采用虛擬地址空間映射方式,通過MMU配置,進(jìn)程A的虛擬地址和進(jìn)程B的虛擬地址映射各自不同的實(shí)際的物理地址段,這樣A進(jìn)程通過訪問虛擬地址訪問的實(shí)際內(nèi)存數(shù)據(jù)在非共享內(nèi)存的情況下,只屬于A進(jìn)程,B進(jìn)程無法直接訪問。 HarmonyOS由于資源有限,對于內(nèi)核態(tài)和用戶態(tài)的進(jìn)程采用不同的方式:所有的內(nèi)核態(tài)進(jìn)程共享同一塊VMM空間,即所有的內(nèi)核態(tài)進(jìn)程之間無隔離,系統(tǒng)啟動(dòng)時(shí)內(nèi)核態(tài)創(chuàng)建兩個(gè)基本進(jìn)程KProcess和KIdle,KProcess進(jìn)程為內(nèi)核態(tài)進(jìn)程的根進(jìn)程,KIdle進(jìn)程為KProcess進(jìn)程的子進(jìn)程;但是對于每一個(gè)用戶態(tài)進(jìn)程均擁有自己獨(dú)立的VMM空間,相互之間不可見,實(shí)現(xiàn)進(jìn)程間隔離。  
  • 自主訪問控制 自主訪問控制DAC(Discretionary Access Control)的思想是文件權(quán)限由文件擁有者來決定其他角色的訪問權(quán)限。權(quán)限管控粒度分為三類:user(自身), group(組員),other(其他人),即UGO。將任意用戶分類為UGO中三者之一,并采取相應(yīng)的管控策略,即完成了DAC權(quán)限校驗(yàn)流程。 DAC機(jī)制依賴于進(jìn)程的uid、gid等屬性,需要以此作為文件創(chuàng)建以及文件訪問過程中的特征id。文件創(chuàng)建時(shí),創(chuàng)建者將自身uid寫入文件,文件訪問時(shí),又以此作為文件歸屬的分類依據(jù)。 每一個(gè)應(yīng)用,對應(yīng)一個(gè)uid。應(yīng)用在創(chuàng)建文件時(shí),將自身uid信息加入被創(chuàng)建文件的元數(shù)據(jù)(metadata)中,并設(shè)置UGO三個(gè)組的權(quán)限。在文件訪問過程中,將以訪問者uid作為訪問校驗(yàn)主體、以文件元數(shù)據(jù)中的uid權(quán)限信息作為客體,進(jìn)行權(quán)限校驗(yàn)。 下圖描述了DAC在文件訪問時(shí)的鑒權(quán)過程,首先匹配進(jìn)程uid和文件uid屬性,其次匹配進(jìn)程gid和文件gid屬性,最后都匹配失敗的情況,判斷文件other屬性是否支持進(jìn)程的讀、寫、執(zhí)行操作。同時(shí)支持忽略DAC檢測機(jī)制(讀、寫、執(zhí)行)作為一組系統(tǒng)特權(quán)(Capability),支持高權(quán)限(如系統(tǒng)服務(wù))對低權(quán)限(三方APP)的文件管理。 圖2 DAC流程圖
      
  • Capability機(jī)制 Capability機(jī)制實(shí)際上是對root權(quán)限的具體細(xì)分。在多用戶計(jì)算機(jī)系統(tǒng)中,一般會(huì)有一個(gè)特殊的角色擁有系統(tǒng)的所有權(quán)限,這個(gè)角色一般是系統(tǒng)管理員(root)。對于HarmonyOS這種需要支持三方應(yīng)用生態(tài)的內(nèi)核,需要將系統(tǒng)中的特權(quán)訪問進(jìn)行管控。系統(tǒng)需要對用戶層訪問內(nèi)核的特權(quán)級(jí)系統(tǒng)調(diào)用進(jìn)行限制。僅允許部分高權(quán)限應(yīng)用進(jìn)行特權(quán)操作。具體實(shí)現(xiàn)方式是內(nèi)核spawn第一個(gè)用戶程序INIT,其包含全部的特權(quán)能力,此后,INIT拉起其他應(yīng)用框架服務(wù),拉起過程中,對各應(yīng)用框架進(jìn)行相應(yīng)的降權(quán)操作,為各應(yīng)用保留必須的特權(quán)能力。 當(dāng)應(yīng)用去調(diào)用特權(quán)接口時(shí),內(nèi)核態(tài)就會(huì)通過進(jìn)程ID查看當(dāng)前訪問者是否有權(quán)限訪問目標(biāo)接口。  
  • 安全啟動(dòng) 安全啟動(dòng)是整個(gè)系統(tǒng)安全的基礎(chǔ),通過采用數(shù)字簽名和完整性校驗(yàn)機(jī)制,從芯片內(nèi)部固化的可信啟動(dòng)根開始,逐級(jí)校驗(yàn)每一層軟件的完整性和合法性,確保最終啟動(dòng)的操作系統(tǒng)軟件是廠家提供的正確合法的軟件,防止攻擊者對系統(tǒng)軟件做惡意的篡改和植入,為整個(gè)系統(tǒng)提供初始安全的基礎(chǔ)運(yùn)行環(huán)境。 在芯片上電后,由于片上ROM代碼本身不可更改,因此無需校驗(yàn);片上ROM基于eFuse中的非對稱算法公鑰hash對bootloader進(jìn)行校驗(yàn)。這些過程都基于硬件信任根來進(jìn)行,是完全可信的。經(jīng)過此過程校驗(yàn)通過的bootloader模塊可以作為后續(xù)的信任基礎(chǔ),此過程就是啟動(dòng)信任鏈的構(gòu)造過程。Bootloader通常首先對執(zhí)行環(huán)境進(jìn)行一定的初始化,主要是初始化DDR以及flash讀寫,為進(jìn)一步加載后續(xù)模塊以及執(zhí)行更為復(fù)雜的邏輯進(jìn)行準(zhǔn)備。Bootloader完成初始化動(dòng)作后,首先完成x509證書的完整性校驗(yàn),然后利用x509證書的公鑰對需要校驗(yàn)的鏡像包(kernel.bin、teeOS.bin、rootfs.bin)進(jìn)行校驗(yàn)。
      



推薦做法

  • 自主訪問控制和Capability機(jī)制是控制資源被誰可以訪問的機(jī)制,建議所有權(quán)限設(shè)置都采用最小權(quán)限原則。
  • 安全啟動(dòng)必須要開啟,信任根必須是基于芯片的不可更改的形式存在,并且在有安全升級(jí)的情況下,必須考慮安全升級(jí)后對于安全啟動(dòng)的影響,也就是安全升級(jí)后必須要更新對應(yīng)鏡像文件的簽名信息或者h(yuǎn)ash值。
      



數(shù)據(jù)安全


安全機(jī)制 HUKS(Huawei Universal Keystore Service),密鑰管理和存儲(chǔ)服務(wù),提供了證書管理、密鑰管理、安全存儲(chǔ)和密鑰認(rèn)證服務(wù),當(dāng)前在HarmonyOS上主要是提供密鑰管理和安全存儲(chǔ)服務(wù),同時(shí)支撐hichain(設(shè)備身份認(rèn)證平臺(tái))的基礎(chǔ)設(shè)備認(rèn)證能力。如下是HUKS的功能結(jié)構(gòu)圖: 圖3 HUKS功能結(jié)構(gòu)圖

支持算法包括: 認(rèn)證加密:AES-128/192/256-GCM 簽名驗(yàn)簽:ED25519 密鑰協(xié)商:X25519 消息認(rèn)證:HMAC-SHA256/512 數(shù)據(jù)摘要:SHA256/512 HUKS在使用中有如下約束:

  • 密鑰安全存儲(chǔ):密鑰要求存儲(chǔ)于安全存儲(chǔ)區(qū)域,數(shù)據(jù)不可以修改,恢復(fù)出廠設(shè)置時(shí)出廠預(yù)置的密鑰不能被刪除。
  • 密鑰訪問安全:HarmonyOS通過將不同應(yīng)用數(shù)據(jù)保存在不同的位置,來實(shí)現(xiàn)應(yīng)用間數(shù)據(jù)的隔離。通過參數(shù)結(jié)構(gòu)體中包含UID和進(jìn)程ID,來實(shí)現(xiàn)不同應(yīng)用間的數(shù)據(jù)隔離。
  • 不支持并發(fā)訪問:HUKS本身不考慮多個(gè)應(yīng)用同時(shí)調(diào)用的情況,因?yàn)镠UKS只是一個(gè)lib庫,也不考慮資源的互斥。如果有多個(gè)應(yīng)用都會(huì)用到HUKS服務(wù),那么應(yīng)該由每個(gè)應(yīng)用各自鏈接一份HUKS庫,并由業(yè)務(wù)傳入持久化數(shù)據(jù)存儲(chǔ)的路徑,以實(shí)現(xiàn)應(yīng)用間的數(shù)據(jù)存儲(chǔ)分開。數(shù)據(jù)存儲(chǔ)在各應(yīng)用各自存儲(chǔ)目錄下。
      



推薦做法 對于設(shè)備認(rèn)證功能,建議使用HiChain來對接HUKS,HUKS可以向HiChain等應(yīng)用提供密鑰的產(chǎn)生、導(dǎo)入、導(dǎo)出、加密/解密、存儲(chǔ)、銷毀,證書的導(dǎo)入和查詢,秘密信息的存儲(chǔ)等能力。


設(shè)備互聯(lián)安全

為了實(shí)現(xiàn)用戶數(shù)據(jù)在設(shè)備互聯(lián)場景下在各個(gè)設(shè)備之間的安全流轉(zhuǎn),需要保證設(shè)備之間相互正確可信,即設(shè)備和設(shè)備之間建立信任關(guān)系,并能夠在驗(yàn)證信任關(guān)系后,搭建安全的連接通道,實(shí)現(xiàn)用戶數(shù)據(jù)的安全傳輸。設(shè)備之間的信任關(guān)系在本文檔中涉及IoT主控設(shè)備和IoT設(shè)備之間建立的可信關(guān)系。設(shè)備間可信關(guān)系建立的流程如下圖所示: 圖4 設(shè)備間建立可信關(guān)系流程圖





  • IoT設(shè)備互聯(lián)安全 設(shè)備互聯(lián)支持基于HarmonyOS的IoT設(shè)備(如AI音箱、智能家居、智能穿戴等設(shè)備)與IoT主控設(shè)備間建立點(diǎn)對點(diǎn)的信任關(guān)系,并在具備信任關(guān)系的設(shè)備間,搭建安全的連接通道,實(shí)現(xiàn)用戶數(shù)據(jù)端到端加密傳輸。
      


  • IoT主控設(shè)備的IoT業(yè)務(wù)身份標(biāo)識(shí) IoT主控設(shè)備為不同的IoT設(shè)備管理業(yè)務(wù)生成不同的身份標(biāo)識(shí),形成不同IoT管理業(yè)務(wù)間的隔離,該標(biāo)識(shí)用于IoT主控設(shè)備與IoT設(shè)備之間的認(rèn)證以及通信。IoT業(yè)務(wù)身份標(biāo)識(shí)為橢圓曲線公私鑰對(Ed25519公私鑰對)。
      


  • IoT設(shè)備身份標(biāo)識(shí) IoT設(shè)備會(huì)生成各自的設(shè)備身份標(biāo)識(shí),用來與IoT主控設(shè)備通信。該身份標(biāo)識(shí)同樣為橢圓曲線公私鑰對(Ed25519公私鑰對);IoT設(shè)備私鑰不出IoT設(shè)備,設(shè)備每次恢復(fù)出廠設(shè)置,會(huì)重置這個(gè)公私鑰對。 上述身份標(biāo)識(shí)可用于IoT主控設(shè)備與IoT設(shè)備間的安全通信:當(dāng)IoT主控設(shè)備與IoT設(shè)備通過信任綁定流程交換業(yè)務(wù)身份標(biāo)識(shí)或設(shè)備標(biāo)識(shí)后,可以進(jìn)行密鑰協(xié)商并建立安全通信通道。
      


  • 設(shè)備間點(diǎn)對點(diǎn)的信任綁定 IoT主控設(shè)備和IoT設(shè)備建立點(diǎn)對點(diǎn)信任關(guān)系的過程,實(shí)際上是相互交換IoT設(shè)備的身份標(biāo)識(shí)的過程。 在點(diǎn)對點(diǎn)建立信任關(guān)系的過程中,用戶需要在IoT主控設(shè)備上,輸入IoT設(shè)備上提供的PIN碼:對于有屏幕的設(shè)備,該P(yáng)IN碼動(dòng)態(tài)生成;對于沒有屏幕的設(shè)備,該P(yáng)IN碼由設(shè)備生產(chǎn)廠家預(yù)置;PIN碼的展示形式,可以是一個(gè)用戶可讀的數(shù)字,也可以是一個(gè)二維碼。隨后,IoT主控設(shè)備和IoT設(shè)備間使用PAKE協(xié)議完成認(rèn)證和會(huì)話密鑰協(xié)商過程,并在此基礎(chǔ)上,通過協(xié)商出的會(huì)話密鑰加密傳輸通道用于交換雙方設(shè)備的身份標(biāo)識(shí)公鑰。
      


  • IoT主控設(shè)備與IoT設(shè)備間的通信安全 當(dāng)建立過信任關(guān)系的IoT主控設(shè)備與IoT設(shè)備間進(jìn)行通信時(shí),雙方在完成上述信任關(guān)系綁定后,基于本地存儲(chǔ)的對端身份公鑰相互進(jìn)行認(rèn)證;在每次通信時(shí)基于STS協(xié)議完成雙向身份認(rèn)證以及會(huì)話密鑰協(xié)商,之后設(shè)備使用此會(huì)話密鑰加密雙方設(shè)備間的傳輸通道。
      

應(yīng)用安全


安全機(jī)制

  • 應(yīng)用簽名管控 HarmonyOS應(yīng)用的安裝需要首先對包的完整性進(jìn)行校驗(yàn),具體策略是在開發(fā)階段完成開發(fā)和調(diào)試后對安裝包進(jìn)行簽名,這個(gè)簽名需要使用指定的私鑰,這個(gè)私鑰就是跟驗(yàn)簽用的公鑰是一對的,一般的做法是OEM廠商生成一對公私鑰,然后將公鑰信息預(yù)置到設(shè)備中,而私鑰就放在一個(gè)不聯(lián)網(wǎng)的本地服務(wù)器上,這樣可以確保私鑰被泄露的風(fēng)險(xiǎn)盡量小,而應(yīng)用在完成開發(fā)后就可以通過外置設(shè)備(例如USB)上傳安裝包到存放私鑰的服務(wù)器上計(jì)算簽名并下載簽名結(jié)果到外置設(shè)備上。而安裝應(yīng)用時(shí)首先計(jì)算包的Hash值,一般采用SHA256算法,然后使用hash值和簽名信息以及預(yù)置公鑰進(jìn)行驗(yàn)簽,只有驗(yàn)簽通過的應(yīng)用才能安裝。 除了要證明應(yīng)用來自云端認(rèn)證過的,還需要證明來源,即這個(gè)應(yīng)用來自合法開發(fā)者開發(fā)的,具體做法是,開發(fā)者向云端申請開發(fā)證書,開發(fā)完成后,用開發(fā)證書進(jìn)行自簽名,設(shè)備端存放這個(gè)證書的上一級(jí)證書,所以安裝過程中,對自簽名信息做校驗(yàn),確保開發(fā)者的合法性。  
  • 應(yīng)用權(quán)限控制 由于HarmonyOS系統(tǒng)允許安裝三方應(yīng)用,所以需要對三方應(yīng)用的敏感權(quán)限調(diào)用進(jìn)行管控,具體實(shí)現(xiàn)是應(yīng)用在開發(fā)階段就需要在profile.json中指明此應(yīng)用在運(yùn)行過程中可能會(huì)調(diào)用哪些敏感權(quán)限,這些權(quán)限包括靜態(tài)權(quán)限和動(dòng)態(tài)權(quán)限,靜態(tài)權(quán)限表示只需要在安裝階段注冊就可以,而動(dòng)態(tài)權(quán)限一般表示獲取用戶的敏感信息,所以需要在運(yùn)行時(shí)讓用戶確認(rèn)才可以調(diào)用,授權(quán)方式包括系統(tǒng)設(shè)置應(yīng)用手動(dòng)授權(quán)等。除了運(yùn)行時(shí)對應(yīng)用調(diào)用敏感權(quán)限進(jìn)行管控外,還需要利用應(yīng)用簽名管控手段確保應(yīng)用安裝包已經(jīng)被設(shè)備廠商進(jìn)行了確認(rèn)。 表1 HarmonyOS系統(tǒng)權(quán)限列表 HarmonyOS系統(tǒng)權(quán)限 授權(quán)方式 權(quán)限說明
    ohos.permission.LISTEN_BUNDLE_CHANGE system_grant(靜態(tài)權(quán)限) 允許該應(yīng)用獲取應(yīng)用變化消息。
    ohos.permission.GET_BUNDLE_INFO system_grant(靜態(tài)權(quán)限) 允許該應(yīng)用獲取應(yīng)用信息。
    ohos.permission.INSTALL_BUNDLE system_grant(靜態(tài)權(quán)限) 允許該應(yīng)用安裝應(yīng)用。
    ohos.permission.CAMERA user_grant(動(dòng)態(tài)權(quán)限) 此應(yīng)用可隨時(shí)使用相機(jī)拍攝照片和錄制視頻。
    ohos.permission.MODIFY_audio_SETTINGS system_grant(靜態(tài)權(quán)限) 允許該應(yīng)用修改全局音頻設(shè)置,例如音量和用于輸出的揚(yáng)聲器。
    ohos.permission.READ_MEDIA user_grant(動(dòng)態(tài)權(quán)限) 允許該應(yīng)用讀取您的視頻收藏。
    ohos.permission.microPHONE user_grant(動(dòng)態(tài)權(quán)限) 此應(yīng)用可隨時(shí)使用麥克風(fēng)進(jìn)行錄音。
    ohos.permission.WRITE_MEDIA user_grant(動(dòng)態(tài)權(quán)限) 允許該應(yīng)用寫入您的音樂收藏。
    ohos.permission.DISTRIBUTED_DATASYNC user_grant(動(dòng)態(tài)權(quán)限) 管控分布式數(shù)據(jù)傳輸能力。
    ohos.permission.DISTRIBUTED_VIRTUALDEVICE user_grant(動(dòng)態(tài)權(quán)限) 允許應(yīng)用使用分布式虛擬能力


      



推薦做法 開發(fā)者在開發(fā)過程中需明確后續(xù)應(yīng)用在運(yùn)行時(shí)需要運(yùn)行哪些權(quán)限,并在profile.json中進(jìn)行注冊,然后需要對應(yīng)用進(jìn)行簽名,確保設(shè)備在安裝這些應(yīng)用時(shí)能對應(yīng)用的完整性和來源進(jìn)行校驗(yàn)。

發(fā)表回復(fù)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表