OpenHarmony自定义selinux规则路径
适用场景 selinux作为OpenHarmony的一个非常重要的安全模块,当selinux开启时,开发任何功能都需要单独添加相应的selinux规则,否则很多操作都会被系统拦截。然而有的功能是某些产品特有的,如果把这些功能需要配置的selinux规则放在公共目录下,显然是有些不妥的,更好的方案是将这些规则放到对应的产品目录下,这时就需要指定selinux规则的自定义搜索路径。 路径指定方法 通过
- 适用场景
selinux作为OpenHarmony的一个非常重要的安全模块,当selinux开启时,开发任何功能都需要单独添加相应的selinux规则,否则很多操作都会被系统拦截。然而有的功能是某些产品特有的,如果把这些功能需要配置的selinux规则放在公共目录下,显然是有些不妥的,更好的方案是将这些规则放到对应的产品目录下,这时就需要指定selinux规则的自定义搜索路径。
- 路径指定方法
通过设置selinux_adapter部件的selinux_adapter_build_path特性来指定,例如可以在产品的config.json文件中这样定义:
- 原理分析
首先要了解selinux的策略文件是怎样生成的,在base/security/selinux_adapter/BUILD.gn中看到
这表明生成策略文件的过程就是遍历sepolicy及selinux_adapter_build_path下的文件。
sepolicy是selinux_adapter部件的策略目录,那selinux_adapter_build_path又是什么呢?
selinux_adapter_build_path是selinux_adapter部件的一个特性:
因此,我们要指定selinux策略的扫描路径,只需要指定selinux_adapter_build_path就可以了。
更多推荐
所有评论(0)