# 关于机密扫描警报

了解不同类型的 机密扫描警报。

## 关于警报类型

有二种类型的机密扫描警报：

* **机密扫描警报：** 在存储库中 **<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** 检测到支持的机密时，在存储库选项卡中向用户报告。
* **推送保护警报：** 当贡献者绕过推送保护时，会在存储库的\*\*<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\*\* 选项卡中向用户报告。

## 关于 机密扫描警报

在为存储库启用 secret scanning 或将提交推送到启用了 secret scanning 的存储库时，GitHub 会扫描内容，以查找与服务提供商定义的模式以及企业、组织或存储库中定义的任何自定义模式匹配的机密。

当 secret scanning 检测到机密时，GitHub 将生成警报。
GitHub 在 **<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** 存储库的选项卡中显示警报。 如果同一机密在单个文件中多次出现，则只创建一个警报。

为了帮助你更有效地对警报进行会审， GitHub 可将警报分为两个列表：

* **默认** 警报
* **通用** 警报

### 默认警报列表

默认警报列表显示与支持的模式和指定的自定义模式相关的警报。 这是警报的主要视图。

### 泛型警报列表

泛型警报列表显示与使用模式和确定性方法（如私钥） 这些类型的警报可以具有较高的测试中使用的误报或机密比率。 可以从默认警报列表切换到通用警报列表。

GitHub 将继续将新的模式和机密类型发布到通用警报列表。

此外，属于此类别的警报：

* 每个存储库的警报数量（包括打开和关闭的警报）最多限制为 5000 个。
* 不会显示在安全概述的摘要视图中，仅显示在“Secret scanning”视图中。
* 对于通用模式GitHub，仅在 ，仅显示第一个检测到的位置。

若要GitHub扫描通用模式机密，必须先为存储库或组织启用该功能。 有关详细信息，请参阅 [为泛型模式启用机密扫描](/zh/enterprise-server@3.22/code-security/how-tos/secure-your-secrets/detect-secret-leaks/enabling-secret-scanning-for-generic-patterns)。

如果访问资源需要配对的凭据，则只有在同一文件中检测到该配对的两个凭据时，机密扫描才会创建警报。 这可确保最关键的泄漏不会隐藏在有关部分泄漏的信息后面。 对匹配还有助于减少误报，因为对的两个元素必须一起使用才能访问提供商的资源。

## 关于推送保护警报

推送保护会对包含受支持机密的推送操作进行扫描。 如果推送保护检测到受支持的机密，将会阻止该次推送。 当参与者绕过推送保护将机密推送到存储库时，将生成推送保护警报并在存储库的选项卡中显示 **<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** 。 若要查看某个存储库的所有推送保护警报，必须在警报页面中按 `bypassed: true` 进行筛选。 有关详细信息，请参阅“[查看和筛选来自机密扫描的警报](/zh/enterprise-server@3.22/code-security/how-tos/manage-security-alerts/manage-secret-scanning-alerts/viewing-alerts#filtering-alerts)”。

如果访问资源需要配对的凭据，则只有在同一文件中检测到该配对的两个凭据时，机密扫描才会创建警报。 这可确保最关键的泄漏不会隐藏在有关部分泄漏的信息后面。 对匹配还有助于减少误报，因为对的两个元素必须一起使用才能访问提供商的资源。

> \[!NOTE]
>
> 推送保护可能不支持某些旧版令牌，因为这些令牌生成的误报数可能高于其最新版本。 推送保护也可能不适用于旧令牌。 对于 Azure 存储密钥等令牌，GitHub 仅支持“最近创建”令牌，不支持与旧模式匹配的令牌。 有关推送保护限制的详细信息，请参阅 [机密扫描检测范围](/zh/enterprise-server@3.22/code-security/reference/secret-security/secret-scanning-scope)。

## 延伸阅读

* [支持的机密扫描模式](/zh/enterprise-server@3.22/code-security/reference/secret-security/supported-secret-scanning-patterns)
* [为泛型模式启用机密扫描](/zh/enterprise-server@3.22/code-security/how-tos/secure-your-secrets/detect-secret-leaks/enabling-secret-scanning-for-generic-patterns)