android-source - 谷歌为什么要发明特权权限白名单功能?
问题描述
我在https://source.android.com/devices/tech/config/perms-whitelist上阅读了关于 ro.control_privapp_permissions 的文章,我了解它是如何工作的,但我想知道为什么这个功能存在?
文档说:
...设备实施者几乎无法控制哪些签名|特权权限可以授予特权应用程序...
在我看来,他们有足够的控制权。对于他们自己构建的应用程序,他们可以简单地从他们的应用程序清单中添加或删除权限。对于来自 Google 的应用程序(例如 GMS)来说,设备制造商决定他们不想向 Google 授予某些权限似乎是徒劳的,我相信 Google 不会接受这一点。那么有什么意义呢?我想这可以让设备制造商将劣质的预构建应用程序包含到他们的系统映像中,并只给他们一些权限并希望他们正常运行?
解决方案
考虑以下示例:
OEM(三星/LG/摩托罗拉等)正在为公共安全部门(警察/消防员/安全部队等)制造一种新设备。
一些公共安全客户拥有自己的基于预加载应用程序的 MDM(移动设备管理)解决方案。该预加载应用程序由第三方作为预构建的 APK 提供,并嵌入到设备的 system/priv-app 目录中。
OEM 无法控制该第三方 MDM 应用程序的质量。
如果应用程序实施不当,它可能会引入安全漏洞并危及整个平台。为第三方应用程序提供完成其工作所需的最低权限将允许限制它并防止权限升级。
推荐阅读
- cocoapods - pod spec lint 错误:无法构建模块“Protobuf”,找不到文件:#import "google/protobuf/Any.pbobjc.h"
- node.js - 创建一个函数以返回从网络服务器获得的值
- c# - 如何删除列表中的相同项目
- postgresql - 如何将数据库中的数据翻译成另一种语言?奥多
- python - 使用字典中的 secrets.choice 时出现 IndexError
- c# - System.InvalidOperationException:'代码应该无法访问'
- php - 在heroku中从/vendor/访问jquery.js时被禁止403
- python - 如何根据sklearn中的预测概率对实例进行排名
- python - 下载后用python删除文件
- javascript - 如何在 vuejs 中修复“ReferenceError:require is not defined”