已合并
update: 添加mnt_external_file权限更新文件 isolated_render.te #8301
update: 添加mnt_external_file权限更新文件 isolated_render.te #8301
已合并
yuzhouhang1创建于 9月30日
yuzhouhang1
9月30日

关联的issue:

https://gitcode.com/openharmony/security_selinux_adapter/issues/5286

修改描述(修改功能描述,规格变更说明):

update: 添加mnt_external_file权限更新文件 isolated_render.te

策略合入自检

likedislike
Pull Request已成功合入, 合并人@openharmony_ci
(感谢 yuzhouhang1 的贡献)
Yyuzhouhang1
9月30日 关联了issue:[Bug]: 添加mnt_external_file权限
openharmony_ciopenharmony_ci成员
9月30日 添加了label:waiting_on_author
openharmony_ci
openharmony_ci成员
9月30日 评论:

感谢提交 Pull Requests!如果您提交的PR已经开发完毕,请评论 "start build" 触发门禁,更多交互操作,请访问OpenHarmony社区支持命令清单。如果需要调整订阅PR、Issue的变更状态,请访问订阅链接。


Thanks for submitting the pull request. If your Pull Request has already been developed, you can leave a "start build" comment to trigger the gated system. For more commands, please visit OpenHarmony Command List. If you need to change the subscription of a Pull Request or Issue, please visit the link.

likedislike
openharmony_ciopenharmony_ci成员
9月30日 添加了label:dco检查成功
yuzhouhang1
9月30日 评论:

SELinux 策略提交自检扫描报告(检视)

