参考文章:

https://www.cnblogs.com/zhongguiyao/p/13955398.html

 

常用的定义,方便使用 一组权限或一类对象

源码位置:/system/sepolicy/public/global_macros

比如下面这些:

#####################################
# Common groupings of permissions.
#
define(`x_file_perms', `{ getattr execute execute_no_trans map }')
define(`r_file_perms', `{ getattr open read ioctl lock map watch watch_reads }')
define(`w_file_perms', `{ open append write lock map }')
define(`rx_file_perms', `{ r_file_perms x_file_perms }')
define(`ra_file_perms', `{ r_file_perms append }')
define(`rw_file_perms', `{ r_file_perms w_file_perms }')
define(`rwx_file_perms', `{ rw_file_perms x_file_perms }')
define(`create_file_perms', `{ create rename setattr unlink rw_file_perms }')

 

 

原生的一些SElinux sepolicy

源码位置:/system/sepolicy/private/  or /system/sepolicy/public/ 

比如

init.te
vendor_init.te
vendor_shell.te

 

一些neverallow的规则常常定义在domain.te

源码位置:/system/sepolicy/public/domain.te

 

文件的安全上下文

原生的定义

/system/sepolicy/public/file.te

 

vendor厂商自己的定义

比如可能是

/device/generic/goldfish/sepolicy/common/file.te

或者其它 te档案中,如

 /system/sepolicy/public/surfaceflinger.te

 

通常会在file_contexts文件中指定进程或档案的selinux安全上下文

比如:

[ /system/sepolicy/private/file_contexts]

// 文件
/data/vendor(/.*)?              u:object_r:vendor_data_file:s0
/data/vendor_ce(/.*)?           u:object_r:vendor_data_file:s0
/data/vendor_de(/.*)?           u:object_r:vendor_data_file:s0

// 进程
/system/bin/surfaceflinger	u:object_r:surfaceflinger_exec:s0

 

可以通过 ls -Z 或 ps -Z 命令查看(是不是和上面定义的一致

// 查看进程
console:/ # ps -AZ | grep SurfaceFLinger
1|console:/ # ps -AZ | grep surfaceflinger
u:r:surfaceflinger:s0          system          188      1  134632  34488 SyS_epoll_wait      0 S surfaceflinger

// 查看档案
console:/ # ls -Z /data | grep vendor
u:object_r:vendor_data_file:s0                    vendor
u:object_r:vendor_data_file:s0                    vendor_ce
u:object_r:vendor_data_file:s0                    vendor_de

 

查看赋予某一个对象的权限sepolicy

cat /vendor/etc/selinux/vendor_sepolicy.cil | grep "allow xxxx_service"

 

原文地址:http://www.cnblogs.com/roger-yu/p/16902230.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性