Android 10 在 SElinux 中添加新的安全策略

Add new security policy in SElinux on Android 10

我希望 /dev/i2c-1 设备在 Android 10.

的 SELinux 安全策略之外

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

中创建一个 .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 不是有效名称,但我不知道如何在 .te 文件中引用 /dev/i2c-1

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

  1. 定义您的dev_type(设备/“制造商”/“设备名称”/sepolicy/“您的文件名”.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。 example 定义了一个 dhcp 域,这是一个很好的例子。