扫描工具:ohos-dev-seharmony-policy-review v2.2.0(Part 1 scan.py 自动检查 + Part 2 语义分析,绑定 PR head 目标树)
扫描对象:本 PR 当前 head 净 diff(sepolicy/ohos_policy/web/webview/system/isolated_render.te:+1 空行、+1 avc 注释、+1 allow,基于已合入的 #8296 之上)
diff 性质:新增权限(单条 allow)
基线依赖:PR base blob 为 #8296 head(35323b5),#8296 已合入 master,无基线冲突

逐项判定结果

编号 自检项 状态 依据
S1 策略、注释不出现敏感词 PASS path="/storage/External/xxx/02/xxx.mhtml" 已匿名化,品牌词清零
S2 策略不放 base、同一 MR 宜集中同目录 PASS 仅涉及 ohos_policy/web/webview 单目录,无 base/ 变更
S3 新增参数标签 parameter_attr NA 未涉及
S4 neverallow 落点 NA 净 diff 无 neverallow 变更
S5 SA 服务 neverallow 看护 NA 未涉及
S6 系统参数禁止三方应用配置 NA 未涉及
S7 写执行目录 neverallow 管控 PASS 既有标签(定义于 user_file_service/public/file.te:14),本次授予不含 execute/open,不构成 write+execute 组合
S9/S10 debug_only / developer_only 隔离 NA 未涉及
S11 修改 neverallow/非flex白名单需安全评审 NA 无 neverallow 变更;全库排查 mnt_external_file / permissions_mount_file_attr 相关 neverallow 仅 storage_daemon ... unmount 一条(base/public/filesystem.te:18),与本 allow 无冲突,CI 编译无 neverallow 风险
S12 sh 主体权限需 DFX+安全评审 NA 未涉及
S13 su 主体放行/客体 debug_only NA 未涉及
S15 hap 权限范围 NA 主体为 isolated_render,非 hap 域
S16 禁用默认标签 NA 未使用
S17 allow/allowxperm 配 avc 日志注释 PASS 1 allow : 1 #avc: 配对成立;scontext/tcontext/tclass/permissive/dev/ino 关键字段齐全,可溯源
S18 allow 落点 system/vendor、public 不放 allow PASS isolated_render 为系统部件进程(nwebspawn 派生渲染进程),allow 位于 web/webview/system/,落点正确
S19 allow 块间空行分隔 PASS 新 allow 块与前块之间有空行 + 注释分隔
S20/S20b appdat / binder_call 宏建议 NA 未涉及
S21/S22 service_contexts / whitelist 变更 NA 未涉及
S23 产品宏仅作例外项 NA 未使用产品宏

ROM 增量估算

  • 新增策略规则行(A):1 条 × 100B;删减(D):0;access_vector 变更(M):0
  • 预计 ROM 增量 = +100 B

处置项

必须修复(FAIL):无

需评审决策(WARNING):

  • [安全语义] allow isolated_render mnt_external_file:file { read write getattr append }; — mnt_external_file 是用户文件权限框架管控标签(permissions_mount_file_attr,外部存储/MTP 挂载,对应 /mnt/data/external(/.*)?)。当前全库直接 file 写入该标签的仅 storage_daemon;hap_domain 仅 watch(应用写入须经 FileAccessService 权限框架)。本 PR 使 isolated_render 成为第二个直接写入域 → 请安全评审确认设计意图。缓解因素:未授予 open(仅继承 fd 写入,打开侧的权限校验由宿主应用/文件访问服务完成,与 #8296 的 sharefs 设计一致),建议在 PR 描述中明确该说明

评审备注(非规则项):

  1. PR 描述陈旧:checklist 沿用了 #8290 模板,勾选项声明"本次为新增 neverallow 收紧策略",与本 PR 实际(纯 allow、无 neverallow)不符,建议修正
  2. 覆盖面确认:外部存储另有 mnt_external_fuse_file(FUSE 挂载),当前 avc 仅来自 dev=mtpfs;若 webview 保存场景也走 FUSE 外挂路径,将再次 denied,请确认产品场景是否需要一并覆盖

结论:扫描规则全部通过、无编译风险(CI 以流水线实际结果为准);合入前需安全评审确认 mnt_external_file 直接写入的设计意图,并建议同步修正 PR 描述。

likedislike
yuzhouhang1
9月30日 评论:

start build

likedislike
openharmony_ci
openharmony_ci成员
9月30日 评论:

首次触发
门禁构建开始,包含静态检查、代码编译和测试【dayu200编译, dayu200测试, hap_build编译, ohos-host_mini_tdd编译, master_inner_build编译, x86_64_virt编译, dayu600_7885编译, dayu200_tdd编译】,预计在60分钟内完成,门禁结果会同步发送到注册邮箱。您可以通过如下链接跟踪门禁进展:http://dcp.openharmony.cn/workbench/cicd/detail/6abc790464650f998bfe1d86/runlist

likedislike
openharmony_ciopenharmony_ci成员
9月30日 添加了label:静态检查成功
openharmony_ciopenharmony_ci成员
9月30日 添加了label:冒烟测试成功
openharmony_ci
openharmony_ci成员
9月30日 评论:

代码门禁未通过
您可以通过如下链接查看门禁报告:http://dcp.openharmony.cn/workbench/cicd/detail/6abc790464650f998bfe1d86/runlist

静态检查:

# check type result report
1 codeCheck pass >>>

编译测试:
# Device build result test result package
1 dayu200 success success >>>
2 dayu200_tdd success NA >>>
3 hap_build success NA >>>
4 master_inner_build failed(联合门禁失败) NA >>>
5 ohos-host_mini_tdd success NA >>>
6 dayu600_7885 success NA >>>
7 x86_64_virt success NA >>>

likedislike
hehehe-lihehehe-li成员
27 天前 通过审查
yuzhouhang1
27 天前 评论:

start build

likedislike
openharmony_ciopenharmony_ci成员
27 天前 删除了label:静态检查成功
openharmony_ciopenharmony_ci成员
27 天前 删除了label:冒烟测试成功
openharmony_ci
openharmony_ci成员
27 天前 评论:

本地或库上代码有更新,全量重新构建,重置所有关联PR的验证状态
门禁构建开始,包含静态检查、代码编译和测试【dayu200测试, master_inner_build编译, dayu600_7885编译, hap_build编译, dayu600_7885测试, dayu200_tdd编译, ohos-host_mini_tdd编译, x86_64_virt编译, dayu200编译】,预计在60分钟内完成,门禁结果会同步发送到注册邮箱。您可以通过如下链接跟踪门禁进展:http://dcp.openharmony.cn/workbench/cicd/detail/6ac8b14664650f998b0d6b36/runlist

likedislike
openharmony_ciopenharmony_ci成员
27 天前 添加了label:编译成功
openharmony_ciopenharmony_ci成员
27 天前 添加了label:静态检查成功
openharmony_ciopenharmony_ci成员
27 天前 添加了label:冒烟测试失败
openharmony_ci
openharmony_ci成员
27 天前 评论:

代码门禁未通过
您可以通过如下链接查看门禁报告:http://dcp.openharmony.cn/workbench/cicd/detail/6ac8b14664650f998b0d6b36/runlist

静态检查:

# check type result report
1 codeCheck pass >>>

编译测试:
# Device build result test result package
1 dayu200 success failed(ecotest timeout) >>>
2 dayu200_tdd success NA >>>
3 hap_build success NA >>>
4 master_inner_build success(IGNORE) NA >>>
5 ohos-host_mini_tdd success NA >>>
6 dayu600_7885 success success >>>
7 x86_64_virt success NA >>>

likedislike
yuzhouhang1
27 天前 评论:

start build

likedislike
openharmony_ciopenharmony_ci成员
27 天前 删除了label:编译成功
openharmony_ciopenharmony_ci成员
27 天前 删除了label:静态检查成功
openharmony_ciopenharmony_ci成员
27 天前 删除了label:冒烟测试失败
openharmony_ci
openharmony_ci成员
27 天前 评论:

本地或库上代码有更新,全量重新构建,重置所有关联PR的验证状态
门禁构建开始,包含静态检查、代码编译和测试【dayu200_tdd编译, hap_build编译, dayu600_7885编译, ohos-host_mini_tdd编译, dayu200编译, dayu600_7885测试, x86_64_virt编译, master_inner_build编译, dayu200测试】,预计在60分钟内完成,门禁结果会同步发送到注册邮箱。您可以通过如下链接跟踪门禁进展:http://dcp.openharmony.cn/workbench/cicd/detail/6ac8d20364650f998b19e6d9/runlist

likedislike
openharmony_ciopenharmony_ci成员
27 天前 添加了label:编译成功
openharmony_ciopenharmony_ci成员
27 天前 添加了label:静态检查成功
openharmony_ciopenharmony_ci成员
27 天前 添加了label:冒烟测试成功
openharmony_ciopenharmony_ci成员
27 天前 通过测试
openharmony_ci
openharmony_ci成员
27 天前 评论:

代码门禁通过
您可以通过如下链接查看门禁报告:http://dcp.openharmony.cn/workbench/cicd/detail/6ac8d20364650f998b19e6d9/runlist

静态检查:

# check type result report
1 codeCheck pass >>>

编译测试:
# Device build result test result package
1 dayu200 success success >>>
2 dayu200_tdd success NA >>>
3 hap_build success NA >>>
4 master_inner_build success(IGNORE) NA >>>
5 ohos-host_mini_tdd success NA >>>
6 dayu600_7885 success success >>>
7 x86_64_virt success NA >>>

likedislike
openharmony_ciopenharmony_ci成员
27 天前 删除了label:waiting_on_author
openharmony_ciopenharmony_ci成员
27 天前 添加了label:waiting_for_review
openharmony_ci
openharmony_ci成员
27 天前 评论:

您好,Committer @JerryH1011 @JiDong-CS1 @hehehe-li @chennian ,请分配检视人员检视该PR,可以通过命令"assign [@someone_id]"分配检视人员,也可以直接评论"assign"分配给自己进行检视。


Hello, Committer @JerryH1011 @JiDong-CS1 @hehehe-li @chennian . Please assign someone to review the PR. You can assign a reviewer by using the command "assign [@someone_id]", or you can comment "assign" to review the PR by yourself.

likedislike
openharmony_ciopenharmony_ci成员
27 天前 关闭了关联的issue
openharmony_ciopenharmony_ci成员
27 天前 合入了pull request,合并节点 SHA:7f422b31ff95cfd7b10457c7f52f6167a4dcb27c
openharmony_ciopenharmony_ci成员
27 天前 删除了label:waiting_for_review
openharmony_ciopenharmony_ci成员
27 天前 添加了label:merged