About custom security configurations
We recommend securing your enterprise with the GitHub-recommended security configuration, then evaluating the security findings on your repositories before configuring custom security configurations. For more information, see Applying the GitHub-recommended security configuration to your enterprise.
With custom security configurations, you can create collections of enablement settings for GitHub's security products to meet the specific security needs of your enterprise. For example, you can create a different custom security configuration for each organization or group of organizations to reflect their unique security requirements and compliance obligations.
Creating a custom security configuration
Note
The enablement status of some security features is dependent on other, higher-level security features. For example, disabling dependency graph will also disable automatic dependency submission, Dependabot alerts, vulnerability exposure analysis, and security updates.
-
在 GitHub 的右上角,单击你的个人资料照片。
-
根据环境,单击“你的企业”,或单击“你的企业”,然后单击要查看的企业********。
-
在页面左侧的企业帐户边栏中,单击 “设置”。
-
In the left sidebar, click Code security.
-
In the "Configurations" section, click New configuration.
-
To help identify your custom security configuration and clarify its purpose on the "Configurations" page, name your configuration and create a description.
-
In the "GitHub Advanced Security features" row, choose whether to include or exclude GitHub Advanced Security (GHAS) features. If you plan to apply a custom security configuration with GHAS features to private repositories, you must have available GHAS licenses for each active unique committer to those repositories, or the features will not be enabled. See 关于 GitHub 高级安全的计费.
-
In the "Dependency graph and Dependabot" section of the security settings table, choose whether you want to enable, disable, or keep the existing settings for the following security features:
-
Dependency graph. To learn about dependency graph, see 关于依赖关系图.
-
Automatic dependency submission. To learn about automatic dependency submission, see 为存储库配置自动依赖项提交.
-
Dependabot alerts. To learn about Dependabot alerts, see 关于 Dependabot 警报.
-
Security updates. To learn about security updates, see 关于 Dependabot 安全更新.
Note
You cannot manually change the enablement settings for vulnerable function calls. If GitHub Advanced Security features and Dependabot alerts are enabled, vulnerable function calls is also enabled. Otherwise, it is disabled.
-
-
In the "Code scanning" section of the security settings table, choose whether you want to enable, disable, or keep the existing settings for code scanning default setup. To learn about default setup, see 配置代码扫描的默认设置.
-
In the "Secret scanning" section of the security settings table, choose whether you want to enable, disable, or keep the existing settings for the following security features:
- Alerts. To learn about secret scanning, see 关于机密扫描.
- Non-provider patterns. To learn more about scanning for non-provider patterns, see 支持的机密扫描模式 and 查看和筛选机密扫描警报.
- Push protection. To learn about push protection, see 关于推送保护.
-
In the "Private vulnerability reporting" section of the security settings table, choose whether you want to enable, disable, or keep the existing settings for private vulnerability reporting. To learn about private vulnerability reporting, see 为存储库配置私人漏洞报告.
-
Optionally, in the "Policy" section, you can choose to automatically apply the security configuration to newly created repositories depending on their visibility. Select the None dropdown menu, then click Public, Private and internal, or All repositories.
-
Optionally, in the "Policy" section, you can enforce the configuration and block repository owners from changing features that are enabled or disabled by the configuration (features that are not set aren't enforced). Next to "Enforce configuration", select Enforce from the dropdown menu.
Note
If a user in your enterprise attempts to change the enablement status of a feature in an enforced configuration using the REST API, the API call will appear to succeed, but no enablement statuses will change.
Some situations can break the enforcement of security configurations for a repository. For example, the enablement of code scanning will not apply to a repository if:
- GitHub Actions is initially enabled on the repository, but is then disabled in the repository.
- GitHub Actions required by code scanning configurations are not available in the repository.
- The definition for which languages should not be analyzed using code scanning default setup is changed.
-
To finish creating your custom security configuration, click Save configuration.
Next steps
To optionally configure additional secret scanning settings for the enterprise, see Configuring additional secret scanning settings for your enterprise.
To apply your custom security configuration to repositories in your organization, see 删除自定义安全配置.
若要了解如何编辑 custom security configuration,请参阅“编辑自定义安全配置”。