关于密码扫描

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

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

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

秘密扫描 将在 GitHub 仓库中存在的所有分支上扫描整个 Git 历史记录,以查找任何密钥。 服务提供商可与 GitHub 合作提供其用于扫描的密码格式。 更多信息请参阅“密码扫描合作伙伴计划”。

如果有人将使用已知模式的密码检入 GitHub 上的公共或私有仓库,则 秘密扫描 在该密码检入时可以捕获它,帮助您减小密码泄露的影响。 仓库管理员会收到包含密码的任何提交的通知, 然后他们可以快速查看仓库安全选项卡中所有检测到的密码。

关于公共仓库的 秘密扫描

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

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

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

合作伙伴支持的密钥
Adafruit IOAdafruit IO 密钥
AdobeAdobe 设备令牌
AdobeAdobe 服务令牌
AdobeAdobe 短暂访问令牌
AdobeAdobe JSON Web 令牌
Alibaba CloudAlibaba 云端访问密钥 ID 和访问密钥对
Amazon Web Services (AWS)Amazon AWS 访问密钥 ID 和秘密访问密钥对
AtlassianAtlassian API 令牌
AtlassianAtlassian JSON Web 令牌
AzureAzure Active Directory 应用程序密钥
AzureAzure DevOps 个人访问令牌
AzureAzure SAS 令牌
AzureAzure 服务管理证书
AzureAzure SQL 连接字符串
AzureAzure 存储账户密钥
Checkout.comCheckout.com Production Secret Key
Checkout.comCheckout.com Test Secret Key
ClojarsClojars 部署令牌
CloudBees CodeShipCloudBees CodeShip 凭据
Contributed SystemsContributed Systems Credentials
DatabricksDatabricks 访问令牌
DatadogDatadog API 密钥
DiscordDiscord 自动程序令牌
DopplerDoppler 个人令牌
DopplerDoppler 服务令牌
DopplerDoppler CLI 令牌
DopplerDoppler SCIM 令牌
DopplerDoppler Audit Token
DropboxDropbox 访问令牌
DropboxDropbox 短暂访问令牌
DynatraceDynatrace 访问令牌
DynatraceDynatrace 内部令牌
FinicityFinicity App 密钥
Frame.ioFrame.io JSON Web 令牌
Frame.ioFrame.io Developer 令牌
GitHubGitHub 个人访问令牌
GitHubGitHub OAuth 访问令牌
GitHubGitHub 刷新令牌
GitHubGitHub App 安装访问令牌
GitHubGitHub SSH 私钥
GoCardlessGoCardless 实时访问令牌
GoCardlessGoCardless Sandbox 访问令牌
Google CloudGoogle API 密钥
Google CloudGoogle Cloud 私钥 ID
Hashicorp TerraformTerraform Cloud / Enterprise API 令牌
HubspotHubspot API 密钥
IonicIonic 个人访问令牌
IonicIonic 刷新令牌
线性线性 API 密钥
线性线性 OAuth 访问令牌
MailchimpMailchimp API 密钥
MailchimpMandril API 密钥
MailgunMailgun API 密钥
MessageBirdMessageBird API 密钥
npmnpm 访问令牌
NuGetNuGet API 密钥
OpenAIOpenAI API 密钥
PalantirPalantir JSON Web 令牌
PlanetScalePlanetScale Database Password
PlanetScalePlanetScale OAuth Token
PlanetScalePlanetScale Service Token
PlivoPlivo Auth ID and Token
PostmanPostman API 密钥
ProctorioProctorio 消费者密钥
ProctorioProctorio 链接密钥
ProctorioProctorio 注册密钥
ProctorioProctorio 密钥
PulumiPulumi 访问令牌
PyPIPyPI API 令牌
RubyGemsRubyGems API 密钥
SamsaraSamsara API 令牌
SamsaraSamsara OAuth 访问令牌
SendGridSendGrid API Key
ShopifyShopify App 共享密钥
ShopifyShopify 访问令牌
ShopifyShopify 自定义应用访问令牌
ShopifyShopify 私人应用密码
SlackSlack API 令牌
SlackSlack 传入 web 挂钩 URL
SlackSlack 工作流程 web 挂钩 URL
SSLMateSSLMate API 密钥
SSLMateSSLMate 集群密钥
StripeStripe Live API 密钥
StripeStripe 测试 API 密钥
StripeStripe Live API 限制密钥
StripeStripe 测试 API 限制密钥
Tencent Cloud腾讯云密钥 ID
TwilioTwilio 帐户字符串标识符
TwilioTwilio API 密钥
ValourValour 访问令牌

