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. For more information, 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. For more information, 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. For more information, 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. For more information, see "About dependency review."
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. For more information, 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. For more information, 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. For more information, see "About GitHub Certifications."