news 2026/4/18 9:29:31

Selinux Context上下文

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Selinux Context上下文

Selinux Context上下文

前面有提到主体,客体,te文件 等等。

也就是说某个进程(主体)对(客体)资源会有(哪些)权限(动作)

这里需要搞明白:
谁是主体,谁能成为主体,我怎么知道某个东西是主体,同理,客体以及权限动作也是如此。
在android系统中,这个问题是通过label标签来解决。我们称这个标签为Selinux Context上下文。
简称为scontext.
换句话说,安卓系统中的每一个主体和客体对象,都会有一个scontext上下文件,它是一个label字符串,安卓系统中需要有对此有一个规定:

主体的scontext是u:r:xxx:s0, (看到类似这个scontext就知道它是属于主体的标签), 一般 这个xxx就是模块名称,如init, adbd, vold等

客体的scontext是u:object_r:xxx:s0, (看到类似这个scontext就知道它是属于客体的标签), 这个xxx一般指的就是MAC模型中的客体类型资源文件, 如/dev/light0

配合te文件的规定策略:比如:进程init对存放在/dev/light0的这个文件有open和read的权限
有可能进程init对存放在/dev/light0的这个资源,就没有有写入的权限(如果te文件没有规定的话)

换个角度思考,如果想在一个te文件中描述主体对客体的行为动作,主体如何描述,客体又如何描述,所以肯定是需要一些字符串去标识和定义它们,这就是需要打标签的原因。

关于context_file
前面已经讲了scontext,了解了什么样的标签是主体以及客体,那现在又出现一个问题,我们在哪里定义这个标签?就是我们这节要讲的context_file,上下文文件。

注意:系统上的所有的文件,全部都需要打上上下文标签,每个文件都需要有标签定义。

那么问题来了,现在所有的标签都已经准备好了,有file_contexts, genfs_contexts,service_contexts,seapp_contexts,property_contexts,也清楚 我们需要对每个客体所需要的标签是在对应的context_file文件中进行标签的定义,但这只是定义性的。我们还需要知识一点,对这个客体来说,肯定是需要有一个角色(是谁)来给这个客体赋予context_file文件中定义的标签label

在安卓系统中,一般是通过一些SecurityServer进程,如init进程(但不仅仅只有它), 它可以将上下文标签中的定义,给对应的文件打上标签(上图中也包含了打标签的过程)。

(知识扩展:这里针对的是客体,但对主体的上下文标签又是在哪里呢?主体在运行之前也是一个文件,所以也需要拥有上下文里的某一个标签)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 21:12:14

转行IT最吃香的六大岗位:从零到精通,就业无忧!

2025转行IT最吃香的六大岗位:从零到精通,就业无忧! 随着数字化转型浪潮席卷全球,IT行业依然是职业转型者眼中的"黄金赛道"。2025年,哪些岗位最适合转行切入?本文将为你揭秘六大高潜力方向&#x…

作者头像 李华
网站建设 2026/4/18 3:51:47

字节跳动加码AI入口争夺战:豆包如何用“系统级智能”重构移动体验?

2025年末,字节跳动旗下的AI产品豆包正以一种前所未有的节奏加速布局。从深度集成于操作系统的手机助手,到与中兴合作推出的首款“豆包助手”工程机迅速售罄,再到以语音识别和大模型能力为核心、直指微信生态的豆包输入法,这一系列…

作者头像 李华
网站建设 2026/4/18 3:52:47

2025年AI图文创作神器01Agent:3步解决‘死图‘痛点,效率提升300%

2025年AI图文创作工具选型指南:01Agent如何解决“死图”痛点? 很多创作者和企业主都面临着同一个尴尬的困境:你拥有绝佳的创意和敏锐的市场嗅觉,却被繁琐的排版、素材搜集和多平台分发耗尽了精力。市面上的AI工具虽然能生成图片&a…

作者头像 李华
网站建设 2026/4/17 13:25:46

第九章 述职06 莹姐汇报演练

CBS升级专项,要给CFO做汇报。这个产品一直是莹姐在负责,对于专项汇报,原则上我都把机会给到对应的PM,主要考虑:我们产品线很多,如果都由我来汇报,那么占用我的精力过多,会耽误其他很…

作者头像 李华
网站建设 2026/4/16 9:11:17

Java8 JVM 调优案例:Major GC 和 Minor GC 频繁

针对Java 8中频繁发生Minor GC(Young GC)和Major GC(Full GC)的问题,这通常意味着内存分配速率过快、内存空间不足或者分代设置不合理。 JVM调优不是盲目调整参数,而是一个**“监控 -> 分析 -> 调优 …

作者头像 李华