关于启用 GitHub Advanced Security
GitHub Advanced Security 功能帮助开发人员改善和维护代码的安全性和质量。 有关详细信息,请参阅“关于 GitHub 高级安全性”。
为企业启用 GitHub Advanced Security 后,所有组织的存储库管理员都可以启用这些功能,���非设置了限制访问的策略。 请参阅“强制实施企业的代码安全性和分析策略”。
还可以通过 API 启用或禁用 GitHub Advanced Security 功能。 有关详细信息,请参阅 REST API 文档中的“适用于机密扫描的 REST API 终结点”。
有关 GitHub Advanced Security 分阶段部署的指导,请参阅 大规模采用 GitHub Advanced Security 简介。
检查你的许可证是否包含 Advanced Security
-
在 的右上角,单击你的个人资料照片,然后单击“企业设置”****。
-
在页面左侧的企业帐户边栏中,单击“ Settings”****。
-
在 “设置”下,单击“许可证”。
-
如果你的许可包括 GitHub Advanced Security,则许可页面将包括显示当前使用情况详细信息的部分。
启用 Advanced Security
的前提条件
-
升级 GitHub Enterprise 许可证以包含 Advanced Security。 有关授权的信息,请参阅“关于 GitHub Advanced Security 的计费”。
-
下载新的许可文件。 请参阅“下载 GitHub Enterprise 许可证”。
-
将新许可证文件上传到 GitHub Enterprise Server。 请参阅“将新许可证上传到 GitHub Enterprise Server”。
-
审查您计划启用的功能的先决条件。
- Code scanning,请参阅“为设备配置代码扫描”。
- Secret scanning,请参阅“为设备配置密码扫描”。
- Dependabot,请参阅“为企业启用 Dependabot”。
启用和禁用 Advanced Security 功能
警告
- 更改此设置将导致 GitHub Enterprise Server 上面向用户的服务重新启动。 你应仔细安排此更改的时间,以最大程度地减少用户的停机时间。
-
在 GitHub Enterprise Server 上的管理帐户中,在任一页面的右上角,单击“”。
-
如果你尚未在“站点管理员”页上,请在左上角单击“站点管理员”。
-
在“ 站点管理”边栏中,单击“管理控制台”。
-
在“设置”边栏中,单击“安全”。
-
在“安全”下,选择要启用的功能,取消选择要禁用的任何功能。
-
在“设置”边栏下,单击“保存设置”。
注意
保存 管理控制台 中的设置会重启系统服务,这可能会导致用户可察觉的停机时间。
-
等待配置运行完毕。
当 GitHub Enterprise Server 完成重启后,你可以设置新启用功能所需的任何额外资源。 请参阅“为设备配置代码扫描”。
通过管理 shell (SSH) 启用或禁用 Advanced Security
你可以通过编程方式在 GitHub Enterprise Server 上启用或禁用功能。 有关 GitHub Enterprise Server 的管理 shell 和命令行实用程序的详细信息,请参阅“访问管理 shell (SSH)”和“命令行实用程序”。
例如,部署用于暂存或灾难恢复的实例时,可以使用基础架构即代码工具启用任何 Advanced Security 功能。
-
通过 SSH 连接到 你的 GitHub Enterprise Server 实例。 如果实例包含多个节点,例如,如果配置了高可用性或异地复制,则通过 SSH 连接到主节点。 如果使用群集,则可以通过 SSH 连接到任何节点。 将 HOSTNAME 替换为实例的主机名,或节点的主机名或 IP 地址。 有关详细信息,请参阅“访问管理 shell (SSH)”。
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
启用 Advanced Security 功能。
-
要启用code scanning,请输入以下命令。
Shell ghe-config app.minio.enabled true ghe-config app.code-scanning.enabled true
ghe-config app.minio.enabled true ghe-config app.code-scanning.enabled true
-
要启用secret scanning,请输入以下命令。
Shell ghe-config app.secret-scanning.enabled true
ghe-config app.secret-scanning.enabled true
-
要启用依赖项关系图,请输入以下命令。
Shell ghe-config app.dependency-graph.enabled true
ghe-config app.dependency-graph.enabled true
-
-
(可选)禁用 Advanced Security 功能。
-
要禁用 code scanning,请输入以下命令。
Shell ghe-config app.code-scanning.enabled false
ghe-config app.code-scanning.enabled false
-
(可选)如果禁用 code scanning,还可以为 Advanced Security 禁用内部 MinIO 服务。 如果为实例启用了 Dependabot updates并且要禁用此服务,则还必须禁用 Dependabot updates。 禁用此服务不会影响 GitHub Actions 或 GitHub Packages 的 MinIO 存储。 有关 Dependabot updates 的详细信息,请参阅“为企业启用 Dependabot”。
-
要禁用 Dependabot updates,请输入以下命令。
Shell ghe-config app.dependabot.enabled false
ghe-config app.dependabot.enabled false
-
要禁用 MinIO,请输入以下命令。
Shell ghe-config app.minio.enabled false
ghe-config app.minio.enabled false
-
-
-
要禁用 secret scanning,请输入以下命令。
Shell ghe-config app.secret-scanning.enabled false
ghe-config app.secret-scanning.enabled false
-
要禁用依赖项关系图,请输入以下命令。
ghe-config app.dependency-graph.enabled false
-
-
若要应用配置,请运行以下命令。
注意
在配置运行过程中,你的 GitHub Enterprise Server 实例 上的服务可能会重启,这可能会导致用户短暂停机。
Shell ghe-config-apply
ghe-config-apply
-
等待配置运行完毕。