关于私有仓库的 秘密扫描

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

您也可以定义只应用到您的仓库或组织的自定义 秘密扫描 模式。 更多信息请参阅“定义 秘密扫描 的自定义模式”。

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

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

  • GitHub 向仓库管理员和组织所有者发送电子邮件警报。

  • GitHub 向提交机密到仓库的贡献者发送电子邮件警报,其中包括指向相关 秘密扫描 警报的链接。 然后,提交作者可以在仓库中查看警报,然后解决警报。

  • GitHub 显示仓库中的警报。

有关查看和解析 秘密扫描 警报的详细信息,请参阅“管理来自 秘密扫描 的警报”。

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

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

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

Provider支持的密钥API slug
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
Amazon Web Services (AWS)Amazon AWS Session Tokenaws_session_token
Amazon Web Services (AWS)Amazon AWS Temporary Access Key IDaws_temporary_access_key_id
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
BeamerBeamer API Keybeamer_api_key
Checkout.comCheckout.com Production Secret Keycheckout_production_secret_key
Checkout.comCheckout.com Test Secret Keycheckout_test_secret_key
ClojarsClojars Deploy Tokenclojars_deploy_token
CloudBees CodeShipCloudBees CodeShip Credentialcodeship_credential
ContentfulContentful Personal Access Tokencontentful_personal_access_token
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
DopplerDoppler Audit Tokendoppler_audit_token
DropboxDropbox Access Tokendropbox_access_token
DropboxDropbox Short Lived Access Tokendropbox_short_lived_access_token
DuffelDuffel Live Access Tokenduffel_live_access_token
DuffelDuffel Test Access Tokenduffel_test_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
FlutterwaveFlutterwave Live API Secret Keyflutterwave_live_api_secret_key
FlutterwaveFlutterwave Test API Secret Keyflutterwave_test_api_secret_key
Frame.ioFrame.io JSON Web Tokenframeio_jwt
Frame.ioFrame.io Developer Tokenframeio_developer_token
FullStoryFullStory API Keyfullstory_api_key
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
GoogleFirebase Cloud Messaging Server Keyfirebase_cloud_messaging_server_key
GoogleGoogle API Keygoogle_api_key
GoogleGoogle Cloud Private Key IDgoogle_cloud_private_key_id
GoogleGoogle Cloud Storage Access Key Secretgoogle_cloud_storage_access_key_secret
GoogleGoogle Cloud Storage Service Account Access Key IDgoogle_cloud_storage_service_account_access_key_id
GoogleGoogle Cloud Storage User Access Key IDgoogle_cloud_storage_user_access_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
IonicIonic Personal Access Tokenionic_personal_access_token
IonicIonic Refresh Tokenionic_refresh_token
JFrogJFrog Platform Access Tokenjfrog_platform_access_token
JFrogJFrog Platform API Keyjfrog_platform_api_key
LinearLinear API Keylinear_api_key
LinearLinear OAuth Access Tokenlinear_oauth_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
New RelicNew Relic Personal API Keynew_relic_personal_api_key
New RelicNew Relic REST API Keynew_relic_rest_api_key
New RelicNew Relic Insights Query Keynew_relic_insights_query_key
New RelicNew Relic License Keynew_relic_license_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
PlanetScalePlanetScale Database Passwordplanetscale_database_password
PlanetScalePlanetScale OAuth Tokenplanetscale_oauth_token
PlanetScalePlanetScale Service Tokenplanetscale_service_token
PlivoPlivo Auth IDplivo_auth_id
PlivoPlivo Auth Tokenplivo_auth_token
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
SendinblueSendinblue API Keysendinblue_api_key
SendinblueSendinblue SMTP Keysendinblue_smtp_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

延伸阅读

此文档对您有帮助吗?

隐私政策

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

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

做出贡献

或, 了解如何参与。