About secret scanning

GitHub Enterprise Server scans repositories for known types of secrets, to prevent fraudulent use of secrets that were committed accidentally.

Secret scanningは、Organizationが所有するリポジトリでGitHub Advanced Securityが有効化されていれば利用できます。 詳しい情報については、「GitHub Advanced Security について」を参照してください。

ノート: Secret scanningはGitHub Enterprise Server 3.0ではベータでした。 secret scanningの一般に利用なリリースについては、GitHub Enterprise Serverの最新リリースにアップグレードしてください。 For more information about upgrading your GitHub Enterprise Server instance, see "About upgrades to new releases" and refer to the Upgrade assistant to find the upgrade path from your current release version.

Note: Your site administrator must enable secret scanning for your GitHub Enterprise Server instance before you can use this feature. For more information, see "Configuring secret scanning for your appliance."

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 Enterprise Server, 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.

About secret scanning on GitHub Enterprise Server

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 sends an email alert to the contributor who committed the secret to the repository, with a link to the related secret scanning alert. The commit author can then view the alert in the repository, and resolve the alert.

  • GitHub displays an alert in the repository.

For more information about viewing and resolving secret scanning alerts, see "Managing alerts from secret scanning."

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."

To monitor results from secret scanning across your repositories, you can use the secret scanning API. For more information about API endpoints, see "Secret scanning."

List of supported secrets

GitHub currently scans repositories for secrets issued by the following service providers.

ProviderサポートされているシークレットAPIスラッグ
Adafruit IOAdafruit IO Keyadafruit_io_key
AzureAzure SQL Connection Stringazure_sql_connection_string Azure
DopplerDoppler Personal Tokendoppler_personal_token
DopplerDoppler Service Tokendoppler_service_token
DopplerDoppler CLI Tokendoppler_cli_token
DopplerDoppler SCIM Tokendoppler_scim_token Dropbox
DynatraceDynatrace Access Tokendynatrace_access_token Dynatrace
StripeStripe Live API Secret Keystripe_live_secret_key
StripeStripe Test API Secret Keystripe_test_secret_key
StripeStripe Live API Restricted Keystripe_live_restricted_key
StripeStripe Test API Restricted Keystripe_test_restricted_key Tencent Cloud

Note: Secret scanning does not currently allow you to define your own patterns for detecting secrets.

Further reading

このドキュメントは役立ちましたか?

プライバシーポリシー

これらのドキュメントを素晴らしいものにするのを手伝ってください!

GitHubのすべてのドキュメントはオープンソースです。間違っていたり、はっきりしないところがありましたか?Pull Requestをお送りください。

コントリビューションを行う

OR, コントリビューションの方法を学んでください。

問題がまだ解決していませんか?