我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们

关于密码扫描

GitHub 扫描仓库查找已知的密码类型,以防止欺诈性使用意外提交的密码。

秘密扫描 可用于公共仓库,以及具有 Advanced Security 许可的组织拥有的私有仓库。 更多信息请参阅“关于 GitHub Advanced Security”。

本文内容

注:组织拥有的私有仓库的 秘密扫描 目前处于测试阶段,可能会更改。

如果项目与外部服务通信,您可能使用令牌或私钥进行身份验证。 令牌和私钥是服务提供商可以签发的典型密码。 如果将密码检入仓库,则对仓库具有读取权限的任何人都可以使用该密码以您的权限访问外部服务。 建议将密码存储在项目仓库外部专用的安全位置。 服务提供者可以与

GitHub 合作提供其用于扫描的密码格式。 更多信息请参阅“密码扫描”。

If someone checks a secret from a GitHub partner into a public or private repository on GitHub, 秘密扫描 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.

关于公共仓库的 秘密扫描

秘密扫描 自动对公共仓库启用。 当您推送到公共仓库时,GitHub 会扫描提交的内容中是否有密码。 如果将私有仓库切换到公共仓库,GitHub 会扫描整个仓库中的密码。

当 秘密扫描 检测一组凭据时,我们会通知发布密码的服务提供商。 服务提供商会验证该凭据,然后决定是否应撤销密钥、颁发新密钥或直接与您联系,具体取决于与您或服务提供商相关的风险。 有关如何使用令牌颁发合作伙伴的概述,请参阅“密码扫描”。

GitHub 当前会扫描公共仓库,查找以下服务提供商发布的密码。

PartnerSupported secret
Adafruit IOAdafruit IO Key
Alibaba CloudAlibaba Cloud Access Key ID and Access Key Secret pair
Amazon Web Services (AWS)Amazon AWS Access Key ID and Secret Access Key pair
AtlassianAtlassian API Token
AtlassianAtlassian JSON Web Token
AzureAzure DevOps Personal Access Token
AzureAzure SAS Token
AzureAzure Service Management Certificate
AzureAzure SQL Connection String
AzureAzure Storage Account Key
ClojarsClojars Deploy Token
CloudBees CodeShipCloudBees CodeShip Credential
DatabricksDatabricks Access Token
DatadogDatadog API Key
DiscordDiscord Bot Token
DopplerDoppler Personal Token
DopplerDoppler Service Token
DopplerDoppler CLI Token
DopplerDoppler SCIM Token
DropboxDropbox Access Token
DropboxDropbox Short Lived Access Token
DynatraceDynatrace Access Token
DynatraceDynatrace Internal Token
FinicityFinicity App Key
Frame.ioFrame.io JSON Web Token
Frame.ioFrame.io Developer Token
GitHubGitHub SSH Private Key
GitHubGitHub Personal Access Token
GitHubGitHub App Installation Access Token
GoCardlessGoCardless Live Access Token
GoCardlessGoCardless Sandbox Access Token
Google CloudGoogle API Key
Google CloudGoogle Cloud Private Key ID
Hashicorp TerraformTerraform Cloud / Enterprise API Token
HubspotHubspot API Key
MailchimpMailchimp API Key
MailchimpMandrill API Key
MailgunMailgun API Key
MessageBirdMessageBird API Key
npmnpm Access Token
NuGetNuGet API Key
PalantirPalantir JSON Web Token
PlivoPlivo Auth Token
PostmanPostman API Key
ProctorioProctorio Consumer Key
ProctorioProctorio Linkage Key
ProctorioProctorio Registration Key
ProctorioProctorio Secret Key
PulumiPulumi Access Token
SamsaraSamsara API Token
SamsaraSamsara OAuth Access Token
ShopifyShopify App Shared Secret
ShopifyShopify Access Token
ShopifyShopify Custom App Access Token
ShopifyShopify Private App Password
SlackSlack API Token
SlackSlack Incoming Webhook URL
SlackSlack Workflow Webhook URL
SSLMateSSLMate API Key
SSLMateSSLMate Cluster Secret
StripeStripe Live API Secret Key
StripeStripe Test API Secret Key
StripeStripe Live API Restricted Key
StripeStripe Test API Restricted Key
Tencent CloudTencent Cloud Secret ID
TwilioTwilio Account String Identifier
TwilioTwilio API Key

关于私有仓库的 秘密扫描

如果您是仓库管理员或组织所有者,您可以为组织拥有的私有仓库启用 秘密扫描。 您可以对您的所有仓库或您组织内的所有新仓库启用 秘密扫描。秘密扫描 不适用于用户拥有的私有仓库。更多信息请参阅“管理仓库的安全和分析设置”和“管理组织的安全和分析设置”。

将提交推送到启用了 秘密扫描 的私有仓库时,GitHub 会扫描提交的内容中是否有密码。

当 秘密扫描 在私有仓库中检测到密码时,GitHub 会发送警报。

仓库管理员和组织所有者可以授权用户和团队访问 秘密扫描 警报。 更多信息请参阅“管理仓库的安全和分析设置”。

要监控 私有仓库或组织的 秘密扫描 结果,您可以使用 秘密扫描 API。 有关 API 端点的更多信息,请参阅“秘密扫描”。

GitHub 目前扫描私有仓库,以检查由以下服务提供者颁发的密码。

PartnerSupported secretAPI slug
n/aJSON Web Tokenjson_web_token
n/aOAuth Client Credentialapi_credential_assignment
Adafruit IOAdafruit IO Keyadafruit_io_key
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
AtlassianAtlassian API Tokenatlassian_api_token
AtlassianAtlassian JSON Web Tokenatlassian_jwt
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
FinicityFinicity App Keyfinicity_app_key
Frame.ioFrame.io JSON Web Tokenframeio_jwt
Frame.ioFrame.io Developer Tokenframeio_developer_token
GitHubGitHub SSH Private Keygithub_ssh_private_key
GitHubGitHub Personal Access Tokengithub_personal_access_token
GitHubGitHub App Installation Access Tokengithub_app_installation_access_token
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
Hashicorp TerraformTerraform Cloud / Enterprise API Tokenterraform_api_token
HubspotHubspot API Keyhubspot_api_key
MailchimpMailchimp API Keymailchimp_api_key
MailgunMailgun API Keymailgun_api_key
npmnpm Access Tokennpm_access_token
NuGetNuGet API Keynuget_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
SamsaraSamsara API Tokensamsara_api_token
SamsaraSamsara OAuth Access Tokensamsara_oauth_access_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
Tencent CloudTencent Cloud Secret IDtencent_cloud_secret_id
TwilioTwilio Account String Identifiertwilio_account_sid
TwilioTwilio API Keytwilio_api_key

注: 秘密扫描 当前不允许定义自己的模式来检测密码。

延伸阅读

此文档对您有帮助吗?

Privacy policy

帮助我们创建出色的文档!

所有 GitHub 文档都是开源的。看到错误或不清楚的内容了吗?提交拉取请求。

做出贡献

或, 了解如何参与。