一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙開發(fā)Ability Kit程序訪問控制:安全控件概述

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-07-03 09:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

安全控件概述

安全控件是系統(tǒng)提供的一組系統(tǒng)實現(xiàn)的ArkUI組件,應(yīng)用集成這類組件就可以實現(xiàn)在用戶點擊后自動授權(quán),而無需彈窗授權(quán)。它們可以作為一種“特殊的按鈕”融入應(yīng)用頁面,實現(xiàn)用戶點擊即許可的設(shè)計思路。

相較于動態(tài)申請權(quán)限的方式,安全控件可基于場景化授權(quán),簡化開發(fā)者和用戶的操作,主要優(yōu)點有:

  1. 用戶可掌握授權(quán)時機,授權(quán)范圍最小化。
  2. 授權(quán)場景可匹配用戶真實意圖。
  3. 減少彈窗打擾。
  4. 開發(fā)者不必向應(yīng)用市場申請權(quán)限,簡化操作。
  5. 開發(fā)前請熟悉鴻蒙開發(fā)指導文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

安全控件堅持僅采集實現(xiàn)業(yè)務(wù)功能所必須的個人數(shù)據(jù),以服務(wù)于用戶的需求,幫助開發(fā)透明、可選、可控的隱私合規(guī)應(yīng)用。

安全控件列表

目前系統(tǒng)提供三類安全控件:

  • [粘貼控件(PasteButton)]
    該控件對應(yīng)剪貼板讀取特權(quán)。應(yīng)用集成粘貼控件后,用戶點擊該控件,應(yīng)用讀取剪貼板數(shù)據(jù)時不會彈窗提示。
    建議使用場景:粘貼控件可以用于任何應(yīng)用需要讀取剪貼板的場景,避免彈窗提示對用戶造成干擾。
  • [保存控件(SaveButton)]
    該控件對應(yīng)媒體庫寫入特權(quán)。應(yīng)用集成保存控件后,用戶點擊該控件,應(yīng)用會獲取10秒內(nèi)單次訪問媒體庫特權(quán)接口的授權(quán)。
    建議使用場景:保存控件可以用于任何應(yīng)用需要保存文件到媒體庫的場景(保存圖片、保存視頻等)。與Picker需要拉起系統(tǒng)應(yīng)用再由用戶選擇具體路徑保存的方式不同,保存控件將直接保存到指定媒體庫路徑,操作更快捷。
  • [位置控件(LocationButton)]
    該控件對應(yīng)精準定位特權(quán)。應(yīng)用集成位置控件后,用戶點擊該控件,無論應(yīng)用是否申請過或者被授予精準定位權(quán)限,都會在本次前臺期間獲得精準定位的授權(quán),可以調(diào)用位置服務(wù)獲取精準定位。
    建議使用場景:應(yīng)用不是強位置關(guān)聯(lián)應(yīng)用(如導航、運動健康等),僅在部分前臺場景需要使用位置信息(如定位城市、打卡、分享位置等)。如果需要長時間使用或是在后臺使用位置信息,建議申請位置權(quán)限。

運作機制

整體方案由安全控件UI組件、安全控件管理服務(wù)、安全控件增強組成:

  • UI組件:實現(xiàn)了固定文字圖標的樣式,便于用戶識別,同時提供了相對豐富的定制化能力,便于開發(fā)者定制。
  • 控件管理服務(wù):提供控件注冊管理能力、控件臨時授權(quán)機制、管理授權(quán)生效周期,確保應(yīng)用后臺、鎖屏下無法注冊使用安全控件。
  • 安全增強:實現(xiàn)了地址隨機化、挑戰(zhàn)值檢查、回調(diào)UI框架復核控件信息、調(diào)用者地址檢查、組件防覆蓋、真實點擊事件校驗等機制,防止應(yīng)用開發(fā)者通過混淆、隱藏、篡改、仿冒等方式濫用授權(quán)機制,泄露用戶隱私。

開發(fā)者調(diào)用接口時,運作流程如圖所示。

zh-cn_image_0000001722397992

  1. 應(yīng)用開發(fā)者在ETS文件中集成安全控件,通過JS引擎解析后,在ArkUI框架中生成具體的控件。
  2. 安全控件注冊控件信息到安全控件管理服務(wù),安全控件管理服務(wù)檢查控件信息的合法性。
  3. 用戶點擊事件分發(fā)到安全控件。
  4. 安全控件將點擊事件上報到安全控件管理服務(wù)。
  5. 安全控件管理服務(wù)根據(jù)控件種類對應(yīng)不同權(quán)限,調(diào)用權(quán)限管理服務(wù)進行臨時授權(quán)。
  6. 授權(quán)成功后,安全控件回調(diào)OnClick通知應(yīng)用層授權(quán)成功。
  7. 應(yīng)用調(diào)用相應(yīng)的特權(quán)操作,如獲取地理位置、讀取剪貼板信息、媒體庫中創(chuàng)建文件等。 不同類型的安全控件,對于權(quán)限的使用方式不同、授權(quán)的有效期也不同,詳情請參考開發(fā)指導。
  8. 對應(yīng)的服務(wù)會調(diào)用權(quán)限管理服務(wù)或安全控件管理服務(wù),獲取授權(quán)結(jié)果,返回鑒權(quán)結(jié)果。

