Note: Secret scanning for organization-owned repositories is currently in beta and subject to change.
If your project communicates with an external service, you might use a token or private key for authentication. Tokens and private keys are examples of secrets that a service provider can issue. If you check a secret into a repository, anyone who has read access to the repository can use the secret to access the external service with your privileges. We recommend that you store secrets in a dedicated, secure location outside of the repository for your project.
Secret scanning will scan your entire Git history on all branches present in your GitHub repository for any secrets. Service providers can partner with GitHub to provide their secret formats for scanning.
If someone checks a secret with a known pattern into a repository on GitHub AE, secret scanning catches the secret as it's checked in, and helps you mitigate the impact of the leak. Repository administrators are notified about any commit that contains a secret, and they can quickly view all detected secrets in the Security tab for the repository.
Secret scanning is available on all organization-owned repositories as part of GitHub Advanced Security. It is not available on user-owned repositories.
If you're a repository administrator or an organization owner, you can enable secret scanning for repositories that are owned by organizations. You can enable secret scanning for all your repositories, or for all new repositories within your organization. For more information, see "Managing security and analysis settings for your repository" and "Managing security and analysis settings for your organization."
When you push commits to a repository with secret scanning enabled, GitHub scans the contents of the commits for secrets.
When secret scanning detects a secret in a repository, GitHub generates an alert.
GitHub sends an email alert to the repository administrators and organization owners.
GitHub displays an alert in the repository.
Repository administrators and organization owners can grant users and teams access to secret scanning alerts. For more information, see "Managing security and analysis settings for your repository."
GitHub currently scans repositories for secrets issued by the following service providers.
|Provider||Supported secret||API slug|
Note: Secret scanning does not currently allow you to define your own patterns for detecting secrets.