Skip to main content

查看和更新 Dependabot 警报

如果 GitHub Enterprise Server 发现项目中存在不安全的依赖项,您可以在仓库的 Dependabot 警报选项卡中查看详细信息。 然后,您可以更新项目以解决或忽略警报。

Repository administrators and organization owners can view and update dependencies, as well as users and teams with explicit access.

Note: Your site administrator must set up Dependabot 更新 for 您的 GitHub Enterprise Server 实例 before you can use this feature. For more information, see "Enabling Dependabot for your enterprise."

仓库的 Dependabot 警报 选项卡列出所有打开和关闭的 Dependabot 警报 以及对应的 Dependabot 安全更新。 可以 按程序包、生态系统或清单筛选警报。 您可以 对警报列表进行排序,单击特定警报以获取更多详细信息。 您还可以关闭或重新打开警报。 更多信息请参阅“关于 Dependabot 警报”。

您可以为使用 Dependabot 警报 和依赖关系图的任何仓库启用自动安全更新。 更多信息请参阅“关于 Dependabot 安全更新“。

关于仓库中有漏洞的依赖项的更新

GitHub Enterprise Server 在检测到您的代码库正在使用具有已知安全风险的依赖项时会生成 Dependabot 警报。 对于启用了 Dependabot 安全更新 的仓库,当 GitHub Enterprise Server 在默认分支中检测到有漏洞的依赖项时,Dependabot 会创建拉取请求来修复它。 拉取请求会将依赖项升级到避免漏洞所需的最低安全版本。

您可以使用 Dependabot 警报 选项卡中的下拉菜单对 Dependabot 警报 进行排序和过滤,也可以在搜索栏中键入过滤条件作为键:值对。 可用的过滤器是存储库(例如 repo:my-repository)、包(例如 package:django)、生态系统(例如 ecosystem:npm)、清单(例如 manifest:webwolf/pom.xml)、状态(例如 is:open) 以及公告是否有补丁(例如 has: patch)。

每个 Dependabot 警报都有一个唯一的数字标识符,Dependabot 警报 选项卡列出了每个检测到的漏洞的警报。 旧版 Dependabot 警报 按依赖项对漏洞进行分组,并为每个依赖项生成一个警报。 如果导航到旧版 Dependabot 警报,则会将您重定向到为该包筛选的 Dependabot 警报 选项卡。

查看 Dependabot 警报

  1. 在 您的 GitHub Enterprise Server 实例 上,导航到仓库的主页面。
  2. 在仓库名称下,单击 Security(安全)Security 选项卡
  3. 在安全侧边栏中,单击 Dependabot 警报。 如果缺少此选项,则表示你无权访问安全警报,需要被授予访问权限。 更多信息请参阅“管理存储库的安全和分析设置”。Dependabot 警报 tab
  4. (可选)若要筛选警报,请选择 Repository(仓库)Package(包)Ecosystem(生态系统)Manifest(清单)下拉菜单,然后单击要应用的筛选器。 您还可以在搜索栏中键入过滤条件。 例如 ecosystem:npmhas:patch。 要对警报进行排序,请选择 Sort(排序)下拉菜单,然后单击要作为排序依据的选项,或在搜索栏中键入 sort:,然后从建议中选择一个选项(例如,sort:newest)。

还可以单击警报上的标签以仅显示该类型的警报。 Screenshot of the filter and sort menus in the Dependabot 警报 tab

  1. 单击要查看的警报。 Alert selected in list of alerts

查看和修复警报

请务必确保所有依赖项都没有任何安全漏洞。 当 Dependabot 发现依赖项中的漏洞时,应评估项目的暴露水平,并确定要采取哪些补救措施来保护应用程序。

如果依赖项有修补的版本可用,则可以生成 Dependabot 请求,以直接从 Dependabot 警报更新此依赖项。 如果您启用了 Dependabot 安全更新,则拉取请求可能会在 Dependabot 警报中链接。

如果修补的版本不可用,或者您无法更新到安全版本,Dependabot 会共享其他信息,以帮助您确定后续步骤。 单击以查看 Dependabot 警报时,可以看到依赖项的安全通告的完整详细信息,包括受影响的功能。 然后,可以检查代码是否调用受影响的函数。 此信息可以帮助您进一步评估风险级别,并确定解决方法或是否能够接受安全公告所代表的风险。

修复有漏洞的依赖项

  1. 查看警报的详细信息。 更多信息请参阅“查看 Dependabot 警报”(上文)。

  2. 如果启用了 Dependabot 安全更新 ,则可能存在指向将修复依赖项的拉取请求的链接。 或者,可以单击警报详细信息页面顶部的 创建 Dependabot 安全更新以创建拉取请求。 创建 Dependabot 安全更新按钮

  3. (可选)如果不使用 Dependabot 安全更新,则可以使用页面上的信息来决定要升级到的依赖项版本,并创建拉取请求以将依赖项更新到安全版本。

  4. 当您准备好更新依赖项并解决漏洞时,合并拉取请求。

    Dependabot 提出的每个拉取请求都包含可用于控制 Dependabot 的命令的相关信息。 更多信息请参阅“管理依赖项更新的拉取请求”。

忽略 Dependabot 警报

提示: 您只能关闭打开的警报。

如果计划大量工作来升级依赖项,或者决定不需要修复警报,则可以忽略警报。 通过忽略已评估的警报,可以更轻松地在新警报出现时对其进行分类。

  1. 查看警报的详细信息。 更多信息请参阅“查看有漏洞的依赖项”(上文)。
  2. 选择“Dismiss(忽略)”下拉列表,然后单击忽略警报的原因。 未修复的已忽略警报可以稍后重新打开。 选择通过 "Dismiss(忽略)"下拉菜单忽略警报的原因

查看和更新已关闭的警报

You can view all open alerts, and you can reopen alerts that have been previously dismissed. 无法重新打开已修复的已关闭警报。

  1. 在 您的 GitHub Enterprise Server 实例 上,导航到仓库的主页面。

  2. 在仓库名称下,单击 Security(安全)Security 选项卡

  3. 在安全侧边栏中,单击 Dependabot 警报。 如果缺少此选项,则表示你无权访问安全警报,需要被授予访问权限。 更多信息请参阅“管理存储库的安全和分析设置”。Dependabot 警报 tab

  4. 要仅查看已关闭的警报,请单击 Closed(已关闭)显示"已关闭"选项的屏幕截图

  5. Click the alert that you would like to view or update. 显示突出显示的 dependabot 警报的屏幕截图

  6. (可选)如果警报已消除,并且您希望重新打开它,请单击 Reopen(重新打开)。 无法重新打开已修复的警报。

    Note: This feature was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The feature is available in 3.5.4 and later. For more information about upgrades, contact your site administrator.

    For more information about determining the version of GitHub Enterprise Server you're using, see "About versions of GitHub Docs."

    显示"重新打开"按钮的屏幕截图