Android 设备上的安全性

本文介绍了Android平台上Adobe AIR应用程序的安全性模型,包括Android权限、应用程序签名及用户ID三个方面。AIR应用需声明特定权限来访问受保护功能,并通过签名确保来源可靠。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在 Android 上,像在所有计算设备上一样,AIR 遵循本机安全性模型。同时,AIR 保持自己的安全性规则,旨在使开发人员轻松编写安全的、与 Internet 连接的应用程序。

 

因为 Android 上的 AIR 应用程序使用 Android 软件包格式,安装属于 Android 安全性模型。不使用 AIR 应用程序安装程序。

 

Android 安全性模型有三个主要方面:

1. 权限
2. 应用程序签名
3. 应用程序用户 ID

 

Android 权限
Android 的许多功能由操作系统权限机制保护。为了使用某种保护的功能,AIR 应用程序描述符必须声明应用程序要求必要的权限。用户尝试安装应用程序时,Android 操作系统会在继续安装之前对用户显示所有请求的权限。

大多数 AIR 应用程序需要在应用程序描述符中指定 Android 权限。默认情况下,不包括任何权限。通过 AIR 运行时公开的受保护的 Android 功能需要下列权限:

ACCESS_COARSE_LOCATION 允许应用程序通过 Geolocation 类访问 WIFI 和移动电话网络位置数据。
ACCESS_FINE_LOCATION 允许应用程序通过 Geolocation 类访问 GPS 数据。
ACCESS_NETWORK_STATE and ACCESS_WIFI_STATE 允许应用程序通过 NetworkInfo 类访问网络信息。
CAMERA 允许应用程序访问照相机。
INTERNET 允许应用程序提出网络请求。也允许远程调试。
READ_PHONE_STATE 允许 AIR 运行时在有来电时静音。
RECORD_AUDIO 允许应用程序访问麦克风。
WAKE_LOCK 和 DISABLE_KEYGUARD 允许应用程序使用 SystemIdleMode 类设置防止设备转到休眠状态。
WRITE_EXTERNAL_STORAGE 允许应用程序写入设备上的外部存储卡。

 

应用程序签名
为 Android 平台创建的所有应用程序包都必须进行签名。由于 Android 上的 AIR 应用程序都以本机 Android APK 格式打包,因此根据 Android 约定而非 AIR 约定对其进行签名。尽管 Android 和 AIR 使用代码签名的方式相似,但存在显著区别:

在 Android 上,签名将验证开发人员是否持有私钥,但不用于验证开发人员的身份。
对于提交给 Android 市场的应用程序,证书必须至少在 25 年内有效。
Android 不支持将包签名迁移到其他证书。如果更新通过其他证书进行签名,则用户必须卸载原始应用程序后才能安装更新的应用程序。
使用同一证书签名的两个应用程序可以指定一个共享 ID,以允许它们相互访问缓存和数据文件。(AIR 没有提供此类共享。)

 

应用程序用户 ID
Android 使用 Linux 内核。为每个安装的应用程序分配了 Linux 类型的用户 ID,该用户 ID 确定其进行文件访问等操作的权限。通过文件系统权限提供保护,防止对应用程序、应用程序存储和临时目录中的文件进行非授权访问。当 SD 卡作为大容量存储设备安装在计算机上时,写入外部存储(即 SD 卡)中的文件可由其他应用程序或用户读取、修改和删除。

通过 Internet 请求接收的 Cookie 不在 AIR 应用程序之间共享。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值