# Dependabot 自动分类规则

Dependabot控制如何处理安全警报，包括筛选、忽略、阻止或触发安全更新。

## 关于 Dependabot 自动分类规则

Dependabot 自动分类规则 让你可以指示 Dependabot 自动分类处理 Dependabot alerts 和 Dependabot malware alerts。 您可以使用 自动分类规则：

* 自动消除或推迟某些警报
* 指定你希望 Dependabot alerts 为其打开拉取请求的 Dependabot

在发送警报通知之前应用规则，因此启用自动消除低风险警报的规则将有助于降低通知噪音。

有两种类型的 Dependabot 自动分类规则：

* GitHub 预设
* 自定义自动分类规则

### 关于 GitHub 预设

GitHub 预设 是由 GitHub 整理的、可用于所有存储库的规则。

#### 忽略开发范围内依赖项的轻微影响问题

`Dismiss low impact issues for development-scoped dependencies` 规则是 GitHub 预设的规则，可自动消除在开发中使用的 npm 依赖项中发现的某些类型的漏洞。 这些警报涵盖了这样一些情况：对大多数开发人员来说，相关漏洞看起来像是误报。

* 在开发人员（非生产或运行时）环境中不太可能被攻击。
* 可能与资源管理、编程和逻辑以及信息泄露问题相关。
* 在最坏的情况下，具有有限的影响，例如生成缓慢或测试长时间运行。
* 不指示生产环境中的问题。

默认情况下，将为公共存储库启用该规则，也可以为专用存储库选择启用该规则。 有关说明，请参阅 [为专用存储库启用 `Dismiss low impact issues for development-scoped dependencies` 规则](/zh/code-security/dependabot/dependabot-auto-triage-rules/using-github-preset-rules-to-prioritize-dependabot-alerts#enabling-the-dismiss-low-impact-issues-for-development-scoped-dependencies-rule-for-your-private-repository)。

有关规则使用的条件的详细信息，请参阅 [GitHub 预设 Dependabot 规则使用的 CWE](/zh/code-security/reference/supply-chain-security/criteria-for-preset-rules)。

#### 忽略软件包恶意软件警报

`Dismiss package malware alerts` 规则是一项 GitHub 预设规则，会自动忽略将某个软件包的所有版本标记为恶意版本的警报。 如果您的项目依赖于某个**内部**包，且该包与某个恶意**公共**包具有相同的生态系统和名称，则Dependabot可能会生成误报，随后该规则会自动将其忽略。

> \[!IMPORTANT]
> 请注意，如果参与者添加在所有版本中真正恶意的依赖项，此规则将自动消除相关警报。

该 `Dismiss package malware alerts` 规则默认处于禁用状态，但可在任何存储库中使用 Dependabot malware alerts 启用。

### 关于 自定义自动分类规则

> \[!NOTE]
>
> 用于 自定义自动分类规则 的 Dependabot alerts 在公共存储库上以及在启用了 [GitHub Team](/zh/get-started/learning-about-github/about-github-advanced-security) 的 GitHub Code Security 中的任何组织拥有的存储库上可用。

使用 自定义自动分类规则时，可以创建自己的规则，根据目标元数据自动消除或重新打开警报，例如严重性、包名称、CWE 等。 你也可以指定你希望 Dependabot alerts 为其打开拉取请求的 Dependabot 有关详细信息，请参阅“[自定义自动分类规则以确定 Dependabot 警报的优先级](/zh/code-security/dependabot/dependabot-auto-triage-rules/customizing-auto-triage-rules-to-prioritize-dependabot-alerts)”。

可以从存储库的 **“设置”** 选项卡创建自定义规则，前提是存储库属于具有许可证的组织 GitHub Code Security or GitHub Advanced Security。 有关详细信息，请参阅[将自定义自动会审规则添加到仓库](/zh/code-security/dependabot/dependabot-auto-triage-rules/customizing-auto-triage-rules-to-prioritize-dependabot-alerts#adding-custom-auto-triage-rules-to-your-repository)。

### 关于自动消除警报

虽然你可能会发现使用自动分类规则自动消除警报很有用，但你仍然可以重新打开自动消除的警报并进行筛选以查看哪些警报已自动消除。 有关详细信息，请参阅“[管理已由 Dependabot 自动分类规则自动消除的警报](/zh/code-security/dependabot/dependabot-auto-triage-rules/managing-automatically-dismissed-alerts)”。

此外，自动消除的警报仍可用于报告和查看，也可在警报元数据发生更改时重新自动打开，例如：

* 如果将依赖项的范围从开发更改为生产。
* 如果 GitHub 修改相关通告中的某些元数据。

自动消除的警报由 `resolution:auto-dismiss` 关闭原因定义。 自动消除活动包含在警报 Webhook、REST 和 GraphQL API 以及审核日志中。 更多信息，请参阅 [适用于 Dependabot alerts 的 REST API 终结点](/zh/rest/dependabot/alerts)，以及 `repository_vulnerability_alert` 中的“[](/zh/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization#repository_vulnerability_alert-category-actions)”部分。

## 后续步骤

若要开始使用 Dependabot 自动分类规则，请参阅 [使用 GitHub 预设规则确定 Dependabot 警报的优先级](/zh/code-security/dependabot/dependabot-auto-triage-rules/using-github-preset-rules-to-prioritize-dependabot-alerts)。

若要自定义自动排查体验，请参阅 [自定义自动分类规则以确定 Dependabot 警报的优先级](/zh/code-security/dependabot/dependabot-auto-triage-rules/customizing-auto-triage-rules-to-prioritize-dependabot-alerts)。