Note
安全性活动目前为公共预览版,可能会更改。
什么是安全活动
安全活动是在存储库的默认分支中检测到的一组安全警报,由组织所有者或安全管理员选择进行修正。 在你具有写权限的存储库中创建带有警报的安全活动时,如果订阅了关于“所有活动”或“安全警报”的电子邮件通知,则会收到通知。 此外,打开带有一条或多条活动警报的存储库的“安全性”选项卡时,视图边栏会显示活动名称****。
可通过修复为安全活动选择的一条或多条警报来参与该活动。
修复活动中的警报有何好处
除了有利于解决代码中的重要安全问题外,与修复存储库中的其他警报相比,安全活动中的警报还有多种其他好处。
- 你可以与一位安全团队中的联系人协作。
- 你知道你要修复的是对公司很重要的安全警报。
- 你可能有权访问有针对性的培训材料。
- 无需请求 GitHub Copilot Autofix 建议,因为它已作为起点提供。
- 如果你有权访问 GitHub Copilot Chat,可以提出有关警报和建议修复方法的问题。
- 你正在完善并演示有关安全编码的知识。
查看安全活动中的警报
当活动以你具有写权限的存储库中的安全警报为目标时,你可以导航到活动中的存储库警报列表。
- 显示存储库的“安全性”选项卡,然后单击边栏中“Campaigns”标题下的其中一项活动****。
- 如果已在存储库中启用“所有活动”或“安全警报”的电子邮件通知,请单击活动电子邮件中的“查看安全活动”****。
- 如果对组织中的多个存储库具有写入访问权限,可显示组织的“安全性”选项卡,然后单击边栏中“活动”标题下的其中一项活动****。
此视图显示由“octocat”管理(以深橙色框出)的名为“SQL 注入(CWE-89)”(以灰色突出显示)的活动的当前存储库中的警报。
修复安全活动中的警报
若要查看触发安全警报的代码和建议修复方法,请单击警报名称以显示警报视图。
-
准备好处理一条或多条安全警报后,请检查是否有人正在处理这些警报。 在活动视图中,git 图标会显示在可能正在进行修复的警报上。 单击图标以显示链接的工作:
- 开放式草稿拉取请求可修复此警报。
- 开放式拉取请求可修复此警报。
- 分支可能包含用于修复此警报的更改。
-
在存储库的活动视图中,选择要修复的警报。
-
将安全警报连接到工作分支:
- 如果对于所选警报至少有一个“自动修复”建议可用,请单击“提交自动修复”,并将更改提交到新分支或现有分支****。
- 如果对于所选警报没有可用的自动修复建议,请单击“创建新分支”,以创建可在其中修复警报的新分支****。
-
完成警报修复并测试解决方案后,请针对更改创建拉取请求,并请求活动管理员进行审查。
Tip
如果你对活动中的多个存储库具有写权限,请单击存储库中“活动进度”框中的链接,以显示活动的组织级视图。 在此视图中打开存储库时,会显示活动警报视图。
将 GitHub Copilot Chat用于安全编码
如果你有权访问 Copilot Chat,则可以向 AI 提出有关漏洞的问题并询问建议的修复方案以及如何测试该修复方案是否全面。
若要在处理代码安全问题时充分利用 Copilot Chat,应考虑以下方面:
- 为存储库编制索引,以便为 Copilot Chat提供更多上下文来回答关于存储库代码的问题,请参阅“为 Copilot 聊天编制存储库索引”。
- 明确要求 Copilot Chat使用 GitHub Advanced Security 技能来回答你的问题,例如:“使用 GitHub Advanced Security 技能来说明此警报如何给代码引入漏洞”。