Skip to main content

使用 GitHub UI 中的推送保护

了解 secret scanning 在更改中检测到机密时取消阻止提交的选项。

谁可以使用此功能?

具有管理员角色的存储库所有者、组织所有者、安全管理员和用户

关于 GitHub UI 中的推送保护

当你从 GitHub UI 创建或编辑文件时,推送保护会通过阻止包含受支持的机密的提交来防止你意外将机密提交到存储库。

应该:

GitHub 在 Web UI 中一次只显示一个检测到的秘密。 如果存储库中已检测到特定机密并且警报已存在,则 GitHub 不会阻止该机密。

组织所有者可以提供在阻止推送时显示的自定义链接。 此自定义链接可以包含特定于组织的资源和建议。 例如,自定义链接可以指向自述文件,其中包含有关组织的机密保管库、向哪些团队和个人呈报问或是组织对于处理机密和重写提交历史记录的已批准策略的信息。

解决被阻止的提交

使用 Web UI 尝试将受支持的机密提交到受推送保护保护的存储库时,GitHub 将阻止提交。

你将看到一个对话框,其中包含有关机密位置的信息,以及允许推送机密的选项。 机密还会在文件中加下划线,以便可以轻松找到它。

若要解决 Web UI 中被阻止的提交,需要从文件中删除机密。 删除机密后,即可提交更改。

Note

若要了解如何解决命令行上被阻止的推送,请参阅“从命令行使用推送保护”。

绕过推送保护

如果 GitHub 阻止了你认为可以安全提交的机密,则你能够通过指定允许机密的原因来绕过阻止。

允许推送机密时,将在“安全性”选项卡中创建警报。如果指定机密为误报或仅在测试中使用,则 GitHub 会关闭警报,且不会发送通知。 如果指定机密是真实的并且稍后将修复它,GitHub 会将安全警报保持打开状态,并向提交的作者以及存储库管理员发送通知。 有关详细信息,请参阅“管理来自机密扫描的警报”。

当参与者绕过机密的推送保护块时,GitHub 还会向选择接收电子邮件通知的组织所有者、安全管理员和存储库管理员发送电子邮件警报。

  1. 在 GitHub 阻止提交时出现的对话框中,查看机密的名称和位置。

  2. 选择最能描述为何应该能够推送机密的选项。

    • 如果机密仅在测试中使用,并且不会构成任何威胁,请单击“它在测试中使用”。
    • 如果检测到的字符串不是机密,请单击“它是误报”。
    • 如果机密是真实的,但你打算稍后修复它,请单击“稍后修复”。
  3. 单击“允许机密”。

延伸阅读