About GitHub Advanced Security
GitHub has many features that help you improve and maintain the quality of your code. Some of these are included in all plans, such as dependency graph and Dependabot alerts. Other security features require a GitHub Advanced Security (GHAS) license to run on repositories apart from public repositories on GitHub.com.
For information about how you can try GitHub Advanced Security for free, see "Setting up a trial of GitHub Advanced Security."
For information about buying a license for GitHub Advanced Security, see "Signing up for GitHub Advanced Security."
Note: If you want to use GitHub Advanced Security with Azure Repos, see GitHub Advanced Security & Azure DevOps in our resources site. For documentation, see Configure GitHub Advanced Security for Azure DevOps in Microsoft Learn.
About Advanced Security features
A GitHub Advanced Security license provides the following additional features:
-
Code scanning - Search for potential security vulnerabilities and coding errors in your code using CodeQL or a third-party tool. See "About code scanning" and "About code scanning with CodeQL."
-
CodeQL CLI - Run CodeQL processes locally on software projects or to generate code scanning results for upload to GitHub Enterprise Cloud. See "About the CodeQL CLI."
-
Secret scanning - Detect secrets, for example keys and tokens, that have been checked into the repository. If push protection is enabled, GitHub also detects secrets when they are pushed to your repository. Secret scanning alerts for users and push protection are available and free of charge for all user-owned public repositories on GitHub.com. See "About secret scanning" and "About push protection."
-
Custom auto-triage rules - Help you manage your Dependabot alerts at scale. With custom auto-triage rules you have control over the alerts you want to ignore, snooze, or trigger a Dependabot security update for. For more information, see "About Dependabot alerts" and "Customizing auto-triage rules to prioritize Dependabot alerts."
-
Dependency review - Show the full impact of changes to dependencies and see details of any vulnerable versions before you merge a pull request. See "About dependency review."
With a GitHub Copilot Enterprise license, you can also ask GitHub Copilot Chat for help to better understand security alerts in repositories in your organization (code scanning, secret scanning, and Dependabot alerts. See "Asking GitHub Copilot questions in GitHub.com."
The table below summarizes the availability of GitHub Advanced Security features for public and private repositories.
Public repository | Private repository without Advanced Security | Private repository with Advanced Security | |
---|---|---|---|
Code scanning | |||
CodeQL CLI | |||
Secret scanning | |||
Custom auto-triage rules | |||
Dependency review |
For information about Advanced Security features that are in development, see "GitHub public roadmap." For an overview of all security features, see "GitHub security features."
GitHub Advanced Security features are enabled for all public repositories on GitHub.com. Organizations that use GitHub Enterprise Cloud with Advanced Security can additionally enable these features for private and internal repositories.
Deploying GitHub Advanced Security in your enterprise
To learn about what you need to know to plan your GitHub Advanced Security deployment at a high level and to review the rollout phases we recommended, see "Adopting GitHub Advanced Security at scale."
Enabling Advanced Security features
You can quickly enable security features at scale with the GitHub-recommended security configuration, a collection of security enablement settings you can apply to repositories in an organization. You can then further customize GitHub Advanced Security features at the organization level with global settings. See "About enabling security features at scale."
For public repositories these features are permanently on and can only be disabled if you change the visibility of the project so that the code is no longer public.
For other repositories, once you have a license for your enterprise account, you can enable and disable these features at the organization or repository level. See "Managing security and analysis settings for your organization" and "Managing security and analysis settings for your repository."
If you have an enterprise account, license use for the entire enterprise is shown on your enterprise license page. See "Viewing your GitHub Advanced Security usage."
About GitHub Advanced Security Certification
You can highlight your code security knowledge by earning a GitHub Advanced Security certificate with GitHub Certifications. The certification validates your expertise in vulnerability identification, workflow security, and robust security implementation. See "About GitHub Certifications."