Skip to main content

修复安全活动中的警报

了解如何在安全活动中查找和修复警报。

谁可以使用此功能?

具有写入访问权限的用户

启用了 GitHub Secret Protection or GitHub Code Security 的 GitHub Team 上的组织

查看安全活动中的警报

当活动以你具有写权限的存储库中的安全警报为目标时,你可以导航到活动中的存储库警报列表。

  • 显示仓库的“Security”选项卡,单击边栏中“Campaigns”标题下的其中一项活动****。
  • 如果对组织中的多个仓库具有写入访问权限,可显示组织的“Security”选项卡,然后单击边栏中“Campaigns”下的其中一项活动****。
  • 或者,在市场活动的电子邮件通知中单击“View security campaign”****。

此视图显示由“octocat”管理(以深橙色框出)的名为“SQL 注入(CWE-89)”(以灰色突出显示)的活动的当前存储库中的警报。

存储库活动视图的屏幕截图,其中显示了“SQL 注入 (CWE-89)”活动,“活动管理器”以深橙色框出。

修复安全活动中的警报

如果要查看触发安全警报的代码和建议的修复方案,请单击警报名称以显示警报视图。

  1. 当你准备处理一个或多个安全警报时,请确认没有其他人正在处理这些警报。 在活动视图中,可能已在进行修复的警报上会显示 Git 图标。 单击图标以显示链接的工作:

    • 开放式草稿拉取请求可修复此警报。
    • 开放式拉取请求可修复此警报。
    • 某个分支可能包含修复此警报的更改。
  2. 在存储库的活动视图中,选择要修复的警报。

  3. 将安全警报关联到工作分支:

    • 如果所选警报至少有一个“自动修复”建议可用,请单击“提交自动修复”****,并将更改提交到新分支或现有分支。
    • 如果所选警报没有可用的自动修复建议,请单击“创建新分支”****,创建一个用于修复警报的新分支。
  4. 完成警报修复和解决方案测试后,请为你的更改创建拉取请求,并请求活动管理器进行审查。

提示

如果你在活动中对多个存储库拥有写入权限,请单击存储库中“活动进度”框中的链接,以显示活动的组织级视图。 从该视图打开存储库时,会显示活动警报视图。

将警报分配给 Copilot编程助理

注意

此选项目前以公共预览版提供,可能会更改。 数据变量.copilot.copilot_coding_agent %} 必须在仓库中可用。

如果已生成自动修复,可以将一个或多个警报分配给 Copilot。 Copilot 将创建拉取请求、应用自动修复,并将你添加为请求的审查者。

通过分配多个警报,Copilot编程助理 将应用修复并迭代代码,以验证更改、检查是否有新的安全问题,并确保没有合并冲突。

  1. 在存储库的活动视图中,选择要分配的警报。
  2. 在警报列表上方,单击 分配给 Copilot

30 秒内,Copilot 将打开拉取请求,以解决分配给 Copilot 和你自己的安全漏洞。 拉取请求将包含修复的摘要以及所做更改的详细信息。 创建后,拉取请求将显示在警报旁边。

使用 GitHub Copilot 聊天 进行安全编码

如果你有权访问 Copilot对话,则可以向 AI 询问有关漏洞、建议的修复方案以及如何测试该修复是否全面的问题。

提示

如果仓库的语义代码搜索索引是最新的,则 Copilot 在仓库上下文中回答类似这些自然语言问题的能力将得到优化。 有关详细信息,请参阅“为 GitHub Copilot 对存储库进行索引编制”。