移动安全 - Android操作系统

正如我们许多人所知,Google开发的软件适用于具有智能手机和平板电脑处理功能的移动设备.它的内核基于Linux.其安装的应用程序在沙箱中运行.然而,许多制作人已经发布了针对此类操作系统的防病毒软件,如Kasperky,MCAfee和AVG Technologies.即使防病毒应用程序在沙箱下运行,它也有扫描环境的限制.

Android OS的一些功能如下 :

  • 为移动设备优化的Dalvik虚拟机

  • 结构化数据的SQLite数据库

  • 基于WebKit的集成浏览器引擎

  • 支持不同的媒体格式,如音频,图像,视频

  • 丰富的开发环境,如模拟器(Bluestack),调试工具

Android操作系统架构

下图显示了Android操作系统的整体架构及减号;

Android OS Architecture

  • 第一层是应用程序,包括SMS,日历和其他第三方应用程序等应用程序.

  • 第二层是应用程序框架,中的哪个clude :

    • 查看系统,供开发人员创建方框,线条,网格等.

    • 内容提供商允许应用程序访问和使用来自第三方应用程序的数据.

    • 活动管理器控制应用程序的生命周期.

    • 资源管理器为应用程序分配资源.

    • 通知管理器有助于显示应用程序的通知.

  • 第三层是图书馆,这是最重要的部分.例如,它利用应用程序的功能将日期存储在数据库中.使用此功能的是SQLite.

  • 第四层是Linux内核.它包含硬件组件的所有驱动程序,例如相机,无线,存储等.

Android设备管理API

Android 2.2中引入的设备管理API在系统级别提供设备管理功能.这些API允许开发人员创建在企业设置中有用的安全感知应用程序,其中IT专业人员需要对员工设备进行丰富的控制.

设备管理应用程序是使用设备管理API编写的.当用户在他或她的设备上安装这些应用程序时,这些设备管理应用程序会强制执行所需的策略.内置应用程序可以利用新的API来改进交换支持.

以下是可能使用Device Administration API : 的应用程序类型的一些示例;

  • 电子邮件客户端

  • 远程擦除的安全应用程序

  • 设备管理服务和应用程序

本教程中使用的示例基于设备管理API示例,该示例包含在SDK示例中(可通过Android SDK获得)经理)并且位于您的系统上

< sdk_root>/ApiDemos/app/src/main/java/com/example/android/apis/app/DeviceAdminSample.java .

示例应用程序

此示例应用程序提供了设备管理功能的演示.它为用户提供了一个用户界面,允许他们启用设备管理应用程序.

示例应用程序

一旦用户启用了应用程序,他们就可以使用用户界面中的按钮执行以下操作;

  • 设置密码质量.

  • 指定用户密码的要求,例如最小长度,必须包含的最小数字字符数,等等.

  • 设置密码.如果密码不符合指定的策略,系统将返回错误.

  • 设置擦除设备之前可能发生的密码尝试失败次数(恢复出厂设置.)

  • 设置密码过期的时间.

  • 设置密码历史记录长度(长度是指历史记录中存储的旧密码数).这可以防止用户重复使用之前使用过的最后一个密码.

  • 如果设备支持,则指定存储区域应加密.

  • 设置设备锁定前可以经过的最长非活动时间.

  • 制作设备立即锁定.

  • 擦除设备数据(即恢复出厂设置).

  • 禁用相机.