0

我希望女巫/dev/i2c-1设备不在 Android 10 上的 SELinux 安全策略范围内。

我有 Android 10 的源代码。我尝试.te/device/thales/mt8768q/sepolicy/edgelab.te

在 foo.te 中,我向该站点添加了一个类似的示例:https ://source.android.com/security/selinux/customize 。

allow domain i2c-1_device:chr_file rw_file_perms

但是,在编译中,这一行会产生错误。

更新:

我在以下位置添加新行/device/manufacturer/device-name/BoardConfig.mk

BOARD_SEPOLICY_DIRS += device/thales/mt8768q/sepolicy

错误是:

#line 206
device/mediatek/mt6765/sepolicy/bsp/mnld.te:8:ERROR 'syntax error' at token 'role' on line 97225:
#line 2 "device/thales/mt8768q/sepolicy/edgelab.te"
allow domain i2c-1_device:chr_file { { getattr open read ioctl lock map } { open append write lock map } }role r;
checkpolicy:  error(s) encountered while parsing configuration

也许i2c-1_device不是一个有效的名称,但我不知道如何/dev/i2c-1.te文件中引用。

4

1 回答 1

2

您应该定义您的域和标签。

  1. 定义你的 dev_type (device/"manufacturer"/"device-name"/sepolicy/"your-filename".te):

    类型 i2c-1_device、dev_type;

  2. 使用您的类型标记文件(设备/“制造商”/“设备名称”/sepolicy/file_contexts):

    /dev/i2c-1/* u:object_r:i2c-1_device:s0

  3. 定义您的规则(设备/“制造商”/“设备名称”/“您的文件名”.te):

    允许域 i2c-1_device:chr_file rw_file_perms

您最好定义您的域并限制只有您的域可以访问 i2c-1_device。该示例定义了一个 dhcp 域,这是一个很好的示例。

于 2021-06-01T02:17:44.857 回答