Skip to main content

管理来自机密扫描的警报

您可以查看并关闭已检入仓库的密码的警报。

谁可以使用此功能

People with admin access to a repository can view and dismiss secret scanning alerts for the repository.

合作伙伴的机密扫描警报 在 GitHub.com 上的公共存储库和公共 npm 包中自动运行,以向服务提供商通知泄漏的机密情况。

用户的机密扫描警报 在所有公共存储库上免费提供。 使用 GitHub Enterprise Cloud 且拥有 GitHub Advanced Security 许可证的组织也可以在其专用存储库和内部存储库上启用 用户的机密扫描警报。

如果你的企业拥有 GitHub Advanced Security 的许可证,则 有关详细信息,请参阅 “关于机密扫描”和“关于 GitHub 高级安全性”。

有关如何免费试用 GitHub Advanced Security 的信息,请参阅“安装 GitHub Advanced Security 试用版”。

管理 机密扫描警报

注意:仅为启用了 用户的机密扫描警报 的存储库创建警报。 使用免费 合作伙伴的机密扫描警报 服务在公共存储库和公共 npm 包中发现的机密将直接报告给合作伙伴,而无需创建警报。 有关详细信息,请参阅“机密扫描模式”。

  1. 在 GitHub.com 上,导航到存储库的主页。
  2. 在存储库名称下,单击“ 安全性”。 如果看不到“安全性”选项卡,请选择 下拉菜单并单击“安全性” 。 存储库标头的屏幕截图,其中显示了选项卡。 “安全性”选项卡以深橙色边框突出显示。
  3. 在左边栏的“漏洞警报”下,单击“Secret scanning”。
  4. 在“Secret scanning”下,单击要查看的警报。
  5. (可选)要对令牌执行验证检查,请在警报的右上角单击 。 有关详细信息,请参阅“验证合作伙伴模式”。

注意: 如果为存储库启用了自动验证检查,则只能对存储库中检测到的模式执行按需验证检查。 有关详细信息,请参阅“允许对存储库中的合作伙伴模式进行验证检查”。

  1. (可选)如果泄露的机密是 GitHub 令牌,则还可以查看令牌元数据。 有关查看令牌元数据的详细信息,请参阅“查看GitHub 令牌元数据”。

  2. 若要消除警报,请选择“关闭原因”下拉菜单,然后单击原因以解决警报。

    secret scanning 警报的屏幕截图。 标题为“关闭为”的下拉菜单已展开,并用深橙色边框突出显示。

  3. (可选)在“注释”字段中,添加消除注释。 消除操作注释将添加到警报时间线,可在审核和报告期间用作理由。 可以在警报时间线中查看所有已消除警报和消除注释的历史记录。 还可以使用 Secret scanning API 检索或设置注释。 注释包含在 resolution_comment 字段中。 有关详细信息,请参阅 REST API 文档中的“机密扫描”。

  4. 单击“关闭警报”。

验证合作伙伴模式

注意: 合作伙伴模式的验证检查目前为 beta 版,可能会发生更改。

GitHub.com 上所有类型的存储库都提供针对合作伙伴模式的有效性检查。 若要使用此功能,必须具有 GitHub Advanced Security 的授权许可。

通过将机密发送给相关合作伙伴,你可以允许 secret scanning 来检查存储库中找到的机密的有效性。

可以在存储库、组织或企业的代码安全设置中为支持的合作伙伴模式启用自动验证检查。 GitHub 定期将模式发送给相关合作伙伴,以检查机密的有效性,并在警报视图中显示机密的验证状态。

有关在存储库、组织或企业中为合作伙伴模式启用自动验证检查的详细信息,请参阅“允许对存储库中的合作伙伴模式进行验证检查”、“允许对组织中的合作伙伴模式进行验证检查”和“管理高级安全功能”。

如果存储库启用了验证检查,则还可以通过单击警报视图中的 对机密执行按需验证检查。 GitHub 将模式发送给相关合作伙伴,并在警报视图中显示机密的验证状态。

可以使用泄露机密的验证状态来帮助确定需要修正步骤的机密的优先级。

有效期结果
活动机密GitHub 确认此机密处于活动状态
活动机密GitHub 向此机密的提供者进行了核实,发现此机密处于活动状态
可能处于活动状态的机密GitHub 尚不支持对此令牌类型进行验证检查
可能处于活动状态的机密GitHub 无法验证此机密
机密显示为非活动状态应确保未发生未经授权的访问

有关哪些合作伙伴支持验证检查的详细信息,请参阅“受支持的机密”。

查看 GitHub 令牌元数据

