シークレットスキャンニングについて

GitHub Enterprise Server はリポジトリをスキャンして既知のシークレットのタイプを探し、誤ってコミットされたシークレットの不正使用を防止します。

Secret scanningは、Organizationが所有するリポジトリでGitHub Advanced Securityが有効化されていれば利用できます。 詳しい情報については、「GitHub Advanced Security について」を参照してください。

ノート: Secret scanningはGitHub Enterprise Server 3.0ではベータでした。 secret scanningの一般に利用なリリースについては、GitHub Enterprise Serverの最新リリースにアップグレードしてください。

ノート: この機能を使う前には、サイト管理者がGitHub Enterprise Serverのインスタンスのsecret scanningを有効化していなければなりません。 詳しい情報については「アプライアンスのためのsecret scanningの設定」を参照してください。

プロジェクトを外部サービスと通信させる場合、認証にトークンまたは秘密鍵を使用できます。 トークンや秘密鍵は、サービスプロバイダが発行できるシークレットです。 リポジトリにシークレットをチェックインする場合、リポジトリへの読み取りアクセスを持つすべてのユーザがシークレットを使用して、自分の権限で外部サービスにアクセスできます。 シークレットは、プロジェクトのリポジトリの外の、安全な専用の場所に保存することをお勧めします。

Secret scanningは、GitHubリポジトリ内に存在するすべてのブランチのGit履歴全体をスキャンしてシークレットを探します。 サービスプロバイダはGitHub と提携してスキャンするシークレットのフォーマットを提供できます。

GitHub Enterprise Server上のリポジトリに既知のパターンを持つシークレットを誰かがチェックインすると、secret scanningはチェックインの時点でそのシークレットを捕捉し、漏洩のインパクトを緩和する手助けをします。 リポジトリ管理者は、シークレットを含むコミットについて通知され、リポジトリのセキュリティタブですべての検出されたシークレットを素早く見ることができます。

GitHub Enterprise Server の secret scanning について

Secret scanning は、GitHub Advanced Security の一環として、Organization が所有するリポジトリ全てで使用できます。 ユーザ所有のリポジトリでは使用できません。

リポジトリの管理者または Organization のオーナーは、Organization が所有するリポジトリで secret scanning を有効化できます。 全てのリポジトリ、または Organization 内の全ての新しいリポジトリに対して、secret scanning を有効化できます。詳しい情報については、「リポジトリのセキュリティと分析設定を管理する」および「Organization のセキュリティおよび分析設定を管理する」を参照してください。

自分のリポジトリあるいはOrganizationにだけ適用される、カスタムの secret scanningパターンを定義することもできます。 詳しい情報については「secret scanningのカスタムパターンの定義」を参照してください。

secret scanningが有効化されているリポジトリにコミットをプッシュすると、GitHub はコミットの内容をスキャンしてシークレットを探します。

secret scanning がリポジトリでシークレットを検出した場合、GitHub はアラートを生成します。

  • GitHub は、リポジトリ管理者と Organizationのオーナーにメールアラートを送信します。

  • GitHub は、シークレットをリポジトリにコミットしたコントリビューターに、関連する secret scanning アラートのリンクを記載したメールアラートを送信します。 コミット作者は、リポジトリでこのアラートを表示して、アラートを解決できます。

  • GitHub は、リポジトリのアラートを表示します。

secret scanningアラートの表示と解決に関する詳しい情報については「secret scanningからのアラートの管理」を参照してください。

リポジトリ管理者と Organization のオーナーは、ユーザおよび Team に secret scanning アラートへのアクセスを許可できます。 詳しい情報については「リポジトリのセキュリティ及び分析の設定の管理」を参照してください。

プライベートリポジトリあるいはOrganizationに渡るsecret scanningからの結果をモニターするには、secret scanning APIが利用できます。 API に関する詳しい情報については、「Secret scanning」を参照してください。

現在 GitHub は、 リポジトリをスキャンして、次のサービスプロバイダーが発行したシークレットを探します。

Providerサポートされているシークレット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
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
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
GitHubGitHub個人アクセストークンgithub_personal_access_token
GitHubGitHub OAuthアクセストークンgithub_oauth_access_token
GitHubGitHubリフレッシュトークンgithub_refresh_token
GitHubGitHub Appインストールアクセストークンgithub_app_installation_access_token
GitHubGitHub SSH秘密鍵github_ssh_private_key
GoCardlessGoCardless Live Access Tokengocardless_live_access_token
GoCardlessGoCardless Sandbox Access Tokengocardless_sandbox_access_token
GoogleGoogle API Keygoogle_api_key
GoogleGoogle 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
IonicIonic Personal Access Tokenionic_personal_access_token
IonicIonic Refresh Tokenionic_refresh_token
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
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

参考リンク

このドキュメントは役立ちましたか?

プライバシーポリシー

これらのドキュメントを素晴らしいものにするのを手伝ってください!

GitHubのすべてのドキュメントはオープンソースです。間違っていたり、はっきりしないところがありましたか?Pull Requestをお送りください。

コントリビューションを行う

OR, コントリビューションの方法を学んでください。

問題がまだ解決していませんか?