# 访问存储库的代码扫描警报

在安全视图中，你可以探索和评估项目代码中潜在漏洞或错误的警报。

拥有存储库读取权限的任何人都可以查看 code scanning 拉取请求中的注释。 有关详细信息，请参阅“[鉴定拉取请求中的代码扫描警报](/zh/code-security/code-scanning/managing-code-scanning-alerts/triaging-code-scanning-alerts-in-pull-requests)”。

## 查看仓库的警报

需要具有写入权限才能在\*\*<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield" aria-label="shield" role="img"><path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg> Security and quality\*\* 选项卡上查看存储库的所有警报摘要。

默认情况下， code scanning 会筛选警报页，以便仅显示存储库的默认分支的警报。

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

2. 在存储库名称下，单击 **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield" aria-label="shield" role="img"><path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg> Security and quality** 选项卡。如果看不到“<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield" aria-label="shield" role="img"><path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg> Security and quality”选项卡，请选择 **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-kebab-horizontal" aria-label="kebab-horizontal" role="img"><path d="M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path></svg>** 下拉菜单，然后单击 **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield" aria-label="shield" role="img"><path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg> Security and quality**。

3. 在左边栏中，单击“<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-codescan" aria-label="codescan" role="img"><path d="M8.47 4.97a.75.75 0 0 0 0 1.06L9.94 7.5 8.47 8.97a.75.75 0 1 0 1.06 1.06l2-2a.75.75 0 0 0 0-1.06l-2-2a.75.75 0 0 0-1.06 0ZM6.53 6.03a.75.75 0 0 0-1.06-1.06l-2 2a.75.75 0 0 0 0 1.06l2 2a.75.75 0 1 0 1.06-1.06L5.06 7.5l1.47-1.47Z"></path><path d="M12.246 13.307a7.501 7.501 0 1 1 1.06-1.06l2.474 2.473a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM1.5 7.5a6.002 6.002 0 0 0 3.608 5.504 6.002 6.002 0 0 0 6.486-1.117.748.748 0 0 1 .292-.293A6 6 0 1 0 1.5 7.5Z"></path></svg> Code scanning”\*\*\*\*。

4. （可选）使用自由文本搜索框或下拉菜单来筛选警报。 例如，可以按用于标识警报的工具进行筛选。 链接 GitHub 问题显示在列表视图中的相应警报旁边。

   ![code scanning 的警报页面屏幕截图。 搜索框和筛选器下拉菜单以深橙色边框显示。](/assets/images/help/repository/filter-code-scanning-alerts.png)

5. 在“Code scanning”下，单击要探索的警报以显示详细警报页。
   警报页面上的状态和详细信息仅反映存储库默认分支上的警报状态，即使警报存在于其他分支中也是如此。 可以在警报页右侧的“受影响的分支”部分查看非默认分支上的警报状态。 如果默认分支中不存在警报，则警报的状态将显示为“在拉取请求中”或“在分支中”，并将变为灰色。 “开发”部分显示将修复警报的链接分支和拉取请求。\*\*\*\*

6. （可选）如果警报突出显示数据流的问题，请单击“显示路径”以显示从数据源到使用它的接收者的路径。\*\*\*\* 路径视图以编号列表的形式显示数据流中的每个步骤，从用户提供的数据进入代码的位置（源）到该数据在可能不安全的操作中使用的位置（汇点）。

   ![code scanning 警报的屏幕截图。 “显示路径”和“显示更多”链接以深橙色标出。](/assets/images/help/repository/code-scanning-alert-details.png)

   某些警报通过可能触发相同漏洞的代码识别多个路径。 当警报有多个路径时，路径视图上方会显示一个下拉列表，其中显示了可用的路径数。 可以从下拉列表中选择每个路径来单独查看它。

   ![显示 code scanning 警报详细信息页的屏幕截图，其中路径下拉列表显示“3 条可用路径”。](/assets/images/help/repository/multiple-paths-available.png)

7. 来自 CodeQL 分析的警报包含问题描述。 单击“显示更多”以获取有关如何修复代码的指导。

