Sobre padrões de secret scanning
O GitHub mantém estes diferentes conjuntos de padrões do secret scanning:
-
Padrões de parceiros. Usado para detectar possíveis segredos em todos os repositórios públicos assim como pacotes npm públicos. Para saber mais sobre nosso programa de parceiros, confira "Programa de verificação de segredo de parceiros".
-
Padrões de alerta do usuário. Usado para detectar segredos potenciais em repositórios públicos com alertas de verificação de segredo para usuários habilitados.
-
Padrões de proteção por push. Usado para detectar possíveis segredos em repositórios que têm o secret scanning como uma proteção por push habilitada.
Proprietários de repositórios públicos, bem como organizações que usam o GitHub Enterprise Cloud com o GitHub Advanced Security, podem habilitar alertas de verificação de segredo para usuários em seus repositórios.
Para obter mais detalhes sobre todos os padrões com suporte, confira a seção "Segredos com suporte" abaixo.
Se você acredita que o secret scanning deveria ter detectado um segredo comitado em seu repositório e não o fez, primeiro você precisa verificar se o GitHub dá suporte ao segredo. Para obter mais informações, consulte as seções abaixo. Para obter informações mais avançadas sobre como solucionar problemas, confira "Solução de problemas com a varredura de segredos".
Sobre os alertas de parceiros
Sempre que o vazamento de um segredo dos provedores de segredos é relatado, alertas de parceiros são enviados para eles. Atualmente, o GitHub verifica os repositórios públicos e pacotes npm públicos em busca de segredos emitidos por provedores de serviços específicos e alerta o provedor de serviços relevante sempre que um segredo é detectado em um commit. Para obter mais informações sobre alertas de verificação de segredo para parceiros, confira "Sobre a verificação de segredo".
Se o acesso a um recurso exigir credenciais emparelhadas, a verificação secreta criará um alerta somente quando ambas as partes do par forem detectadas no mesmo arquivo. Isso garante que os vazamentos mais críticos não estejam ocultos por trás de informações sobre vazamentos parciais. A correspondência de pares também ajuda a reduzir falsos positivos, pois ambos os elementos de um par devem ser usados juntos para acessar o recurso do provedor.
Sobre os alertas de usuário do
Os alertas de usuário são relatados aos usuários no GitHub. Quando alertas de verificação de segredo para usuários são habilitados, o GitHub examina os repositórios em busca de segredos emitidos por uma grande variedade de provedores de serviços e gera alertas de verificação de segredo.
Você pode ver esses alertas na guia Segurança do repositório. Para obter mais informações sobre alertas de verificação de segredo para usuários, confira "Sobre a verificação de segredo".
Se o acesso a um recurso exigir credenciais emparelhadas, a verificação secreta criará um alerta somente quando ambas as partes do par forem detectadas no mesmo arquivo. Isso garante que os vazamentos mais críticos não estejam ocultos por trás de informações sobre vazamentos parciais. A correspondência de pares também ajuda a reduzir falsos positivos, pois ambos os elementos de um par devem ser usados juntos para acessar o recurso do provedor.
Se você usa a API REST para verificação de segredo, pode usar o Secret type
para relatar segredos de emissores específicos. Para obter mais informações, confira "Secret scanning".
Sobre os alertas de proteção por push
Os alertas de proteção por push são alertas de usuário relatados pela proteção. Atualmente, o Secret scanning atua como uma proteção por push e verifica os repositórios em busca de segredos emitidos por alguns provedores de serviços.
Se o acesso a um recurso exigir credenciais emparelhadas, a verificação secreta criará um alerta somente quando ambas as partes do par forem detectadas no mesmo arquivo. Isso garante que os vazamentos mais críticos não estejam ocultos por trás de informações sobre vazamentos parciais. A correspondência de pares também ajuda a reduzir falsos positivos, pois ambos os elementos de um par devem ser usados juntos para acessar o recurso do provedor.
Versões mais antigas de determinados tokens podem não ter suporte da proteção de push, pois esses tokens podem gerar um número maior de falsos positivos do que sua versão mais recente. A proteção de push também pode não se aplicar a tokens herdados. Para tokens como Chaves do Armazenamento do Azure, o GitHub só dá suporte a tokens criados recentemente, não a tokens que correspondem aos padrões herdados. Para obter mais informações sobre limitações de proteção de push, confira "Solução de problemas com a varredura de segredos".
Segredos compatíveis
Esta tabela lista os segredos compatíveis com o secret scanning. Veja os tipos de alertas gerados para cada token e se uma verificação de validade é realizada nele.
- Provedor – Nome do provedor de token.
- Parceiro – token para o qual vazamentos são relatados ao parceiro relevante. Aplica-se somente a repositórios públicos.
- Usuário – token para o qual vazamentos são relatados aos usuários no GitHub. Aplica-se aos repositórios públicos e aos repositórios privados em que o GitHub Advanced Security está habilitado.
- Proteção por push – token para o qual vazamentos são relatados aos usuários no GitHub. Aplica-se aos repositórios com o secret scanning e a proteção por push habilitada.
- Verificação de validade – token para o qual uma verificação de validade é implementada. Para os tokens de parceiro, o token é enviado ao parceiro relevante.
Provedor | Token | Parceiro | Usuário | Verificação de validade |
---|---|---|---|---|
Adafruit IO | adafruit_io_key | |||
Adobe | adobe_device_token | |||
Adobe | adobe_jwt | |||
Adobe | adobe_service_token | |||
Adobe | adobe_short_lived_access_token | |||
Aiven | aiven_auth_token | |||
Aiven | aiven_service_password | |||
Alibaba Cloud | alibaba_cloud_access_key_id alibaba_cloud_access_key_secret | |||
Amazon | amazon_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 | |||
Asana | asana_personal_access_token | |||
Atlassian | atlassian_api_token | |||
Atlassian | atlassian_jwt | |||
Atlassian | bitbucket_server_personal_access_token | |||
Azure | azure_active_directory_application_secret | |||
Azure | azure_batch_key_identifiable | |||
Azure | azure_cache_for_redis_access_key | |||
Azure | azure_cosmosdb_key_identifiable | |||
Azure | azure_devops_personal_access_token | |||
Azure | azure_function_key | |||
Azure | azure_ml_web_service_classic_identifiable_key | |||
Azure | azure_sas_token | |||
Azure | azure_search_admin_key | |||
Azure | azure_search_query_key | |||
Azure | azure_management_certificate | |||
Azure | azure_sql_connection_string | |||
Azure | azure_storage_account_key | |||
Beamer | beamer_api_key | |||
Canadian Digital Service | cds_canada_notify_api_key | |||
Checkout.com | checkout_production_secret_key | |||
Checkout.com | checkout_test_secret_key | |||
Chief Tools | chief_tools_token | |||
Clojars | clojars_deploy_token | |||
CloudBees CodeShip | codeship_credential | |||
Contentful | contentful_personal_access_token | |||
Contributed Systems | CONTRIBUTED_SYSTEMS_CREDENTIALS | |||
crates.io (Rust Foundation) | cratesio_api_token | |||
Databricks | databricks_access_token | |||
Datadog | DATADOG_API_KEY | |||
DevCycle | devcycle_client_api_key | |||
DevCycle | devcycle_mobile_api_key | |||
DevCycle | devcycle_server_api_key | |||
DigitalOcean | digitalocean_oauth_token | |||
DigitalOcean | digitalocean_personal_access_token | |||
DigitalOcean | digitalocean_refresh_token | |||
DigitalOcean | digitalocean_system_token | |||
Discord | discord_api_token_v2 | |||
Discord | discord_bot_token | |||
Doppler | doppler_audit_token | |||
Doppler | doppler_cli_token | |||
Doppler | doppler_personal_token | |||
Doppler | doppler_scim_token | |||
Doppler | doppler_service_token | |||
Doppler | doppler_service_account_token | |||
Dropbox | dropbox_access_token | |||
Dropbox | dropbox_short_lived_access_token | |||
Duffel | duffel_live_access_token | |||
Duffel | duffel_test_access_token | |||
Dynatrace | dynatrace_access_token | |||
Dynatrace | dynatrace_internal_token | |||
EasyPost | easypost_production_api_key | |||
EasyPost | easypost_test_api_key | |||
eBay | ebay_production_client_id ebay_production_client_secret | |||
eBay | ebay_sandbox_client_id ebay_sandbox_client_secret | |||
Fastly | fastly_api_token | |||
Figma | figma_pat | |||
Finicity | finicity_app_key | |||
Flutterwave | flutterwave_live_api_secret_key | |||
Flutterwave | flutterwave_test_api_secret_key | |||
Frame.io | frameio_developer_token | |||
Frame.io | frameio_jwt | |||
FullStory | fullstory_api_key | |||
GitHub | github_app_installation_access_token | |||
GitHub | github_oauth_access_token | |||
GitHub | github_personal_access_token | |||
GitHub | github_refresh_token | |||
GitHub | github_ssh_private_key | |||
GitLab | gitlab_access_token | |||
GoCardless | gocardless_live_access_token | |||
GoCardless | gocardless_sandbox_access_token | |||
firebase_cloud_messaging_server_key | ||||
google_cloud_storage_service_account_access_key_id google_cloud_storage_access_key_secret | ||||
google_cloud_storage_user_access_key_id google_cloud_storage_access_key_secret | ||||
google_oauth_access_token | ||||
google_oauth_client_id google_oauth_client_secret | ||||
google_oauth_refresh_token | ||||
Google Cloud | google_api_key | |||
Google Cloud | google_cloud_private_key_id | |||
Grafana | grafana_cloud_api_key | |||
Grafana | grafana_cloud_api_token | |||
Grafana | grafana_project_api_key | |||
Grafana | grafana_project_service_account_token | |||
HashiCorp | hashicorp_vault_batch_token | |||
HashiCorp | hashicorp_vault_batch_token | |||
HashiCorp | hashicorp_vault_root_service_token | |||
HashiCorp | hashicorp_vault_root_service_token | |||
HashiCorp | hashicorp_vault_service_token | |||
HashiCorp | hashicorp_vault_service_token | |||
Hashicorp Terraform | terraform_api_token | |||
Highnote | highnote_rk_live_key | |||
Highnote | highnote_rk_test_key | |||
Highnote | highnote_sk_live_key | |||
Highnote | highnote_sk_test_key | |||
Hubspot | hubspot_api_key | |||
Hubspot | hubspot_api_personal_access_key | |||
Intercom | intercom_access_token | |||
Ionic | ionic_personal_access_token | |||
Ionic | ionic_refresh_token | |||
JD Cloud | jd_cloud_access_key | |||
JFrog | jfrog_platform_access_token | |||
JFrog | jfrog_platform_api_key | |||
Linear | linear_api_key | |||
Linear | linear_oauth_access_token | |||
Lob | lob_live_api_key | |||
Lob | lob_test_api_key | |||
LocalStack | localstack_api_key | |||
LogicMonitor | logicmonitor_bearer_token | |||
LogicMonitor | logicmonitor_lmv1_access_key | |||
Mailchimp | mailchimp_api_key | |||
Mailchimp | MANDRILL_API | |||
Mailgun | mailgun_api_key | |||
Mapbox | mapbox_secret_access_token | |||
MessageBird | messagebird_api_key | |||
Meta | facebook_access_token | |||
Midtrans | midtrans_production_server_key | |||
Midtrans | midtrans_sandbox_server_key | |||
New Relic | new_relic_insights_query_key | |||
New Relic | new_relic_license_key | |||
New Relic | new_relic_personal_api_key | |||
New Relic | new_relic_rest_api_key | |||
Notion | notion_integration_token | |||
Notion | notion_oauth_client_secret | |||
npm | npm_access_token | |||
NuGet | nuget_api_key | |||
Octopus Deploy | octopus_deploy_api_key | |||
Oculus | oculus_very_tiny_encrypted_session | |||
Onfido | onfido_live_api_token | |||
Onfido | onfido_sandbox_api_token | |||
OpenAI | openai_api_key | |||
Palantir | palantir_jwt | |||
Persona | persona_production_api_key | |||
Persona | persona_sandbox_api_key | |||
PlanetScale | planetscale_database_password | |||
PlanetScale | planetscale_oauth_token | |||
PlanetScale | planetscale_service_token | |||
Plivo | plivo_auth_id plivo_auth_token | |||
Postman | postman_api_key | |||
Postman | postman_collection_key | |||
Prefect | prefect_server_api_key | |||
Prefect | prefect_user_api_key | |||
Prefect | PREFECT_USER_API_TOKEN | |||
Proctorio | proctorio_consumer_key | |||
Proctorio | proctorio_linkage_key | |||
Proctorio | proctorio_registration_key | |||
Proctorio | proctorio_secret_key | |||
Pulumi | pulumi_access_token | |||
PyPI | pypi_api_token | |||
ReadMe | readmeio_api_access_token | |||
redirect.pizza | redirect_pizza_api_token | |||
Rootly | rootly_api_key | |||
RubyGems | rubygems_api_key | |||
Samsara | samsara_api_token | |||
Samsara | samsara_oauth_access_token | |||
Segment | segment_public_api_token | |||
SendGrid | sendgrid_api_key | |||
Sendinblue | sendinblue_api_key | |||
Sendinblue | sendinblue_smtp_key | |||
Shippo | shippo_live_api_token | |||
Shippo | shippo_test_api_token | |||
Shopify | shopify_access_token | |||
Shopify | shopify_app_client_credentials | |||
Shopify | shopify_app_client_secret | |||
Shopify | shopify_app_shared_secret | |||
Shopify | shopify_custom_app_access_token | |||
Shopify | shopify_marketplace_token | |||
Shopify | shopify_merchant_token | |||
Shopify | shopify_partner_api_token | |||
Shopify | shopify_private_app_password | |||
Slack | slack_api_token | |||
Slack | slack_incoming_webhook_url | |||
Slack | slack_workflow_webhook_url | |||
Square | square_access_token | |||
Square | square_production_application_secret | |||
Square | square_sandbox_application_secret | |||
SSLMate | sslmate_api_key | |||
SSLMate | sslmate_cluster_secret | |||
Stripe | stripe_live_restricted_key | |||
Stripe | stripe_api_key | |||
Stripe | stripe_legacy_api_key | |||
Stripe | stripe_test_restricted_key | |||
Stripe | stripe_test_secret_key | |||
Stripe | stripe_webhook_signing_secret | |||
Supabase | supabase_service_key | |||
Tableau | tableau_personal_access_token | |||
Telegram | telegram_bot_token | |||
Telnyx | telnyx_api_v2_key | |||
Tencent Cloud | tencent_cloud_secret_id | |||
Tencent WeChat | tencent_wechat_api_app_id | |||
Twilio | twilio_access_token | |||
Twilio | twilio_account_sid | |||
Twilio | twilio_api_key | |||
Typeform | typeform_personal_access_token | |||
Uniwise | wiseflow_api_key | |||
WakaTime | wakatime_pp_secret | |||
WakaTime | wakatime_oauth_access_token | |||
WakaTime | wakatime_oauth_refresh_token | |||
WorkOS | workos_production_api_key | |||
WorkOS | workos_staging_api_key | |||
Yandex | yandex_iam_access_secret | |||
Yandex | yandex_cloud_api_key | |||
Yandex | yandex_cloud_iam_cookie | |||
Yandex | yandex_cloud_iam_token | |||
Yandex | yandex_dictionary_api_key | |||
Yandex | YANDEX_PASSPORT_OAUTH_TOKEN | |||
Yandex | yandex_predictor_api_key | |||
Yandex | yandex_translate_api_key | |||
Zuplo | zuplo_consumer_api_key |