Skip to main content

自定义自动分类规则以确定 Dependabot 警报的优先级

你可以创建自己的 自动分类规则 以控制关闭或推迟哪些警报,以及希望 Dependabot 为其打开拉取请求的警报。

谁可以使用此功能?

  • 组织所有者
  • 安全管理员
  • 具有“管理员”访问权限的用户(可以启用、禁用和查看存储库的 自动分类规则,以及创建 自定义自动分类规则)****

关于 自定义自动分类规则

你可以根据警报元数据创建自己的 Dependabot 自动分类规则。 可以选择无限期地自动关闭警报,或推迟警报,直到修补程序变为可用,并且可以指定希望 Dependabot 为其打开拉取请求的警报。

由于创建的任何规则都适用于将来和当前警报,因此还可以使用 自动分类规则 批量管理 Dependabot alerts。

存储库管理员可以为其公共、私有和内部存储库创建 自定义自动分类规则。

组织所有者和安全管理员可以在组织级别设置 自定义自动分类规则,然后选择是否在组织中的所有公共存储库中强制执行或启用规则。

  • 强制执行:如果组织级规则为“强制执行”,则存储库管理员无法编辑、禁用或删除规则。
  • 已启用:如果组织级规则为“已启用”,则存储库管理员仍可禁用其存储库的规则。

Note

如果组织级规则和存储库级规则指定冲突行为,则组织级规则设置的操作优先。 关闭规则始终先于触发 Dependabot 拉取请求的规则执行。

你可以使用以下元数据创建规则来定位警报:

  • CVE ID
  • CWE
  • 依赖项范围(devDependencyruntime
  • 生态系统
  • GHSA ID
  • 清单路径(仅适用于存储库级的规则)
  • 包名称
  • 修补程序可用性
  • Severity

了解 自定义自动分类规则 和 Dependabot security updates 如何交互

你可以使用 自定义自动分类规则 来定制希望 Dependabot 为其打开拉取请求的警报。 但是,要使“打开拉取请求”规则生效,必须确保对规则应用于的存储库禁用 Dependabot security updates。****

为存储库启用 Dependabot security updates 时,Dependabot 将自动尝试打开拉取请求,以解决每个具有可用修补程序的打开的 Dependabot 警报。**** 如果希望使用规则自定义此行为,则必须禁用 Dependabot security updates。

有关为存储库启用或禁用 Dependabot security updates 的详细信息,请参阅“配置 Dependabot 安全更新”。

将 自定义自动分类规则 添加到你的存储库

Note

在 beta 版本 期间,最多可以为存储库创建 10 个 自定义自动分类规则。

  1. 在 GitHub 上,导航到存储库的主页面。

  2. 在存储库名称下,单击 “设置”。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。

    存储库标头的屏幕截图,其中显示了选项卡。 “设置”选项卡以深橙色边框突出显示。

  3. 在边栏的“安全性”部分中,单击“ 代码安全性和分析”。

  4. 在“Dependabot alerts”下,单击 关闭“Dependabot 规则”。

  5. 单击“新建规则”。

  6. 在“规则名称”下,描述此规则要执行的操作。

  7. 在“状态”下,使用下拉菜单选择是应为存储库启用或禁用规则。

  8. 在“目标警报”下,选择要用于筛选警报的元数据。

  9. 在“规则”下,选择要对符合元数据的警报执行的操作:

    • 选择“消除警报”以自动消除符合元数据的警报。**** 可以选择无限期或在修补程序可用前消除警报。
    • 如果希望 Dependabot 来建议更改以解决符合目标元数据的警报,请选择“打开拉取请求以解决此警报”。**** 请注意,如果已选择无限期关闭警报的选项,或者在存储库设置中启用 Dependabot security updates,则此选项不可用。
  10. 单击“创建规则”。

将 自定义自动分类规则 添加到你的组织

Note

在 beta 版本 期间,最多可以为组织创建 25 个 自定义自动分类规则。

  1. 在 GitHub 的右上角,选择个人资料照片,然后单击“你的组织”。
  2. 在组织旁边,单击“设置”。
  3. 在边栏的“安全性”部分中,单击“ 代码安全性和分析”。
  4. 在“Dependabot”下的“Dependabot alerts”下,单击 关闭“Dependabot 规则”。
  5. 单击“新建规则”。
  6. 在“规则名称”下,描述此规则要执行的操作。
  7. 在“状态”下,使用下拉菜单选择希望的规则应用方式。
    • 选择“强制执行”以防止存储库管理员能够编辑、禁用或删除存储库设置页中的规则。****
    • 选择“已启用”为所有存储库设置默认规则,同时允许存储库管理员禁用存储库设置页中的规则。****
    • 或者,可以选择将规则设置为“已禁用”,该规则无法在存储库级别重写。**** 所有存储库都会隐藏禁用的规则。
  8. 在“目标警报”下,选择要用于筛选警报的元数据。
  9. 在“规则”下,选择要对符合元数据的警报执行的操作:
    • 选择“消除警报”以自动消除符合元数据的警报。**** 可以选择无限期或在修补程序可用前消除警报。
    • 如果希望 Dependabot 来建议更改以解决符合元数据的警报,请选择“打开拉取请求以解决此警报”。**** 请注意,如果选择了无限期消除警报的选项,则此选项不可用。
  10. 单击“创建规则”。

编辑或删除存储库的 自定义自动分类规则

  1. 在 GitHub 上,导航到存储库的主页面。

  2. 在存储库名称下,单击 “设置”。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。

    存储库标头的屏幕截图,其中显示了选项卡。 “设置”选项卡以深橙色边框突出显示。

  3. 在边栏的“安全性”部分中,单击“ 代码安全性和分析”。

  4. 在“Dependabot alerts”下,单击 关闭“Dependabot 规则”。

  5. 在“存储库规则”下,在要编辑或删除的规则右侧,单击

  6. 要编辑规则,请对相应的字段进行任何更改,然后单击“保存规则”。

  7. 要删除规则,请单击“危险区域”下的“删除规则”。****

  8. 在“确定要删除此规则吗?” 对话框中,查看信息,然后单击“删除规则”。****

编辑或删除组织的 自定义自动分类规则

  1. 在 GitHub 的右上角,选择个人资料照片,然后单击“你的组织”。
  2. 在组织旁边,单击“设置”。
  3. 在边栏的“安全性”部分中,单击“ 代码安全性和分析”。
  4. 在“Dependabot”下的“Dependabot alerts”下,单击 关闭“Dependabot 规则”。
  5. 在“组织规则”下,在要编辑或删除的规则右侧,单击
  6. 要编辑规则,请对相应的字段进行任何更改,然后单击“保存规则”。
  7. 要删除规则,请单击“危险区域”下的“删除规则”。****
  8. 在“确定要删除此规则吗?” 对话框中,查看信息,然后单击“删除规则”。****