关于 custom security configurations
建议使用 GitHub-recommended security configuration 保护组织,然后在配置 custom security configurations 之前评估存储库的安全发现。 有关详细信息,请参阅“在组织中应用 GitHub 建议的安全配置”。
使用 custom security configurations,可以为 GitHub 的安全产品创建启用设置集合,以满足组织的特定安全需求。 例如,可以为每个存储库组创建不同的 custom security configuration 以反映其不同级别的可见性、风险容忍度和影响。
还可以选择是否要在配置中包含 GitHub Code Security 或 GitHub Secret Protection 功能。 如果这样做,请记住,这些功能在应用于专用和内部仓库时会产生使用成本(或需要 GitHub Advanced Security 许可证)。 有关详细信息,请参阅“关于 GitHub 高级安全性”。
重要
某些设置的顺序和名称可能会因你使用的许可证不同而有所差异,这取决于使用的是最初的 GitHub Advanced Security 产品的许可证,还是两个新产品(GitHub Code Security 和 GitHub Secret Protection)的许可证。 请参阅创建 GitHub Advanced Security 配置或创建 Secret Protection and Code Security 配置。
创建 Secret Protection and Code Security 配置
-
在 GitHub 的右上角,选择个人资料照片,然后单击“ 你的组织”****。
-
在组织名称下,单击 “设置”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”********。
-
在边栏的“Security”部分,选择“ Advanced Security”下拉菜单,然后单击“Configurations”********。
-
在“ 并在“Security configurations”页面上明确其用途,请为配置命名并创建一段说明。
-
(可选)启用“Secret Protection”,这是一个针对专用和内部仓库的付费功能。 启用 Secret Protection 将启用 secret scanning 的警报。 此外,你可以选择是启用、禁用还是保持以下 secret scanning 功能的现有设置:
- 有效性检查。 若要详细了解合作伙伴模式的验证检查,请参阅 评估来自机密扫描的警报.
- 非提供商模式。 要了解有关扫描非提供者模式的更多信息,请参见“支持的机密扫描模式”和“查看和筛选机密扫描警报”。
- 扫描泛型密码。 要了解详细信息,请参阅“使用 Copilot 机密扫描负责任地检测通用机密”。
- 推送保护。 要了解推送保护,请参阅“关于推送保护”。
- 绕过权限。 通过分配绕过特权,选定的组织成员可以绕过推送保护,并且所有其他参与者都有评审和审批过程。 请参阅“关于推送保护委派绕过”。
- 防止直接关闭警报。 要了解详细信息,请参阅“为机密扫描启用委派的警报消除”。
-
(可选)启用“Code Security”,这是一个针对专用和内部仓库的付费功能。 此外,你可以选择是启用、禁用还是保持以下 code scanning 功能的现有设置:
- 默认设置。 有关默认设置的详细信息,请参阅 配置代码扫描的默认设置。
注意
To create a configuration that you can apply to a repository that uses advanced setup for CodeQL, choose "Enabled with advanced setup allowed". This setting enables default setup in repositories where advanced setup for CodeQL is not detected. Option available from GitHub Enterprise Server 3.19.
- 运行程序类型。 如果要将 code scanning 的特定运行程序作为目标,可以在此步骤选择使用自定义标签的运行程序。 请参阅“配置代码扫描的默认设置”。
- 防止直接关闭警报。 要了解详细信息,请参阅“为代码扫描启用委派的警报消除”。
- 默认设置。 有关默认设置的详细信息,请参阅 配置代码扫描的默认设置。
-
仍然在“Code Security”下,在“Dependency scanning”表格中,选择是启用、禁用还是保持以下依赖扫描功能的现有设置:
- 依赖项关系图。 若要了解依赖项关系图,请参阅“关于依赖关系图”。
提示
启用“Code Security”和依赖项关系图时,这将启用依赖项检查,请参阅“关于依赖项评审”。
- 自动依赖项提交。 若要了解自动依赖项提交,请参阅 为存储库配置自动依赖项提交。
- Dependabot 警报。 若要详细了解 Dependabot,请参阅 关于 Dependabot 警报。
- 安全更新。 要了解安全更新,请参阅“关于 Dependabot 安全更新”。
- 依赖项关系图。 若要了解依赖项关系图,请参阅“关于依赖关系图”。
-
对于“专用漏洞报告”,请选择是要启用、禁用还是保留现有设置。 要了解专用漏洞报告,请参阅“为存储库配置私人漏洞报告”。
-
(可选)在“Policy”部分,可以使用其他选项来控制配置的应用方式:
- 用作新创建的存储库的默认值。 选择“None” 下拉菜单,然后单击“Public”、“Private and internal”或“All repositories”****************。
注意
组织的默认 security configuration 仅自动应用到组织内新创建的存储库。 如果将存储库传输到组织,则仍需将适当的 security configuration 手动应用到存储库。
- 强制执行配置。 阻止存储库所有者更改通过配置启用或禁用的功能(不会强制执行未设置的功能)。 从下拉菜单中选择“Enforce”****。
- 用作新创建的存储库的默认值。 选择“None” 下拉菜单,然后单击“Public”、“Private and internal”或“All repositories”****************。
-
若要完成 custom security configuration 的创建,请单击“保存配置”。
注意
如果你企业中的用户尝试使用 REST API 更改强制配置中某个功能的启用状态,则 API 调用将似乎会成功,但启用状态不会发生更改。
在某些情况下,可能会中断存储库的 security configurations 强制实施。 例如,在以下情况下,code scanning 的启用将不适用于存储库:
- GitHub Actions 最初在存储库上启用,但在存储库中禁用。
- code scanning 配置所需的 GitHub Actions 在存储库中不可用。
- 不应使用 code scanning 默认设置分析语言的定义已更改。
创建 GitHub Advanced Security 配置
-
在 GitHub 的右上角,选择个人资料照片,然后单击“ 你的组织”****。
-
在组织名称下,单击 “设置”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”********。
-
在边栏的“Security”部分,选择“ Advanced Security”下拉菜单,然后单击“Configurations”********。
-
在“Security configurations”部分,单击“New configuration”****。
-
为帮助识别 custom security configuration 并在“New configuration”页面上明确其用途,请为配置命名并创建一段说明。
-
在“GitHub Advanced Security features”行中,选择是包含还是排除 GitHub Advanced Security (GHAS) 功能。
-
在“Secret scanning”表中,选择是要启用、禁用还是保留以下安全功能的现有设置:
- 有效性检查。 若要详细了解合作伙伴模式的验证检查,请参阅 评估来自机密扫描的警报.
- 非提供商模式。 要了解有关扫描非提供者模式的更多信息,请参见“支持的机密扫描模式”和“查看和筛选机密扫描警报”。
- 扫描泛型密码。 要了解详细信息,请参阅“使用 Copilot 机密扫描负责任地检测通用机密”。
- 推送保护。 要了解推送保护,请参阅“关于推送保护”。
- 绕过权限。 通过分配绕过特权,选定的组织成员可以绕过推送保护,并且所有其他参与者都有评审和审批过程。 请参阅“关于推送保护委派绕过”。
- 防止直接关闭警报。 要了解详细信息,请参阅“为机密扫描启用委派的警报消除”。
-
在“Code scanning”表中,选择是要启用、禁用还是保留 code scanning 默认设置的现有设置。
- 默认设置。 有关默认设置的详细信息,请参阅 配置代码扫描的默认设置。
注意
To create a configuration that you can apply to a repository that uses advanced setup for CodeQL, choose "Enabled with advanced setup allowed". This setting enables default setup in repositories where advanced setup for CodeQL is not detected. Option available from GitHub Enterprise Server 3.19.
- 运行程序类型。 如果要将 code scanning 的特定运行程序作为目标,可以在此步骤选择使用自定义标签的运行程序。 请参阅“配置代码扫描的默认设置”。
- 防止直接关闭警报。 要了解详细信息,请参阅“为代码扫描启用委派的警报消除”。
- 默认设置。 有关默认设置的详细信息,请参阅 配置代码扫描的默认设置。
-
在“Dependency scanning”表中,选择是启用、禁用还是保留以下依赖扫描功能的现有设置:
- 依赖项关系图。 若要了解依赖项关系图,请参阅“关于依赖关系图”。
提示
启用“GitHub Advanced Security”和依赖项关系图时,这将启用依赖项检查,请参阅“关于依赖项评审”。
- 自动依赖项提交。 若要了解自动依赖项提交,请参阅 为存储库配置自动依赖项提交。
- Dependabot 警报。 若要详细了解 Dependabot,请参阅 关于 Dependabot 警报。
- 安全更新。 要了解安全更新,请参阅“关于 Dependabot 安全更新”。
- 依赖项关系图。 若要了解依赖项关系图,请参阅“关于依赖关系图”。
-
对于“专用漏洞报告”,请选择是要启用、禁用还是保留现有设置。 要了解专用漏洞报告,请参阅“为存储库配置私人漏洞报告”。
-
(可选)在“Policy”部分,可以使用其他选项来控制配置的应用方式:
- 用作新创建的存储库的默认值。 选择“None” 下拉菜单,然后单击“Public”、“Private and internal”或“All repositories”****************。
注意
组织的默认 security configuration 仅自动应用到组织内新创建的存储库。 如果将存储库传输到组织,则仍需将适当的 security configuration 手动应用到存储库。
- 强制执行配置。 阻止存储库所有者更改通过配置启用或禁用的功能(不会强制执行未设置的功能)。 从下拉菜单中选择“Enforce”****。
- 用作新创建的存储库的默认值。 选择“None” 下拉菜单,然后单击“Public”、“Private and internal”或“All repositories”****************。
-
若要完成 custom security configuration 的创建,请单击“保存配置”。
后续步骤
如需了解如何将 custom security configuration 应用到组织中的仓库,请参阅 删除自定义安全配置。
若要了解如何编辑 custom security configuration,请参阅 编辑自定义安全配置。