Android6.0 selinux没有对某个文件的权限(又neverAllow)处理方法
来源:互联网 发布:淘宝双十一成交额2016 编辑:程序博客网 时间:2024/05/11 15:35
一、案例
我们举个案例,比如recovery升级中,碰到这个的log
说明install_revovery没有block_device的权限。
而在原生的domain.te文件中,明确domain中是没有对block_device的读写权限,除了recovery vold等。
二、方法1(后续cts测试会有问题)
那我们如何是好呢,可以在上面这句nevera中把install_recovery也减去,然后再install_recovery.te中再加入相应的allow,这个时候编译就不会报错了。
但是这个方法,后续会在cts测试的时候过不了。
因此我们不能采取这种方法。
三、方法2
所以我们得想别的方法,我们发现在domain.te中同样有下面这么一句,是可以允许install_recovery去写recover_block_device的权限。
于是我们再去查block_device 和 recover_block_device
这两个的类型一致。
但我们再看file_contexts,看下文件安全上下文
定义的dev/block下面的文件都是block_device,而recover_block_device是没有定义的。那我们也能不能定义我们要操作的文件为recover_block_device类型。
答案肯定是可以的。
我们也可以自己定义自己的文件为recover_block_device类型,感觉这是Android给大家预留的。
具体实现就不说了,因为具体要操作什么文件不是太清楚,这只是一个log而已。
最后我们只要在install_recovery.te中加入下面权限就可以了。
这样install_recovery就有了目标文件的open read write权限了。
0 0
- Android6.0 selinux没有对某个文件的权限(又neverAllow)处理方法
- Android6.0 selinux没有对某个文件的权限(又neverAllow)处理方法
- Android6.0 selinux没有对某个文件的权限(又neverAllow)处理方法
- Android6.0 selinux没有对某个文件的权限(又neverAllow)处理方法
- Android6.0中对权限的处理
- Android6.0权限的处理
- Android6.0 申请权限比较优雅的处理方法
- 基于android6.0版本的SELinux文件访问安全策略
- 基于android6.0版本的SELinux文件访问安全策略
- Android6.0 权限处理
- Android6.0权限处理
- Android6.0 权限处理
- android6.0的权限处理(封装版)
- android6.0版本的权限申请处理
- android6.0以及以上的权限处理
- Android6.0运行时权限的处理
- Android6.0动态权限的处理
- Android6.0+运行时权限的处理
- java调用存储过程
- POJ 2349 (最小生成树)
- HDU 5860 Death Sequence(递推)
- [转载]Linux SWAP 交换分区配置说明
- 仿微信-界面动画(5)ViewPager详解
- Android6.0 selinux没有对某个文件的权限(又neverAllow)处理方法
- python 操作mongodb
- codeforces 702F 可持久化平衡树
- Android studio 离线升级方法
- httpcomponents之httpclient发送http请求
- Lmbench3 test SUMMARY
- 面试题4:替换空格(C++)
- Android权限参考大全
- QT中QString与数字类型的转换