Skip to main content

为机密扫描定义自定义模式

使用正则表达式定义自定义模式来保护唯一的机密类型。

谁可以使用此功能?

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

启用了 GitHub Team 的 GitHub Enterprise 或 GitHub Secret Protection 上的组织拥有的存储库

使用 Copilot

定义自定义模式

可以使用 Copilot 机密扫描 根据要检测的模式类型的文本描述生成正则表达式,包括应检测的可选示例字符串。 请参阅“使用 Copilot 机密扫描为自定义模式生成正则表达式”。

定义仓库的自定义模式

在定义自定义模式前,必须确保存储库上启用了 Secret Protection。 有关详细信息,请参阅“为存储库启用机密扫描”。

  1. 在 GitHub 上,导航到存储库的主页面。1. 在仓库名称下,单击 “Settings”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。

    存储库标头的屏幕截图,其中显示了选项卡。 “设置”选项卡以深橙色边框突出显示。
    1. 在边栏的“Security”部分中,单击“ Advanced Security”****。

  2. 在“Secret Protection”下的“Custom patterns”右侧,单击“New pattern”****。 1. 输入新自定义模式的详细信息。 您至少必须提供模式的名称,以及秘密模式格式的正则表达式。

    1. 在“模式名称”字段中,键入模式的名称。
    2. 在“机密格式”字段中,键入机密模式格式的正则表达式。
    3. 可以单击“More options ”来提供密钥格式的其他周围内容或额外匹配要求****。 请参阅“自定义模式参考”。
    4. 提供一个示例测试字符串,用于确保配置与预期模式匹配。

    填充自定义 secret scanning 模式窗体的屏幕截图。

  3. 准备好测试新的自定义模式时,若要识别存储库中的匹配项而不创建警报,请单击“保存并试运行”。

  4. 试运行完成后,你将看到结果示例(最多 1000 个)。 查看结果并确定任何误报结果。

    显示试运行结果的屏幕截图。

  5. 编辑新的自定义模式以修复结果的任何问题,然后测试更改,单击“保存并试运行”。1. 如果对新的自定义模式感到满意,请单击“发布模式”。

  6. 根据需要,若要为自定义模式启用推送保护,请单击“启用”。 有关详细信息,请参阅“关于推送保护”。

    注意

    在试运行成功并发布模式之前,“启用”按钮不可用。

模式创建后,secret scanning 将在 GitHub 仓库中存在的所有分支上扫描整个 Git 历史记录的任何密钥。 有关查看 机密扫描警报 警报的详细信息,请参阅 管理机密扫描警报

定义组织的自定义模式

在定义自定义模式之前,您必须确保在组织中为要扫描的仓库启用 secret scanning。 你可以使用 security configurations 来为组织中的所有存储库启用 secret scanning。 如需了解更多信息,请参阅 关于批量启用安全功能

数据reusables.profile.access_org %}数据reusables.profile.org_settings %}

  1. 在边栏的“安全”部分中,选择“Advanced Security”下拉菜单,然后点击“Global settings”选项。

  2. 在“自定义模式”下,单击“新建模式”。1. 输入新自定义模式的详细信息。 您至少必须提供模式的名称,以及秘密模式格式的正则表达式。

    1. 在“模式名称”字段中,键入模式的名称。
    2. 在“机密格式”字段中,键入机密模式格式的正则表达式。
    3. 可以单击“More options ”来提供密钥格式的其他周围内容或额外匹配要求****。 请参阅“自定义模式参考”。
    4. 提供一个示例测试字符串,用于确保配置与预期模式匹配。

    填充自定义 secret scanning 模式窗体的屏幕截图。

  3. 准备好测试新的自定义模式时,若要在不创建警报的情况下识别所选存储库中的匹配项,请单击“保存并试运行”。

  4. 选择要在其中执行试运行的存储库。

    • 若要在整个组织中执行试运行,请选择“组织中的所有存储库”。****
    • 若要指定要在其中执行试运行的存储库,请选择“所选存储库”,然后搜索并选择最多 10 个存储库。
  5. 准备好测试新的自定义模式后,请单击“运行”。1. 试运行完成后,你将看到结果示例(最多 1000 个)。 查看结果并确定任何误报结果。

    显示试运行结果的屏幕截图。

  6. 编辑新的自定义模式以修复结果的任何问题,然后测试更改,单击“保存并试运行”。1. 如果对新的自定义模式感到满意,请单击“发布模式”。

  7. 根据需要,若要为自定义模式启用推送保护,请单击“启用”。 有关详细信息,请参阅“关于推送保护”。

    注意

    • 启用推送保护的选项仅对已发布的模式可见。
    • 自定义模式的推送保护仅适用于组织中启用了 secret scanning 作为推送保护的存储库。
    • 为常见的自定义模式启用推送保护可能会对参与者造成干扰。

创建模式后,secret scanning 会扫描组织的仓库中的任何敏感信息,包括其所有分支的整个 Git 历史记录。 组织所有者和仓库管理员将会收到关于任何秘密的告警,并且可以在发现秘密的仓库中审查该告警。 要了解有关查看 机密扫描警报 的更多信息,请参阅 管理机密扫描警报

为企业帐户定义自定义模式

注意

  • 在企业级别,只有自定义模式的创建者才能编辑模式,并在试运行中使用它。
  • 只能对具有管理访问权限的存储库执行试运行。 如果企业所有者想要对组织中的任何存储库执行试运行,则必须分配有组织所有者角色才可以。 有关详细信息,请参阅“管理您在企业所属组织中的角色”。
  1. 导航到您的企业。 例如,从 GitHub.com 上的 公司 页面。

  2. 在页面顶部,单击“ Policies”。

  3. “Policies”下,单击“Advanced Security”****。

  4. 在“Advanced Security”下,单击“Security features”****。

  5. 在“机密扫描自定义模式”下,单击“新建模式”。

  6. 输入新自定义模式的详细信息。 您至少必须提供模式的名称,以及秘密模式格式的正则表达式。

    1. 在“模式名称”字段中,键入模式的名称。
    2. 在“机密格式”字段中,键入机密模式格式的正则表达式。
    3. 可以单击“More options ”来提供密钥格式的其他周围内容或额外匹配要求****。 请参阅“自定义模式参考”。
    4. 提供一个示例测试字符串,用于确保配置与预期模式匹配。

    填充自定义 secret scanning 模式窗体的屏幕截图。

  7. 当准备好测试新的自定义模式时,要在不创建警报的情况下识别企业中的匹配项,请单击“保存并试运行”。**** 企业仓库的高级安全秘密扫描试运行 结果的高级安全秘密扫描试运行 创建自定义模式的高级安全秘密扫描

  8. 根据需要,若要为自定义模式启用推送保护,请单击“启用”。 有关详细信息,请参阅“关于推送保护”。

    注意

    • 若要为自定义模式启用推送保护,需要在企业级启用 secret scanning 作为推送保护。
    • 为常见的自定义模式启用推送保护可能会对参与者造成干扰。

创建模式后,secret scanning 扫描企业组织内仓库中的任何机密,并启用 GitHub Secret Protection,包括其所有分支上的整个 Git 历史记录。 组织所有者和仓库管理员会被通知任何发现的机密信息,并且可以在发现机密信息的仓库中查看警报。 要了解有关查看 机密扫描警报 的更多信息,请参阅 管理机密扫描警报

延伸阅读