Skip to main content

This version of GitHub Enterprise Server was discontinued on 2023-09-25. No patch releases will be made, even for critical security issues. For better performance, improved security, and new features, upgrade to the latest version of GitHub Enterprise Server. For help with the upgrade, contact GitHub Enterprise support.

Secret scanning patterns

Lists of supported secrets and the partners that GitHub works with to prevent fraudulent use of secrets that were committed accidentally.

Secret scanning is available for organization-owned repositories in GitHub Enterprise Server if your enterprise has a license for GitHub Advanced Security. For more information, see "About secret scanning" and "About GitHub Advanced Security."

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

You may not be able to enable or disable secret scanning, if an enterprise owner has set a GitHub Advanced Security (GHAS) policy at the enterprise level. For more information, see "Enforcing policies for code security and analysis for your enterprise."

About secret scanning alerts

When secret scanning is enabled, GitHub scans repositories for secrets issued by a large variety of service providers and generates secret scanning alerts.

You can see these alerts on the Security tab of the repository.

If access to a resource requires paired credentials, then secret scanning will create an alert only when both parts of the pair are detected in the same file. This ensures that the most critical leaks are not hidden behind information about partial leaks. Pair matching also helps reduce false positives since both elements of a pair must be used together to access the provider's resource.

If you use the REST API for secret scanning, you can use the Secret type to report on secrets from specific issuers. For more information, see "Secret scanning."

Note: You can also define custom secret scanning patterns for your repository, organization, or enterprise. For more information, see "Defining custom patterns for secret scanning."

About push protection alerts

Push protection alerts are user alerts that are reported by push protection. Secret scanning as a push protection currently scans repositories for secrets issued by some service providers.

If access to a resource requires paired credentials, then secret scanning will create an alert only when both parts of the pair are detected in the same file. This ensures that the most critical leaks are not hidden behind information about partial leaks. Pair matching also helps reduce false positives since both elements of a pair must be used together to access the provider's resource.

Older versions of certain tokens may not be supported by push protection as these tokens may generate a higher number of false positives than their most recent version. Push protection may also not apply to legacy tokens. For tokens such as Azure Storage Keys, GitHub only supports recently created tokens, not tokens that match the legacy patterns. For more information about push protection limitations, see "Troubleshooting secret scanning."

Supported secrets

This table lists the secrets supported by secret scanning. You can see the types of alert that get generated for each token.

  • Provider—name of the token provider.

  • Secret scanning alert—token for which leaks are reported to users on GitHub. Applies to private repositories where GitHub Advanced Security and secret scanning enabled.

  • Push protection—token for which leaks are reported to users on GitHub. Applies to repositories with secret scanning and push protection enabled.

    Note: Older versions of certain tokens may not be supported by push protection as these tokens may generate a higher number of false positives than their most recent version. Push protection may also not apply to legacy tokens. For tokens such as Azure Storage Keys, GitHub only supports recently created tokens, not tokens that match the legacy patterns. For more information about push protection limitations, see "Troubleshooting secret scanning."

