Android安全机制介绍
Android的安全机制包含下面几个方面:
一、进程沙箱隔离机制
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center">
二、应用程序签名机制
签名的过程:
签名的作用:
三、权限声明机制
<uses-permissionandroid:name="string" />
请求android:name相应的权限。
<permission
xmlns:android="http://schemas.android.com/apk/res/android"
android:name="com.test.android.ACCESS_FRIENDS_LIST"
android:description="@string/permission_description"
android:label="@string/permission_label"
android:protectionLevel="normal" />
<activity
android:permission="com.test.android.ACCESS_FRIENDS_LIST"
四、訪问控制机制
499,系统的伪用户不能登录系统。
• 普通用户,仅仅具备有限的訪问权限,UID 为
500 ~ 6000。能够登录系统获得
shell
在Linux权限模型下,每一个文件属于一个用户和一个组,由UID与GID标识其全部权。
针对于文件的详细訪问权限
定义为可读(r)、可写(w)与可运行(x)。并由三组读、写、运行组成的权限三元组来描写叙述相关权限。
第一组定义文件全部者(用户)的权限,第二组定义同组用户(GID同样但UID不同的用户)的权限,第三组定
义其它用户的权限(GID与UID都不同的用户)。
五、进程通信机制
六、内存管理机制
Linux的低内存管理机制(OOM)。设计实现了独特的低内存清理(LMK)机制。将进程按重要性分级、分组。当内存不足时,自己主动清理最低级别进程所占用的内存空间。同一时候,引入不同于传统Linux共享内存机制的Android共享内存机制Ashmem,具备清理不再使用共享内存区域的能力。
SELinux 拥有三个主要的操作模式
SELinux 拥有三种訪问控制方法:
• android/external/sepolicy文件夹下
• wing-common/sepolicy自己定义策略
SELinux默认宏:
我们觉得域、域类型、主体类型和进程类型
Selinux策略语言眼下支持四类AV规则:
allow。dontaudit,auditallow。neverallow规则由四部分组成
attribute概念能够被理解为“具有一组共性的type集合”,或者“这组type所具有的共性”。语法例如以下:
attribute attribute_name;
比方定义一个名为”file_type”的属性:
attribute file_type;
在定义某个type时建立它与某个attribute的关联,比方:
type shadow_t,file_type;
使用attribute可以有效地降低类似规则的数目。比方为了让domain==backup_t可以读取文件系统中的全部文
件。则理论上必须为全部可能存在的文件type定义对应的allow规则:
type backup_t;
allow backup_t shadow_t:file read;
allow backup_t var_t:file read;
能够通过attribute来有效解决问题。
allow backup_t file_type:file read;
user u roles { r }
role r types domain;
当SELinux处于enforcing模式下时某些程序的运行会失败,在这里总结此类问题的整体分析方法。
Android安全机制介绍的更多相关文章
- Android Binder机制介绍
做过Android开发的同学可能有些体会,入门初期,工作内容主要是实现各式各样的UI界面,以及实现应用的业务逻辑.在这个阶段,我们会逐渐熟悉View系统,逐渐学会实现各种各样的界面以及动画效果.再往后 ...
- Android签名机制
Android APK 签名比对 发布过Android应用的朋友们应该都知道,Android APK的发布是需要签名的.签名机制在Android应用和框架中有着十分重要的作用. 例如,Android系 ...
- 理解Android安全机制
本文从Android系统架构着手,分析Android的安全机制以SE Android,最后给出一些Android安全现状和常见的安全解决方案. 1.Android系统架构 Android采用分层的系统 ...
- 【Android 开发】: Android 消息处理机制之一: Handler 与 Message
最近几讲内容,我们学习了Android中关于多线程的一些知识,上一讲我们讲解了异步任务 AsyncTask 的操作,Android中还提供了其他的线程操作,如Handler Message Messa ...
- GitHub上排名前100的Android开源库介绍(来自github)
本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍,至于排名完全是根据 GitHub 搜索 Java 语言选择 (Best Match) 得到的结果,然后过滤了 ...
- Android安全机制(2) Android Permission权限控制机制
http://blog.csdn.net/vshuang/article/details/44001661 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 1.概述 Andro ...
- Android反射机制实现与原理
本文介绍Android反射机制实现与原理,在介绍之前,要和Java进行比较,所以先看下Java中的反射相关知识: 一.反射的概念及在Java中的类反射 反射主要是指程序可以访问.检测和修改它本身状态或 ...
- 解析Android消息处理机制:Handler/Thread/Looper & MessageQueue
解析Android消息处理机制 ——Handler/Thread/Looper & MessageQueue Keywords: Android Message HandlerThread L ...
- Android群英传》读书笔记 (3) 第六章 Android绘图机制与处理技巧 + 第七章 Android动画机制与使用技巧
第六章 Android绘图机制与处理技巧 1.屏幕尺寸信息屏幕大小:屏幕对角线长度,单位“寸”:分辨率:手机屏幕像素点个数,例如720x1280分辨率:PPI(Pixels Per Inch):即DP ...
随机推荐
- 如何用纯 CSS 创作在文本前后穿梭的边框
效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/qYepNv 可交互视频教 ...
- 【转发】【linux】【php】centos 编译php常见错误
configure: error: xml2-config not found. Please check your libxml2 installation. yum install libxml2 ...
- Pandas中loc,iloc与直接切片的区别
最近使用pandas,一直搞不清楚其中几种切片方法的区别,今天专门看了一下. 0. 把Series的行index或Dataframe的列名直接当做属性来索引. 如: s.index_name df.c ...
- Python9-面对对象2-day23
#计算正方形的周长和面积 class Square: def __init__(self,side_len): self.side_len = side_len def perimeter(self) ...
- PAT Basic 1033
1033 旧键盘打字 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在 2 行中分别给出坏掉 ...
- pep-8要求归纳
代码布局缩进每个缩进级别使用4个空格. 连续行应使用Python的隐式行连接括号,括号和大括号,或使用悬挂缩进 来垂直对齐包装元素.当使用悬挂式缩进时,应考虑以下内容:第一行应该没有任何争论,应该使用 ...
- luogu3809 后缀排序 后缀数组
ref and 挑战程序设计竞赛. 主要是发现自己以前写得代码太难看而且忘光了,而且我字符串死活学不会啊,kmp这种东西我都觉得是省选+难度啊QAQ #include <iostream> ...
- TOJ 1203: Number Sequence
1203: Number Sequence Time Limit(Common/Java):1000MS/10000MS Memory Limit:65536KByte Total Submi ...
- Git 撤消操作
修改最后一次提交 有时候我们提交完了才发现漏掉了几个文件没有加,或者提交信息写错了.想要撤消刚才的提交操作,可以使用 --amend 选项重新提交: $ git commit --amend 此命令将 ...
- python 字典 key 和value 互换
这里是一个可能有用的通过字典解析实现的小技巧: 交换字典的键和值. >>> a_dict = {'a': 1, 'b': 2, 'c': 3} >>> {value ...