8. （可选）将警报分配给某人以使用右侧显示的“Assignees”控件进行修复，请参阅[分配警报](/zh/code-security/securing-your-organization/fixing-security-alerts-at-scale/about-security-campaigns#assigning-alerts)\*\*\*\*。

有关详细信息，请参阅“[代码扫描警报](/zh/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts)”。

> \[!NOTE]
> 可以在工具状态页面上查看有关 code scanning 分析上次运行时间的信息。 有关详细信息，请参阅“[使用工具状态页进行代码扫描](/zh/code-security/code-scanning/managing-your-code-scanning-configuration/about-the-tool-status-page)”。

## 查看组织的 CodeQL 拉取请求警报的指标

对于来自 code scanning 分析的 CodeQL 警报，可以使用安全概述来查看 CodeQL 在组织内你具有写入访问权限的各存储库的拉取请求中的表现，并确定可能需要采取操作的存储库。 有关详细信息，请参阅“[CodeQL 拉取请求警报指标](/zh/code-security/concepts/code-scanning/pull-request-alert-metrics)”。

## 筛选 code scanning 警报

可以筛选警报视图中显示的 code scanning 警报。 如果存在许多警报，这将非常有用，因为您可以专注于特定类型的警报。 有一些预定义的筛选器和一系列关键字可用于优化显示的警报列表。

从下拉列表中选择关键字时，或者在搜索字段中输入关键字时，仅显示具有结果的值。 这样可以更容易地避免设置没有结果的筛选器。

![警报视图中搜索字段的屏幕截图。 该字段具有“branch:dependabot”，并且会显示具有匹配名称的所有有效分支。](/assets/images/help/repository/code-scanning-filter-keywords.png)

如果输入多个筛选器，视图将显示与所有这些筛选器匹配的警报。 例如，`is:closed severity:high branch:main` 仅显示 `main` 分支上存在的已关闭高严重性警报。 例外情况是与 refs 相关的筛选器（`ref`、`branch` 和 `pr`）：`is:open branch:main branch:next` 将显示来自 `main` 分支和 `next` 分支的开放式警报。

请注意，如果你已筛选掉非默认分支上的警报，但默认分支上存在相同的警报，则任何给定警报的警报页仍将仅反映默认分支上的警报状态，即使该状态与非默认分支的状态冲突也是如此。 例如，如果 `branch-x` 的警报摘要中的“未解决”列表中显示的警报已在默认分支上修复，该警报可能会在警报页上显示“已修复”状态。 可在警报页右侧的“受影响的分支”部分查看筛选的分支的警报状态。

你可以在 `tag` 筛选器前面加上 `-` 以排除带有该标记的结果。 例如，`-tag:style` 仅显示没有 `style` 标记的警报。

### 将结果限制为仅应用程序代码

可以使用“仅应用程序代码中的警报”筛选器或 `autofilter:true` 关键字和值，将结果限于应用程序代码中的警报。 有关自动标记为非应用程序代码的代码类型的详细信息，请参阅“[代码扫描警报](/zh/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-labels-for-alerts-that-are-not-found-in-application-code)”。

## 搜索 code scanning 警报

您可以搜索警报列表。 如果仓库中存在大量警报，或者您不知道警报的确切名称，这很有用。               GitHub 跨以下项执行自由文本搜索：

* 警报的名称
* 警报详细信息（这也包括默认情况下在“显示更多”可折叠部分中隐藏的信息）\*\*\*\*

| 支持的搜索              | 语法示例                | Results                          |
| ------------------ | ------------------- | -------------------------------- |
| 单字搜索               | `injection`         | 返回包含单词 `injection` 的所有警报         |
| 多字词搜索              | `sql injection`     | 返回包含 `sql` 或 `injection` 的所有警报   |
| 精确匹配搜索</br>（使用双引号） | `"sql injection"`   | 返回包含确切短语 `sql injection` 的所有警报   |
| OR 搜索              | `sql OR injection`  | 返回包含 `sql` 或 `injection` 的所有警报   |
| AND 搜索             | `sql AND injection` | 返回包含单词 `sql` 和 `injection` 的所有警报 |

> \[!TIP]
>
> * 多字词搜索等同于 OR 搜索。
> * AND 搜索将返回以任何顺序在警报名称或详细信息中的“任意位置”找到搜索词的结果。\_\_

1. 在 GitHub 上，导航到存储库的主页面。
2. 在存储库名称下，单击 **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield" aria-label="shield" role="img"><path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg> Security and quality** 选项卡。如果看不到“<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield" aria-label="shield" role="img"><path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg> Security and quality”选项卡，请选择 **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-kebab-horizontal" aria-label="kebab-horizontal" role="img"><path d="M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path></svg>** 下拉菜单，然后单击 **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield" aria-label="shield" role="img"><path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg> Security and quality**。
3. 在左边栏中，单击“<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-codescan" aria-label="codescan" role="img"><path d="M8.47 4.97a.75.75 0 0 0 0 1.06L9.94 7.5 8.47 8.97a.75.75 0 1 0 1.06 1.06l2-2a.75.75 0 0 0 0-1.06l-2-2a.75.75 0 0 0-1.06 0ZM6.53 6.03a.75.75 0 0 0-1.06-1.06l-2 2a.75.75 0 0 0 0 1.06l2 2a.75.75 0 1 0 1.06-1.06L5.06 7.5l1.47-1.47Z"></path><path d="M12.246 13.307a7.501 7.501 0 1 1 1.06-1.06l2.474 2.473a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM1.5 7.5a6.002 6.002 0 0 0 3.608 5.504 6.002 6.002 0 0 0 6.486-1.117.748.748 0 0 1 .292-.293A6 6 0 1 0 1.5 7.5Z"></path></svg> Code scanning”\*\*\*\*。
4. 在“筛选器”下拉菜单右侧，在自由文本搜索框中键入关键字以进行搜索。

![警报视图中搜索字段的屏幕截图。 该字段具有预定义的筛选器“is: open branch:main”，并突出显示了“sql 或注入”的自由文本 ](/assets/images/help/repository/code-scanning-search-alerts.png)。

1. 按 <kbd>return</kbd>。 警报列表将包含与搜索条件匹配的未解决 code scanning 警报。

## 审核对 code scanning 警报的响应

可以使用 code scanning 工具审核为响应GitHub警报而执行的操作。 有关详细信息，请参阅“[审核安全警报](/zh/code-security/getting-started/auditing-security-alerts)”。

## 延伸阅读

* [解决代码扫描警报](/zh/code-security/code-scanning/managing-code-scanning-alerts/resolving-code-scanning-alerts)
* [鉴定拉取请求中的代码扫描警报](/zh/code-security/code-scanning/managing-code-scanning-alerts/triaging-code-scanning-alerts-in-pull-requests)
* [配置代码扫描的默认设置](/zh/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning)
* [与代码扫描集成](/zh/code-security/code-scanning/integrating-with-code-scanning/about-integration-with-code-scanning)