Sobre a varredura de segredo

O GitHub verifica repositórios em busca de tipos de segredos conhecidos a fim de impedir o uso fraudulento de segredos que sofreram commit acidentalmente.

Varredura secreta is available for all public repositories, and for private repositories owned by organizations where Segurança Avançada GitHub is enabled. Para obter mais informações, consulte "Sobre Segurança Avançada GitHub".

Se o seu projeto se comunicar com um serviço externo, você pode usar um token ou uma chave privada para autenticação. Tokens e chaves privadas são exemplos de segredos que um provedor de serviços pode publicar. Se você marcar um segredo em um repositório, qualquer pessoa que tenha acesso de leitura ao repositório pode usar o segredo para acessar o serviço externo com seus privilégios. Recomendamos que você armazene segredos em um local dedicado e seguro fora do repositório do seu projeto.

Varredura secreta irá fazer a varredura de todo o seu histórico do Git em todos os branches presentes no seu repositório GitHub para obter quaisquer segredos. Service providers can partner with GitHub to provide their secret formats for scanning. For more information, see "Secret scanning partner program."

If someone checks a secret with a known pattern into a public or private repository on GitHub, varredura secreta catches the secret as it's checked in, and helps you mitigate the impact of the leak. Os administradores do repositório são notificados sobre qualquer submissão que contém um segredo e podem visualizar rapidamente todos os segredos detectados na aba Segurança do repositório.

Sobre o varredura secreta para repositórios públicos

Varredura secreta é automaticamente habilitado nos repositórios públicos. Quando você faz push para um repositório público, o GitHub verifica segredos no conteúdo dos commits. Se você alternar um repositório privado para público, o GitHub verifica segredos em todo o repositório.

Quando o varredura secreta detecta um conjunto de credenciais, notificamos o provedor de serviço que emitiu o segredo. O provedor de serviço valida a credencial e decide se deve revogar o segredo, emitir um novo segredo ou entrar em contato com você diretamente, o que dependerá dos riscos associados a você ou ao provedor de serviço. For an overview of how we work with token-issuing partners, see "Secret scanning partner program."

O GitHub atualmente verifica repositórios públicos para encontrar segredos emitidos pelos seguintes provedores de serviços.

ParceiroSegredo compatível
Adafruit IOChave de IO de Adafruit
AdobeAdobe Device Token
AdobeAdobe Service Token
AdobeAdobe Short-Lived Access Token
AdobeAdobe JSON Web Token
Alibaba CloudPar de ID e segredo da chave de acesso à nuvem do Alibaba
Amazon Web Services (AWS)Par do ID de segredo da chave de acesso ao AWS da Amazon
AtlassianToken da API de Atlassian
AtlassianToken web de JSON de Atlassian
AzureToken de acesso pessoal do Azure DevOps
AzureToken do Azure SAS
AzureCertificado de Gerenciamento de Serviços do Azure
AzureString de conexão do Azure SQL
AzureChave da conta de armazenamento do Azure
ClojarsToken de implantação de Clojars
CloudBees CodeShipCredencial de Coadship de CloudBees
DatabricksToken de acesso de Databricks
DatadogChave de API de Datadog
DiscordToken de Bot de Discord
DopplerToken pessoal de Doppler
DopplerToken de serviço de Doppler
DopplerToken de CLI de Doppler
DopplerToken de SCIM de Doppler
DropboxToken de Acesso de Dropbox
DropboxToken de acesso à vida curta do Dropbox
DynatraceToken de acesso de Dynatrace
DynatraceToken interno de Dynatrace
FinicityChave do aplicativo de Finicity
Frame.ioToken web do JSON de Frame.io
Frame.ioToken do desenvolvedor de Frame.io
GitHubToken de acesso pessoal do GitHub
GitHubGitHub OAuth Access Token
GitHubGitHub Refresh Token
GitHubToken de acesso à instalação do aplicativo GitHub
GitHubChave privada de SSH do GitHub
GoCardlessToken de acesso ao vivo ao GoCardless
GoCardlessToken de acesso de GoCardless Sandbox
Google CloudChave da API do GOogle
Google CloudID da chave privada do Google Cloud
Hashicorp TerraformToken da API de Terraform Cloud / Enterprise
HubspotChave da API de Hubspot
MailchimpChave da API de Mailchimp
MailchimpChave da API de Mandrill
MailgunChave da API de Mailgun
MessageBirdChave da API de MessageBird
npmToken de acesso de npm
NuGetChave de API de NuGet
OpenAIOpenAI API Key
PalantirToken web de JSON de Palantir
PlivoToken de Plivo Auth
PostmanChave da API de Postman
ProctorioChave de Consumidor de Proctorio
ProctorioChave de vínculo de Proctorio
ProctorioChave de registro de Proctorio
ProctorioChave de segredo de Proctorio
PulumiToken de acesso de Pulumi
PyPIPyPI API Token
RubyGemsRubyGems API Key
SamsaraToken de API de Samsara
SamsaraToken de acesso de OAuth de Samsara
SendGridSendGrid API Key
ShopifySegredo compartilhado do aplicativo Shopify
ShopifyToken de acesso de Shopify
ShopifyToken de acesso do aplicativo personalizado Shopify
ShopifySenha do aplicativo privado Shopify
SlackToken da API de Slack
SlackURL de entrada do webhook de Slack
SlackURL do fluxo de trabalho do webhook de Slack
SSLMateChave da API de SSLMate
SSLMateSegredo do cluster de SSLMate
StripeChave de segredo Stripe Live
StripeChave secreta da API de Teste de Stripe
StripeChave restrita da API de Stripe Live
StripeChave restrita da API de testes de Stripe
Tencent CloudID de segredot de Tencent Cloud
TwilioIdentificador de string de conta de Twilio
TwilioChave da API de Twilio
ValourValour Access Token

