跳至主要内容

关于机密扫描

通过自动检测暴露的凭证,防止秘密被欺诈性使用,从而在被利用之前进行防护。

当 API 密钥和密码等凭证以硬编码的机密形式提交到仓库时,它们会成为未授权访问的目标。机密扫描会自动检测凭证泄漏,帮助您在被利用之前进行保护。

提示

随时,您都可以对组织的代码进行免费评估,以检测泄漏的机密。

要生成报告,请打开组织的 安全与质量标签页,显示 评估页面,然后点击扫描您的组织

机密扫描如何保护您的代码

机密扫描会在仓库的所有分支上扫描整个 Git 历史,以查找硬编码凭证,包括 API 密钥、密码、令牌以及其他已知的机密类型。这帮助您在机密蔓延——凭证在仓库中失控扩散——成为安全风险之前进行识别。GitHub 也会在新增机密类型时定期重新扫描仓库。

GitHub 也会自动扫描

  • 议题中的描述和评论
  • 开放和已关闭的历史议题中的标题、描述和评论
  • 拉取请求中的标题、描述和评论
  • GitHub 讨论中的标题、描述和评论
  • Wiki
  • 私密 gist

机密扫描警报与补救

当机密扫描检测到凭证泄漏时,GitHub 会在您仓库的 安全与质量标签页生成一条警报,提供有关暴露凭证的详细信息。

收到警报后,请立即轮换受影响的凭证,以防止未授权访问。虽然您也可以从 Git 历史中移除机密,但这需要耗费大量时间,且如果您已经撤销了凭证,通常没有必要这样做。

合作伙伴集成

GitHub 与众多服务提供商合作,对检测到的机密进行验证。当检测到合作伙伴机密时,我们会通知相应提供商,以便其采取行动,例如撤销凭证。合作伙伴机密直接报告给提供商,不会显示在您的仓库警报中。欲了解更多信息,请参阅机密扫描合作伙伴计划

可定制性

除了默认检测合作伙伴和提供商的机密外,您还可以扩展和自定义机密扫描,以满足您的需求。

  • 非提供商模式。 将检测范围扩展到不绑定特定服务提供商的机密,例如私钥、连接字符串以及通用 API 密钥。

  • 自定义模式。 定义您自己的正则表达式,以检测默认模式未覆盖的组织特定机密。

  • 有效性检查。 通过检查检测到的机密是否仍然有效来优先进行补救。

  • Copilot 机密扫描。 使用 AI 检测密码等非结构化机密,或生成自定义模式的正则表达式。

关于有效性检查

有效性检查通过验证检测到的机密是否仍然有效,帮助您确定应优先补救哪些机密。启用有效性检查后,机密扫描可能会联系机密的签发服务,以确定凭证是否已被撤销。

有效性检查独立于机密扫描的合作伙伴计划。合作伙伴机密会自动报告给服务提供商以进行撤销,而有效性检查则在您自己的警报中验证机密的状态。欲了解更多信息,请参阅关于有效性检查

我如何访问此功能?

以下仓库类型支持机密扫描

  • 公共仓库: 机密扫描免费自动运行。
  • 组织拥有的私有和内部仓库: 在 GitHub Team 或 GitHub Enterprise Cloud 上启用 GitHub Secret Protection 后可用。
  • 用户拥有的仓库: 在启用了企业托管用户的 GitHub Enterprise Cloud 上可用。当企业在 GitHub Enterprise Server 上启用了 GitHub Secret Protection 时也可用。

后续步骤

延伸阅读

© . This site is unofficial and not affiliated with GitHub, Inc.