ProviderTokenSecret scanning alertPush protection
Adafruit IOadafruit_io_key
Adobeadobe_device_token
Adobeadobe_service_token
Adobeadobe_short_lived_access_token
Alibaba Cloudalibaba_cloud_access_key_id
alibaba_cloud_access_key_secret
Login with Amazonamazon_oauth_client_id
amazon_oauth_client_secret
Amazon Web Services (AWS)aws_access_key_id
aws_secret_access_key
Amazon Web Services (AWS)aws_session_token
aws_temporary_access_key_id
aws_secret_access_key
Asanaasana_personal_access_token
Atlassianatlassian_api_token
Atlassianatlassian_jwt
Atlassianbitbucket_server_personal_access_token
Azureazure_active_directory_application_secret
Azureazure_cache_for_redis_access_key
Azureazure_devops_personal_access_token
Azureazure_function_key
Azureazure_sas_token
Azureazure_management_certificate
Azureazure_sql_connection_string
Beamerbeamer_api_key
Checkout.comcheckout_production_secret_key
Checkout.comcheckout_test_secret_key
Clojarsclojars_deploy_token
CloudBees CodeShipcodeship_credential
Contentfulcontentful_personal_access_token
Databricksdatabricks_access_token
DigitalOceandigitalocean_oauth_token
DigitalOceandigitalocean_personal_access_token
DigitalOceandigitalocean_refresh_token
DigitalOceandigitalocean_system_token
Discorddiscord_bot_token
Dopplerdoppler_audit_token
Dopplerdoppler_cli_token
Dopplerdoppler_personal_token
Dopplerdoppler_scim_token
Dopplerdoppler_service_token
Dropboxdropbox_access_token
Dropboxdropbox_short_lived_access_token
Duffelduffel_live_access_token
Duffelduffel_test_access_token
Dynatracedynatrace_access_token
Dynatracedynatrace_internal_token
EasyPosteasypost_production_api_key
EasyPosteasypost_test_api_key
Fastlyfastly_api_token
Finicityfinicity_app_key
Flutterwaveflutterwave_live_api_secret_key
Flutterwaveflutterwave_test_api_secret_key
Frame.ioframeio_developer_token
Frame.ioframeio_jwt
FullStoryfullstory_api_key
GitHubgithub_app_installation_access_token
GitHubgithub_oauth_access_token
GitHubgithub_personal_access_token
GitHubgithub_refresh_token
GitHubgithub_ssh_private_key
GitLabgitlab_access_token
GoCardlessgocardless_live_access_token
GoCardlessgocardless_sandbox_access_token
Googlefirebase_cloud_messaging_server_key
Googlegoogle_cloud_storage_service_account_access_key_id
google_cloud_storage_access_key_secret
Googlegoogle_cloud_storage_user_access_key_id
google_cloud_storage_access_key_secret
Googlegoogle_oauth_access_token
Googlegoogle_oauth_client_id
google_oauth_client_secret
Googlegoogle_oauth_refresh_token
Google Cloudgoogle_api_key
Google Cloudgoogle_cloud_private_key_id
Hashicorp Terraformterraform_api_token
Hubspothubspot_api_key
Intercomintercom_access_token
Ionicionic_personal_access_token
Ionicionic_refresh_token
JD Cloudjd_cloud_access_key
Linearlinear_api_key
Linearlinear_oauth_access_token
Loblob_live_api_key
Loblob_test_api_key
Mailchimpmailchimp_api_key
Mailgunmailgun_api_key
Mapboxmapbox_secret_access_token
MessageBirdmessagebird_api_key
Metafacebook_access_token
Midtransmidtrans_production_server_key
Midtransmidtrans_sandbox_server_key
New Relicnew_relic_insights_query_key
New Relicnew_relic_license_key
New Relicnew_relic_personal_api_key
New Relicnew_relic_rest_api_key
Notionnotion_integration_token
Notionnotion_oauth_client_secret
npmnpm_access_token
NuGetnuget_api_key
Octopus Deployoctopus_deploy_api_key
Onfidoonfido_live_api_token
Onfidoonfido_sandbox_api_token
OpenAIopenai_api_key
OpenAIopenai_api_key_v2
Palantirpalantir_jwt
PlanetScaleplanetscale_database_password
PlanetScaleplanetscale_oauth_token
PlanetScaleplanetscale_service_token
Plivoplivo_auth_id
plivo_auth_token
Postmanpostman_api_key
Proctorioproctorio_consumer_key
Proctorioproctorio_linkage_key
Proctorioproctorio_registration_key
Proctorioproctorio_secret_key
Pulumipulumi_access_token
PyPIpypi_api_token
redirect.pizzaredirect_pizza_api_token
RubyGemsrubygems_api_key
Samsarasamsara_api_token
Samsarasamsara_oauth_access_token
SendGridsendgrid_api_key
Sendinbluesendinblue_api_key
Sendinbluesendinblue_smtp_key
Shipposhippo_live_api_token
Shipposhippo_test_api_token
Shopifyshopify_access_token
Shopifyshopify_app_client_credentials
Shopifyshopify_app_client_secret
Shopifyshopify_app_shared_secret
Shopifyshopify_custom_app_access_token
Shopifyshopify_marketplace_token
Shopifyshopify_merchant_token
Shopifyshopify_partner_api_token
Shopifyshopify_private_app_password
Slackslack_api_token
Slackslack_incoming_webhook_url
Slackslack_workflow_webhook_url
Squaresquare_access_token
Squaresquare_production_application_secret
Squaresquare_sandbox_application_secret
SSLMatesslmate_api_key
SSLMatesslmate_cluster_secret
Stripestripe_live_restricted_key
Stripestripe_api_key
Stripestripe_legacy_api_key
Stripestripe_test_restricted_key
Stripestripe_test_secret_key
Stripestripe_webhook_signing_secret
Supabasesupabase_service_key
Tableautableau_personal_access_token
Telegramtelegram_bot_token
Tencent Cloudtencent_cloud_secret_id
Twiliotwilio_access_token
Twiliotwilio_account_sid
Twiliotwilio_api_key
Typeformtypeform_personal_access_token
WorkOSworkos_production_api_key
WorkOSworkos_staging_api_key
Yandexyandex_iam_access_secret
Yandexyandex_cloud_api_key
Yandexyandex_cloud_iam_cookie
Yandexyandex_cloud_iam_token
Yandexyandex_dictionary_api_key
Yandexyandex_predictor_api_key
Yandexyandex_translate_api_key

Further reading

Press alt+up to activate