注意:GitHub 令牌的元数据目前为公共 beta 版本,可能会有变动。

在活动的 GitHub 令牌警报视图中,可以查看有关令牌的某些元数据。 此元数据可以帮助你识别令牌,并确定要采取的修正步骤。 有关查看单个警报的详细信息,请参阅“管理 secret scanning 警报”。

令牌(如personal access token和其他凭据)被视为个人信息。 有关使用 GitHub令牌的详细信息,请参阅 GitHub 的隐私声明可接受的使用政策

GitHub 令牌的 UI 的屏幕截图,其中显示了令牌元数据。

GitHub 令牌的元数据可用于任何启用了机密扫描的存储库的活动令牌。 如果令牌已被撤销或无法验证其状态,则元数据将不可用。 GitHub 会自动撤销公共存储库中的 GitHub 令牌,因此公共存储库中 GitHub 令牌的元数据极有可能不可用。 以下元数据可用于活动的 GitHub 令牌:

元数据描述
机密名称GitHub 令牌的创建者为该令牌提供的名称
机密所有者令牌所有者的 GitHub 句柄
创建时间令牌的创建日期
过期日期令牌的过期日期
上次使用时间上次使用令牌的日期
访问令牌是否具有组织访问权限

保护受到威胁的密码

只要密码被提交到仓库,便应视为受到威胁。 GitHub 建议对受到威胁的密码执行以下操作:

  • 对于受到威胁的 GitHub personal access token,请删除受到威胁的令牌,创建新令牌,然后更新使用旧令牌的任何服务。 有关详细信息,请参阅“管理个人访问令牌”。
  • 对于所有其他机密,请先确认提交到 GitHub Enterprise Cloud 的机密是有效的。 如果有效,请创建新机密,更新使用旧机密的所有服务,然后删除旧机密。

注意:如果在 GitHub.com 上的公共存储库中检测到机密,并且该机密也与合作伙伴模式匹配,则会生成警报,并将潜在的机密报告给服务提供商。 有关合作伙伴模式的详细信息,请参阅“机密扫描模式”。

配置 机密扫描警报

的通知

增量扫描和历史扫描的通知不同。

增量扫描

当检测到新的机密时,GitHub Enterprise Cloud 会根据用户的通知首选项,通知对存储库安全警报具有访问权限的所有用户。 这些用户包括:

  • 存储库管理员
  • 安全管理员
  • 拥有自定义角色(具有读取/写入访问权限)的用户
  • 组织所有者和企业所有者(如果他们是机密泄露的存储库的管理员)

注意:意外提交机密的提交作者将收到通知(无论其通知首选项如何)。

你将收到电子邮件通知,前提是:

  • 你正在监视存储库。
  • 你已启用存储库上“所有活动”或自定义“安全警报”的通知。
  • 在通知设置中,在“订阅”下,然后在“监视”下,你已选择通过电子邮件接收通知。
  1. 在 GitHub.com 上,导航到存储库的主页。

  2. 若要开始监视存储库,请选择“监视”。

    存储库主页的屏幕截图。 标题为“监视”的下拉菜单,用橙色边框突出显示。

  3. 在下拉菜单中,单击“所有活动”。 或者,若要仅订阅安全警报,请单击“自定义”,然后单击“安全警报”。

  4. 导航到个人帐户的通知设置。 这些可在 https://github.com/settings/notifications 中找到。

  5. 在通知设置页上,在“订阅”下,然后在“正在监视”下,选择“通知我”下拉列表。

  6. 选择“电子邮件”作为通知选项,然后单击“保存”。

    用户帐户的通知设置的屏幕截图。 显示一个标题为“订阅”的元素标头和一个标题为“正在监视”的子标头。 标题为“电子邮件”的复选框用橙色边框突出显示。

有关设置通知首选项的详细信息,请参阅“管理存储库的安全和分析设置”和“为单个存储库配置监视设置”。

历史扫描

对于历史扫描,GitHub Enterprise Cloud 通知以下用户:

  • 组织所有者、企业所有者和安全管理者 - 每当历史扫描完成时,即使找不到任何机密,也会发送通知。
  • 存储库管理员、安全管理者和拥有自定义角色(具有读/写访问权限)的用户 - 每当历史扫描检测到机密时,根据他们的通知首选项发送通知。

我们不会通知提交作者。

有关设置通知首选项的详细信息,请参阅“管理存储库的安全和分析设置”和“为单个存储库配置监视设置”。

审核对机密扫描警报的响应

可以使用 GitHub 工具审核为响应secret scanning警报而执行的操作。 有关详细信息,请参阅“审核安全警报”。