更新时间:2024-11-29 GMT+08:00

配置代码检查任务自定义规则集

代码检查服务除了可以使用预置规则集类型,用户还可以根据实际需要自定义代码检查规则集,每个规则集中最少设置一条规则。

目前仅支持配置单语言的规则集,即一种规则集只能配置同一种语言类型的检查规则。

代码检查规则集提供了代码安全检查增强包功能,使用前请务必按需购买。购买了代码安全检查增强包后,Java、C++、Go和Python语言可以使用安全度更高的缺陷扫描规则。

操作视频

本视频为您演示使用自定义规则集检查Repo代码仓中代码质量的操作。

创建自定义检查规则集

  1. 基于项目入口访问CodeArts Check服务首页
  2. 单击“规则集”页签,进入规则集列表页面。
  3. 单击“新建规则集”,在弹出的“新建规则集”窗口设置规则集名称、描述以及检查语言。

    您也可以单击“复制于”下拉框选择复制于已有的规则集,基于复制的规则集配置使用的规则。

  4. 单击“确定”。
  5. 根据需要勾选规则名称、设置规则级别,单击右上角“保存”。

    如果系统预置的规则不满足用户的使用要求,可自定义规则使用。

    • 单击规则集名称,进入规则集详情页面可在线查看规则集中使用的规则详情。
    • 单击规则集名称,进入规则集详情页面,单击“导出”按钮可导出该规则集中已启用的规则到本地查看规则详情。
    • 单击规则集名称,进入规则集详情页面,单击“修改基本信息”,可修改规则集名称或描述信息。
      • “检查语言”不支持修改。
      • 系统预置规则集无法修改。
      • 只有创建者可以修改自定义规则集。
    • 单击规则集所在行的,选择“删除”即可删除检查规则集。
      • 创建者可以删除自定义规则集。
      • 系统规则集和已被使用的自定义规则集无法删除。
      • 如果需要删除已被使用的规则集,需将关联使用该规则集的代码检查任务删除或将代码检查任务关联到其它规则集。

配置代码检查服务使用自定义规则集

  1. 在代码检查详情页选择设置 > 规则集
  2. 如果创建代码检查任务后,代码仓的代码有修改,则需单击“已包含语言”所在行重新获取代码仓语言,将目标语言的开关设置为开启状态。
  3. 单击,选择已创建的自定义规则集。

自定义规则

  • 最多支持创建10条自定义规则。
  • 使用自定义规则扫描代码最多支持扫描10万行。仅适用于使用的规则集中只包含自定义规则。
  • 使用自定义规则扫描10万行代码行最多时长1.5小时。仅适用于使用的规则集中只包含自定义规则。

如果需要支持扫描更多行数的代码或需要创建更多数量的规则,可咨询华为技术支持。

  1. 单击“规则”页签。
  2. 单击“新建规则”,参考表1配置参数。

    表1 自定义规则参数配置说明

    参数名称

    参数说明

    是否必填

    规则名称

    创建的规则名称,可自定义。

    • 支持中英文,数字,点,下划线“_”和连接符“-”
    • 字符长度范围为1~128

    工具规则名称

    默认填充为规则源码文件名,不可手动修改。

    检查工具

    该检查规则使用的检查工具,当前仅支持SecBrella。

    语言

    该规则检查的编译语言,当前仅支持Java。

    规则源码

    该规则的源码文件。

    由用户创建“.kirin”文件编写dsl规则,然后通过运行本地插件在“OutputReport”目录下生成“SecH_自定义规则名.json”的源码文件,上传json文件即可。

    严重级别

    该规则检查出的代码问题的严重级别,分为致命、严重、一般和提示。

    标签

    为该规则设置标签,便于使用时区分该规则使用场景。

    添加多个标签时,需使用英文逗号分隔。

    描述

    对该规则的使用描述。如果描述的内容需要粘贴代码,代码内容支持MarkDown格式。字符数限制为0~10000。

    正确示例

    该规则对应的正确代码示例。代码内容支持使用MarkDown格式呈现。字符数限制为0~10000。

    错误示例

    不满足该规则的错误代码示例。代码内容支持使用MarkDown格式呈现。字符数限制为0~10000。

    修复建议

    对于该规则检查出的问题修改建议。如果修复建议中需要粘贴代码,代码内容支持MarkDown格式。字符数限制为0~10000。

  3. 单击“新建规则”,完成创建。