SEAndroid 是将SELinux 移植到Android 上的产物,可以看成SELinux 辅以一套适用于Android 的策略。

那么在android系统中那些文件是与SELinux(SEAndroid)相关的呢?

  1. 在android源码中有哪些
  2. 在android rom中有哪些?

android源码中

android源码提供的所有Android策略文件在路径external/sepolicy目录下面,

external/sepolicy   //通用的
device/lge/mako/sepolicy //某款设备特有的,此为举例

这里面主要包含如下几类文件:

  • File contexts (*.fc)
  • Type enforcement rules (*.te)
  • M4 macros, "interfaces" (*.if)

然后是一些特殊的配置文件:

  1. external/sepolicy/attributes -> 所有定义的attributes都在这个文件
  2. external/sepolicy/access_vectors -> 对应了每一个class可以被允许执行的命令
  3. external/sepolicy/roles -> Android中只定义了一个role,名字就是r,将r和attribute domain关联起来
  4. external/sepolicy/users -> 其实是将user与roles进行了关联,设置了user的安全级别,s0为最低级是默认的级别,mls_systemHigh是最高的级别
  5. external/sepolicy/security_classes -> 指的是上文命令中的class,个人认为这个class的内容是指在android运行过程中,程序或者系统可能用到的操作的模块
  6. external/sepolicy/te_macros -> 系统定义的宏全在te_macros文件
  7. external/sepolicy/*.te -> 一些配置的文件,包含了各种运行的规则

上下文

  • file_contexts
    file_contexts文件保存的是系统中所有文件的安全上下文定义。file_contexts文件的格式比较简单,每行的前半部分是文件的路径,后面是它的安全上下文的定义。支持通配符。

  • genfs_contexts
    文件保存android proc虚拟分区内文件的上下文。

  • initial_sid_contexts
  • port_contexts
  • property_contexts
    property_contexts文件中保存的是系统中所有Android属性的安全上下文定义。

  • seapp_contexts
    和Android中的应用程序打标签有关

  • service_contexts

android系统相关的文件

在rom中

/data/security

使用命令

setprop selinux.reload_policy 1

可以重新加载新的sepolicy,由于/data目录下有了sepolicy,所以它将使用这个新的。

在根目录下有如下文件

  • file_contexts
  • property_contexts
  • seapp_contexts
  • sepolicy
  • selinux_version
  • service_contexts

作者:夏大王2019
链接:http://www.jianshu.com/p/e67107e39c98
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

S005SELinux(SEAndroid)的实际文件组成无标题文章的更多相关文章

  1. 简单集成高大上的ImagePicker无标题文章

    简单集成高大上的ImagePicker无标题文章   现在是个项目就要有图片上传所以下面介绍一下简单高端的图片选择器 感谢读者的细心发现bug,最近bug已经修复(github更新)所以对文章部分内容 ...

  2. MFC修改窗口无标题和标题信息,修改执执行文件图标

    一.创建MFC后 窗口显示的是 无标题-工程名 修改方法在网上看到了几种,下面介绍下比较简单的一种: 1.在MianFrame.c文件中找到这个函数 BOOL CMainFrame::PreCreat ...

  3. Android 无标题、全屏设置

    一.在主题中设置无标题.全屏 (一):直接设置主题: android:theme="@android:style/Theme.NoTitleBar.Fullscreen"  // ...

  4. Android:实现无标题的两种方法

    实现无标题的两种方法:配置xml文件和编写代码设置 1.在AndroidManifest.xml文件中进行配置 实现全屏效果: android:theme="@android:style/T ...

  5. Android中无标题样式和全屏样式学习

    在进行UI设计时,我们经常需要将屏幕设置成无标题栏或者全屏.要实现起来也非常简单,主要有两种方法:配置xml文件和编写代码设置. 1.在xml文件中进行配置 在项目的清单文件AndroidManife ...

  6. [WPF] 我的WPF自学日记1,无标题窗体拖动

    学习WPF的第一天,尝试写比较常用的功能,无标题窗体拖动. 先在设计界面给它加上MouseDown事件 <Window x:Class="MyFirstWPFAPP.MainWindo ...

  7. windows程序里新窗体不在任务栏显示,无标题拖动,键盘事件,始终显示在主窗体上面,单实例运行等

    不显示在任务栏,Alt+Tab也不显示 protected override CreateParams CreateParams { get { const int WS_EX_APPWINDOW = ...

  8. Delphi实现无标题有边框的窗体

    1.在delphi中新建窗体程序,然后设置窗口的 BorderStyle属性为bsNone 2.在窗体的public区写下这一句: Procedure CreateParams(var Params ...

  9. android ActionBarActivity设置全屏无标题

    新建的Activity继承自ActionBarActivity,设置全屏无标题本来很简单的事,但是没想到app竟然无缘无故的挂,要么就是白屏一片,要么就是黑屏.坑了我一个多小时!!! 原因是Actio ...

随机推荐

  1. Eclipse 窗口说明

    Eclipse 窗口说明 Eclipse 工作台(Workbench) 首先,让我们来看一下Eclipse 作台用户界面,和它里面的各种组件. 工作台是多个窗口的集合.每个窗口包含菜单栏,工具栏,快捷 ...

  2. 目标跟踪之klt---光流跟踪法

    近来在研究跟踪,跟踪的方法其实有很多,如粒子滤波(pf).meanshift跟踪,以及KLT跟踪或叫Lucas光流法,这些方法各自有各自的有点,对于粒子滤波而言,它能够比较好的在全局搜索到最优解,但其 ...

  3. 慢慢理解RESTful架构

    <理解本真的REST架构风格> 作者:李锟 链接:http://www.infoq.com/cn/articles/understanding-restful-style/ <理解R ...

  4. phpcms v9 配置sphinx全文索引教程

    英文介绍:http://www.sphinxsearch.com/docs/manual-0.9.9.html 一.首先需要在服务器上安装sphinx 在Windows上安装sphinx     1. ...

  5. postgresql学习文档

    字符串函数: http://www.php100.com/manual/PostgreSQL8/functions-string.html http://gavin-chen.iteye.com/bl ...

  6. Laravel5.1 模型 --软删除

    软删除是比较实用的一种删除手段,比如说 你有一本账 有一笔记录你觉得不对给删了 过了几天发现不应该删除,这时候软删除的目的就实现了 你可以找到已经被删除的数据进行操作 可以是还原也可以是真正的删除. ...

  7. EditText相关属性设置

    1.默认不弹出软件盘 在AndroidManifest.xml设置: <activity            android:name="com.demo.Activity" ...

  8. C++编译过程与内存空间

     为什么须要知道C/C++的内存布局和在哪能够能够找到想要的数据?知道内存布局对调试程序很有帮助,能够知道程序运行时,究竟做了什么,有助于写出干净的代码.本文的主要内容例如以下: 源文件转换为可运 ...

  9. 3、easyUI-创建 CRUD可创建展开行明细编辑dataGrid(表格)

    同样在上一节中讲到可以编辑的表格,现在讲一般用到的最后一个datagrid(表格)相关的展开明细可编辑的表格: 第三中表格主要应用场景在:列出表格信息,然后点击可以查看详细信息(此处是全部可以编辑,可 ...

  10. linux终端常用命令

    常用的信息显示命令 命令#pwd 用于在屏幕上输出当前的工作目录. 命令#stat 用于显示指定文件的相关信息. 命令#uname -a 用于显示操作系统信息. 命令#hostname 用于显示当前本 ...