Note: Varredura secreta for organization-owned private repositories is currently in beta and subject to change.
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. Os provedores de serviço podem fazer parceria com
GitHub para fornecer seus formatos de segredo para varredura. Para obter mais informações, consulte "Varredura de segredo".
If someone checks a secret from a GitHub partner 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. 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.
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. Para obter uma visão geral de como trabalhamos com parceiros emissores de token, consulte "Varredura de segredo".
O GitHub atualmente verifica repositórios públicos para encontrar segredos emitidos pelos seguintes provedores de serviços.
| Partner | Supported secret |
|---|---|
| Adafruit IO | Adafruit IO Key |
| Alibaba Cloud | Alibaba Cloud Access Key ID and Access Key Secret pair |
| Amazon Web Services (AWS) | Amazon AWS Access Key ID and Secret Access Key pair |
| Atlassian | Atlassian API Token |
| Atlassian | Atlassian JSON Web Token |
| Azure | Azure DevOps Personal Access Token |
| Azure | Azure SAS Token |
| Azure | Azure Service Management Certificate |
| Azure | Azure SQL Connection String |
| Azure | Azure Storage Account Key |
| Clojars | Clojars Deploy Token |
| CloudBees CodeShip | CloudBees CodeShip Credential |
| Databricks | Databricks Access Token |
| Datadog | Datadog API Key |
| Discord | Discord Bot Token |
| Doppler | Doppler Personal Token |
| Doppler | Doppler Service Token |
| Doppler | Doppler CLI Token |
| Doppler | Doppler SCIM Token |
| Dropbox | Dropbox Access Token |
| Dropbox | Dropbox Short Lived Access Token |
| Dynatrace | Dynatrace Access Token |
| Dynatrace | Dynatrace Internal Token |
| Finicity | Finicity App Key |
| Frame.io | Frame.io JSON Web Token |
| Frame.io | Frame.io Developer Token |
| GitHub | GitHub SSH Private Key |
| GitHub | GitHub Personal Access Token |
| GitHub | GitHub App Installation Access Token |
| GoCardless | GoCardless Live Access Token |
| GoCardless | GoCardless Sandbox Access Token |
| Google Cloud | Google API Key |
| Google Cloud | Google Cloud Private Key ID |
| Hashicorp Terraform | Terraform Cloud / Enterprise API Token |
| Hubspot | Hubspot API Key |
| Mailchimp | Mailchimp API Key |
| Mailchimp | Mandrill API Key |
| Mailgun | Mailgun API Key |
| MessageBird | MessageBird API Key |
| npm | npm Access Token |
| NuGet | NuGet API Key |
| Palantir | Palantir JSON Web Token |
| Plivo | Plivo Auth Token |
| Postman | Postman API Key |
| Proctorio | Proctorio Consumer Key |
| Proctorio | Proctorio Linkage Key |
| Proctorio | Proctorio Registration Key |
| Proctorio | Proctorio Secret Key |
| Pulumi | Pulumi Access Token |
| Samsara | Samsara API Token |
| Samsara | Samsara OAuth Access Token |
| Shopify | Shopify App Shared Secret |
| Shopify | Shopify Access Token |
| Shopify | Shopify Custom App Access Token |
| Shopify | Shopify Private App Password |
| Slack | Slack API Token |
| Slack | Slack Incoming Webhook URL |
| Slack | Slack Workflow Webhook URL |
| SSLMate | SSLMate API Key |
| SSLMate | SSLMate Cluster Secret |
| Stripe | Stripe Live API Secret Key |
| Stripe | Stripe Test API Secret Key |
| Stripe | Stripe Live API Restricted Key |
| Stripe | Stripe Test API Restricted Key |
| Tencent Cloud | Tencent Cloud Secret ID |
| Twilio | Twilio Account String Identifier |
| Twilio | Twilio API Key |
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 na sua 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".
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 repositório privado, GitHub envia alertas.
-
O GitHub envia um alerta de email para os administradores do repositório e proprietários da organização.
-
O GitHub exibe um alerta no repositório. Para obter mais informações, consulte "Gerenciando alertas do 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 resultados de varredura secreta em todos os 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.
| Partner | Supported secret | API slug |
|---|---|---|
| n/a | JSON Web Token | json_web_token |
| n/a | OAuth Client Credential | api_credential_assignment |
| Adafruit IO | Adafruit IO Key | adafruit_io_key |
| Alibaba Cloud | Alibaba Cloud Access Key ID | alibaba_cloud_access_key_id |
| Alibaba Cloud | Alibaba Cloud Access Key Secret | alibaba_cloud_access_key_secret |
| Amazon Web Services (AWS) | Amazon AWS Access Key ID | aws_access_key_id |
| Amazon Web Services (AWS) | Amazon AWS Secret Access Key | aws_secret_access_key |
| Atlassian | Atlassian API Token | atlassian_api_token |
| Atlassian | Atlassian JSON Web Token | atlassian_jwt |
| Azure | Azure DevOps Personal Access Token | azure_devops_personal_access_token |
| Azure | Azure SAS Token | azure_sas_token |
| Azure | Azure Service Management Certificate | azure_management_certificate |
| Azure | Azure SQL Connection String | azure_sql_connection_string |
| Azure | Azure Storage Account Key | azure_storage_account_key |
| Clojars | Clojars Deploy Token | clojars_deploy_token |
| CloudBees CodeShip | CloudBees CodeShip Credential | codeship_credential |
| Databricks | Databricks Access Token | databricks_access_token |
| Discord | Discord Bot Token | discord_bot_token |
| Doppler | Doppler Personal Token | doppler_personal_token |
| Doppler | Doppler Service Token | doppler_service_token |
| Doppler | Doppler CLI Token | doppler_cli_token |
| Doppler | Doppler SCIM Token | doppler_scim_token |
| Dropbox | Dropbox Access Token | dropbox_access_token |
| Dropbox | Dropbox Short Lived Access Token | dropbox_short_lived_access_token |
| Dynatrace | Dynatrace Access Token | dynatrace_access_token |
| Dynatrace | Dynatrace Internal Token | dynatrace_internal_token |
| Finicity | Finicity App Key | finicity_app_key |
| Frame.io | Frame.io JSON Web Token | frameio_jwt |
| Frame.io | Frame.io Developer Token | frameio_developer_token |
| GitHub | GitHub SSH Private Key | github_ssh_private_key |
| GitHub | GitHub Personal Access Token | github_personal_access_token |
| GitHub | GitHub App Installation Access Token | github_app_installation_access_token |
| GoCardless | GoCardless Live Access Token | gocardless_live_access_token |
| GoCardless | GoCardless Sandbox Access Token | gocardless_sandbox_access_token |
| Google Cloud | Google API Key | google_api_key |
| Google Cloud | Google Cloud Private Key ID | google_cloud_private_key_id |
| Hashicorp Terraform | Terraform Cloud / Enterprise API Token | terraform_api_token |
| Hubspot | Hubspot API Key | hubspot_api_key |
| Mailchimp | Mailchimp API Key | mailchimp_api_key |
| Mailgun | Mailgun API Key | mailgun_api_key |
| npm | npm Access Token | npm_access_token |
| NuGet | NuGet API Key | nuget_api_key |
| Palantir | Palantir JSON Web Token | palantir_jwt |
| Postman | Postman API Key | postman_api_key |
| Proctorio | Proctorio Consumer Key | proctorio_consumer_key |
| Proctorio | Proctorio Linkage Key | proctorio_linkage_key |
| Proctorio | Proctorio Registration Key | proctorio_registration_key |
| Proctorio | Proctorio Secret Key | proctorio_secret_key |
| Pulumi | Pulumi Access Token | pulumi_access_token |
| Samsara | Samsara API Token | samsara_api_token |
| Samsara | Samsara OAuth Access Token | samsara_oauth_access_token |
| Shopify | Shopify App Shared Secret | shopify_app_shared_secret |
| Shopify | Shopify Access Token | shopify_access_token |
| Shopify | Shopify Custom App Access Token | shopify_custom_app_access_token |
| Shopify | Shopify Private App Password | shopify_private_app_password |
| Slack | Slack API Token | slack_api_token |
| Slack | Slack Incoming Webhook URL | slack_incoming_webhook_url |
| Slack | Slack Workflow Webhook URL | slack_workflow_webhook_url |
| SSLMate | SSLMate API Key | sslmate_api_key |
| SSLMate | SSLMate Cluster Secret | sslmate_cluster_secret |
| Stripe | Stripe API Key | stripe_api_key |
| Stripe | Stripe Live API Secret Key | stripe_live_secret_key |
| Stripe | Stripe Test API Secret Key | stripe_test_secret_key |
| Stripe | Stripe Live API Restricted Key | stripe_live_restricted_key |
| Stripe | Stripe Test API Restricted Key | stripe_test_restricted_key |
| Tencent Cloud | Tencent Cloud Secret ID | tencent_cloud_secret_id |
| Twilio | Twilio Account String Identifier | twilio_account_sid |
| Twilio | Twilio API Key | twilio_api_key |
Nota: o Varredura secreta atualmente não permite que você defina seus próprios padrões para detecção de segredos.