Sobre o varredura secreta para repositórios privados

Se você é um administrador de repositório ou um proprietário de uma organização, você pode habilitar varredura secreta para repositórios privados pertencentes a organizações. Você pode habilitar varredura secreta para todos os seus repositórios ou para todos os novos repositórios da organização. Varredura secreta não está disponível para repositórios privados pertencentes a usuários. Para mais informações, consulte "Gerenciar configurações de segurança e análise do seu repositório" e "Gerenciar as configurações de segurança e análise da sua organização".

You can also define custom varredura secreta patterns that only apply to your repository or organization. For more information, see "Defining custom patterns for varredura secreta."

Quando você faz push dos commits para um repositório privado com varredura secreta habilitado, GitHub verifica o conteúdo dos segredos dos commits.

Quando varredura secreta detecta um segredo em um privado repositório, GitHub gera um alerta.

  • O GitHub envia um alerta de email para os administradores do repositório e proprietários da organização.

  • GitHub envia um alerta de e-mail para o contribuidor que fez o commit do segredo no repositório com um link para o alerta de varredura secreta relacionado. O autor do commit pode visualizar o alerta no repositório e resolver o alerta.

  • GitHub exibe um alerta no repositório.

Para obter mais informações sobre a visualização e resolução de alertas de varredura secreta, consulte "Gerenciar alertas de varredura secreta."

Os administradores do repositório e proprietários da organização podem conceder acesso aos usuários aos alertas de varredura secreta. Para obter mais informações, consulte "Gerenciar configurações de segurança e análise do repositório".

Para monitorar os resultados de varredura secreta nos seus repositórios privados ou na sua organização, você pode usar a API de varredura secreta. Para obter mais informações sobre pontos de extremidade da API, consulte "Varredura secreta".

GitHub atualmente faz a varredura de repositórios privados para segredos emitidos pelos seguintes provedores de serviços.