約束與限制

安全控件因其自動授權(quán)的特性,為了保障用戶的隱私不被惡意應(yīng)用獲取,針對安全控件作了很多的限制。應(yīng)用開發(fā)者需保證安全控件在應(yīng)用界面上清晰可見、用戶能明確識別,防止因覆蓋、混淆等因素導致授權(quán)失敗。

當因控件樣式不合法導致授權(quán)失敗的情況發(fā)生時,請開發(fā)者檢查設(shè)備錯誤日志,過濾關(guān)鍵字"SecurityComponentCheckFail"可以獲取具體原因。

說明: 請開發(fā)者關(guān)注過濾條件下,所有級別的日志。HarmonyOSOpenHarmony鴻蒙文檔籽料:mau123789是v直接拿

鴻蒙文檔.png

可能會導致授權(quán)失敗的問題(包括但不限于):

  • 字體、圖標尺寸過小。
  • 安全控件整體尺寸過大。
  • 字體、圖標、背景按鈕的顏色透明度過高。
  • 字體或圖標與背景按鈕顏色過于相似。
  • 安全控件超出屏幕、超出窗口等,導致顯示不全。
  • 安全控件被其他組件或窗口遮擋。
  • 安全控件的父組件有類似變形模糊等可能導致安全控件顯示不完整的屬性。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 控件
    +關(guān)注

    關(guān)注

    0

    文章

    156

    瀏覽量

    17291
  • 鴻蒙
    +關(guān)注

    關(guān)注

    59

    文章

    2571

    瀏覽量

    43891
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    鴻蒙開發(fā)接口Ability框架:【@ohos.application.Ability (Ability)】

    Ability模塊提供對Ability生命周期、上下文環(huán)境等調(diào)用管理的能力,包括Ability創(chuàng)建、銷毀、轉(zhuǎn)儲客戶端信息等。
    的頭像 發(fā)表于 04-30 17:42 ?2736次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>接口<b class='flag-5'>Ability</b>框架:【@ohos.application.<b class='flag-5'>Ability</b> (<b class='flag-5'>Ability</b>)】

    鴻蒙開發(fā)接口Ability框架:【 (Context模塊)】

    Context模塊提供了ability或application的上下文的能力,包括允許訪問特定于應(yīng)用程序的資源、請求和驗證權(quán)限等。
    的頭像 發(fā)表于 05-13 16:04 ?1097次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>接口<b class='flag-5'>Ability</b>框架:【 (Context模塊)】

    鴻蒙Ability開發(fā)-Stage模型下Ability的創(chuàng)建和使用

    ); hilog.info(ENTRY_ABILITY_DOMAIN, TAG, \'%{public}s\', \'Ability onBackground\'); } } 本文內(nèi)容是鴻蒙
    發(fā)表于 01-08 15:34

    跟阿斌一起學鴻蒙(2): Ability vs App?

    在進一步實踐之前,需要先弄明白一個概念:Ability。不知道你有沒有注意到,使用鴻蒙開發(fā)工具DevEco Studio創(chuàng)建項目時,我們選擇創(chuàng)建的是一個個Ability。這是為什么呢?
    發(fā)表于 11-30 20:56

    鴻蒙應(yīng)用模型:【Ability Kit】簡介

    Ability Kit程序框架服務(wù))提供了應(yīng)用程序開發(fā)和運行的應(yīng)用模型,是系統(tǒng)為開發(fā)者提供的應(yīng)
    的頭像 發(fā)表于 05-29 14:41 ?1100次閱讀
    <b class='flag-5'>鴻蒙</b>應(yīng)用模型:【<b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>】簡介

    鴻蒙Ability Kit程序框架服務(wù))【Ability內(nèi)頁面間的跳轉(zhuǎn)】

    基于Stage模型下的Ability開發(fā),實現(xiàn)Ability內(nèi)頁面間的跳轉(zhuǎn)和數(shù)據(jù)傳遞。
    的頭像 發(fā)表于 06-03 20:43 ?606次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b>框架服務(wù))【<b class='flag-5'>Ability</b>內(nèi)頁面間的跳轉(zhuǎn)】

    鴻蒙Ability Kit程序框架服務(wù))【Ability與ServiceExtensionAbility通信】

    本示例展示通過[IDL的方式]和?[@ohos.rpc]?等接口實現(xiàn)了Ability與ServiceExtensionAbility之間的通信。
    的頭像 發(fā)表于 06-05 09:28 ?783次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b>框架服務(wù))【<b class='flag-5'>Ability</b>與ServiceExtensionAbility通信】

    鴻蒙開發(fā)Ability Kit程序框架服務(wù):訪問控制概述 程序訪問控制

    默認情況下,應(yīng)用只能訪問有限的系統(tǒng)資源。但某些情況下,應(yīng)用存在擴展功能的訴求,需要訪問額外的系統(tǒng)數(shù)據(jù)(包括用戶個人數(shù)據(jù))和功能,系統(tǒng)也必須以明確的方式對外提供接口來共享其數(shù)據(jù)或功能。
    的頭像 發(fā)表于 07-01 15:53 ?536次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b>框架服務(wù):<b class='flag-5'>訪問</b><b class='flag-5'>控制</b><b class='flag-5'>概述</b> <b class='flag-5'>程序</b><b class='flag-5'>訪問</b><b class='flag-5'>控制</b>

    鴻蒙開發(fā)Ability Kit程序框架服務(wù):應(yīng)用權(quán)限管控概述 程序訪問控制

    系統(tǒng)提供了一種允許應(yīng)用訪問系統(tǒng)資源(如:通訊錄等)和系統(tǒng)能力(如:訪問攝像頭、麥克風等)的通用權(quán)限訪問方式,來保護系統(tǒng)數(shù)據(jù)(包括用戶個人數(shù)據(jù))或功能,避免它們被不當或惡意使用。
    的頭像 發(fā)表于 07-01 10:21 ?1003次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b>框架服務(wù):應(yīng)用權(quán)限管控<b class='flag-5'>概述</b> <b class='flag-5'>程序</b><b class='flag-5'>訪問</b><b class='flag-5'>控制</b>

    鴻蒙開發(fā)Ability Kit程序訪問控制:向用戶申請單次授權(quán)

    受限開放的權(quán)限通常是不允許三方應(yīng)用申請的。當應(yīng)用在申請權(quán)限來訪問必要的資源時,發(fā)現(xiàn)部分權(quán)限的等級比應(yīng)用APL等級高,開發(fā)者可以選擇通過ACL方式來解決等級不匹配的問題,從而使用受限權(quán)限。
    的頭像 發(fā)表于 07-02 17:48 ?816次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b><b class='flag-5'>訪問</b><b class='flag-5'>控制</b>:向用戶申請單次授權(quán)

    鴻蒙開發(fā)Ability Kit程序訪問控制:申請使用受限權(quán)限

    受限開放的權(quán)限通常是不允許三方應(yīng)用申請的。當應(yīng)用在申請權(quán)限來訪問必要的資源時,發(fā)現(xiàn)部分權(quán)限的等級比應(yīng)用APL等級高,開發(fā)者可以選擇通過ACL方式來解決等級不匹配的問題,從而使用受限權(quán)限。
    的頭像 發(fā)表于 07-02 17:34 ?799次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b><b class='flag-5'>訪問</b><b class='flag-5'>控制</b>:申請使用受限權(quán)限

    鴻蒙開發(fā)Ability Kit程序訪問控制:對所有應(yīng)用開放

    在申請目標權(quán)限前,建議開發(fā)者先閱讀[申請應(yīng)用權(quán)限],對權(quán)限的工作流程有基本了解后,再結(jié)合以下權(quán)限字段的具體說明,判斷應(yīng)用能否申請目標權(quán)限,提高開發(fā)效率。
    的頭像 發(fā)表于 07-02 14:32 ?845次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b><b class='flag-5'>訪問</b><b class='flag-5'>控制</b>:對所有應(yīng)用開放

    鴻蒙開發(fā)Ability Kit程序訪問控制:使用粘貼控件

    粘貼控件是一種特殊的系統(tǒng)安全控件,它允許應(yīng)用在用戶的授權(quán)下無提示地讀取剪貼板數(shù)據(jù)。
    的頭像 發(fā)表于 07-03 09:15 ?668次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b><b class='flag-5'>訪問</b><b class='flag-5'>控制</b>:使用粘貼<b class='flag-5'>控件</b>

    鴻蒙開發(fā)Ability Kit程序訪問控制:使用保存控件

    保存控件是一種特殊的安全控件,它允許用戶通過點擊按鈕臨時獲取存儲權(quán)限,而無需通過權(quán)限彈框進行授權(quán)確認。
    的頭像 發(fā)表于 07-03 14:40 ?761次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b><b class='flag-5'>訪問</b><b class='flag-5'>控制</b>:使用保存<b class='flag-5'>控件</b>

    鴻蒙開發(fā)Ability Kit程序訪問控制:使用位置控件

    位置控件使用直觀且易懂的通用標識,讓用戶明確地知道這是一個獲取位置信息的按鈕。這滿足了授權(quán)場景需要匹配用戶真實意圖的需求。只有當用戶主觀愿意,并且明確了解使用場景后點擊位置控件,應(yīng)用才會獲得臨時的授權(quán),獲取位置信息并完成相應(yīng)的服務(wù)功能。
    的頭像 發(fā)表于 07-03 16:32 ?815次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b><b class='flag-5'>訪問</b><b class='flag-5'>控制</b>:使用位置<b class='flag-5'>控件</b>