ParceiroSegredo compatívelSlug da API
Adafruit IOAdafruit IO Keyadafruit_io_key
AdobeAdobe Device Tokenadobe_device_token
AdobeAdobe Service Tokenadobe_service_token
AdobeAdobe Short-Lived Access Tokenadobe_short_lived_access_token
AdobeAdobe JSON Web Tokenadobe_jwt
Alibaba CloudAlibaba Cloud Access Key IDalibaba_cloud_access_key_id
Alibaba CloudAlibaba Cloud Access Key Secretalibaba_cloud_access_key_secret
Amazon Web Services (AWS)Amazon AWS Access Key IDaws_access_key_id
Amazon Web Services (AWS)Amazon AWS Secret Access Keyaws_secret_access_key
AsanaAsana Personal Access Tokenasana_personal_access_token
AtlassianAtlassian API Tokenatlassian_api_token
AtlassianAtlassian JSON Web Tokenatlassian_jwt
AtlassianBitbucket Server Personal Access Tokenbitbucket_server_personal_access_token
AzureAzure DevOps Personal Access Tokenazure_devops_personal_access_token
AzureAzure SAS Tokenazure_sas_token
AzureAzure Service Management Certificateazure_management_certificate
AzureAzure SQL Connection Stringazure_sql_connection_string
AzureAzure Storage Account Keyazure_storage_account_key
ClojarsClojars Deploy Tokenclojars_deploy_token
CloudBees CodeShipCloudBees CodeShip Credentialcodeship_credential
DatabricksDatabricks Access Tokendatabricks_access_token
DiscordDiscord Bot Tokendiscord_bot_token
DopplerDoppler Personal Tokendoppler_personal_token
DopplerDoppler Service Tokendoppler_service_token
DopplerDoppler CLI Tokendoppler_cli_token
DopplerDoppler SCIM Tokendoppler_scim_token
DropboxDropbox Access Tokendropbox_access_token
DropboxDropbox Short Lived Access Tokendropbox_short_lived_access_token
DynatraceDynatrace Access Tokendynatrace_access_token
DynatraceDynatrace Internal Tokendynatrace_internal_token
EasyPostEasyPost Production API Keyeasypost_production_api_key
EasyPostEasyPost Test API Keyeasypost_test_api_key
FacebookFacebook Access Tokenfacebook_access_token
FastlyFastly API Tokenfastly_api_token
FinicityFinicity App Keyfinicity_app_key
Frame.ioFrame.io JSON Web Tokenframeio_jwt
Frame.ioFrame.io Developer Tokenframeio_developer_token
GitHubGitHub Personal Access Tokengithub_personal_access_token
GitHubGitHub OAuth Access Tokengithub_oauth_access_token
GitHubGitHub Refresh Tokengithub_refresh_token
GitHubGitHub App Installation Access Tokengithub_app_installation_access_token
GitHubGitHub SSH Private Keygithub_ssh_private_key
GoCardlessGoCardless Live Access Tokengocardless_live_access_token
GoCardlessGoCardless Sandbox Access Tokengocardless_sandbox_access_token
Google CloudGoogle API Keygoogle_api_key
Google CloudGoogle Cloud Private Key IDgoogle_cloud_private_key_id
GrafanaGrafana API Keygrafana_api_key
Hashicorp TerraformTerraform Cloud / Enterprise API Tokenterraform_api_token
HubspotHubspot API Keyhubspot_api_key
IntercomIntercom Access Tokenintercom_access_token
LobLob Live API Keylob_live_api_key
LobLob Test API Keylob_test_api_key
MailchimpMailchimp API Keymailchimp_api_key
MailgunMailgun API Keymailgun_api_key
MessageBirdMessageBird API Keymessagebird_api_key
npmnpm Access Tokennpm_access_token
NuGetNuGet API Keynuget_api_key
OnfidoOnfido Live API Tokenonfido_live_api_token
OnfidoOnfido Sandbox API Tokenonfido_sandbox_api_token
OpenAIOpenAI API Keyopenai_api_key
PalantirPalantir JSON Web Tokenpalantir_jwt
PostmanPostman API Keypostman_api_key
ProctorioProctorio Consumer Keyproctorio_consumer_key
ProctorioProctorio Linkage Keyproctorio_linkage_key
ProctorioProctorio Registration Keyproctorio_registration_key
ProctorioProctorio Secret Keyproctorio_secret_key
PulumiPulumi Access Tokenpulumi_access_token
PyPIPyPI API Tokenpypi_api_token
RubyGemsRubyGems API Keyrubygems_api_key
SamsaraSamsara API Tokensamsara_api_token
SamsaraSamsara OAuth Access Tokensamsara_oauth_access_token
SendGridSendGrid API Keysendgrid_api_key
ShippoShippo Live API Tokenshippo_live_api_token
ShippoShippo Test API Tokenshippo_test_api_token
ShopifyShopify App Shared Secretshopify_app_shared_secret
ShopifyShopify Access Tokenshopify_access_token
ShopifyShopify Custom App Access Tokenshopify_custom_app_access_token
ShopifyShopify Private App Passwordshopify_private_app_password
SlackSlack API Tokenslack_api_token
SlackSlack Incoming Webhook URLslack_incoming_webhook_url
SlackSlack Workflow Webhook URLslack_workflow_webhook_url
SSLMateSSLMate API Keysslmate_api_key
SSLMateSSLMate Cluster Secretsslmate_cluster_secret
StripeStripe API Keystripe_api_key
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
StripeStripe Webhook Signing Secretstripe_webhook_signing_secret
TableauTableau Personal Access Tokentableau_personal_access_token
TelegramTelegram Bot Tokentelegram_bot_token
Tencent CloudTencent Cloud Secret IDtencent_cloud_secret_id
TwilioTwilio Account String Identifiertwilio_account_sid
TwilioTwilio API Keytwilio_api_key

Leia mais

Esse documento ajudou você?Política de Privacidade

Ajude-nos a tornar esses documentos ótimos!

Todos os documentos do GitHub são de código aberto. Você percebeu que algo que está errado ou não está claro? Envie um pull request.

Faça uma contribuição

Ou, aprenda como contribuir.