Skip to main content

シークレット スキャンからのアラートの表示とフィルター処理

リポジトリの ユーザーに対するシークレット スキャンニング アラート を検索してフィルター処理する方法について説明します。

この機能を使用できるユーザーについて

リポジトリの所有者、組織の所有者、セキュリティ マネージャー、および 管理者 ロールを持つユーザー

secret scanningアラートページについて

リポジトリのsecret scanningを有効にするか、secret scanningが有効になっているリポジトリにコミットをプッシュすると、サービス プロバイダーで定義されているパターン、および Enterprise、organization、またはリポジトリで定義されているカスタム パターンと一致するシークレットについて、GitHub によりその内容がスキャンされます。

secret scanningでシークレットが検出されると、GitHub によってアラートが送信されます。GitHub のリポジトリの [セキュリティ] タブにアラートが表示されます。

アラートをより効果的にトリアージするため、GitHub はアラートを 2 つのリストに分けます。

  • 既定のアラート
  • 汎用アラート

デフォルトのアラート リスト

デフォルトのアラート リストは、サポートされたパターンと指定されたカスタムパターンに関連した表示アラートを表示します。 これはアラートのメイン ビューです。

汎用アラート リスト

汎用アラート リストには、プロバイダー以外のパターン (秘密キーなど) または AI を使って検出された汎用シークレット (パスワードなど) に関連するアラートが表示されます。 この種類のアラートは、誤検知率またはテストで使用するシークレットの割合が高くなります。 既定のアラート リストから汎用アラート リストに切り替えることができます。

さらに、このカテゴリに分類されるアラートは次のとおりです。

  • リポジトリあたりのアラート数は 5,000 件に制限されています (これには、オープン アラートとクローズしたアラートが含まれます)。
  • セキュリティ概要の概要ビューには表示されず、"Secret scanning" ビューにのみ表示されます。
  • プロバイダー以外のパターンにGitHubで最初の 5 つの検出場所のみが表示され、AI で検出された汎用シークレットに最初の検出場所のみが表示されている。

GitHubがプロバイダー以外のパターンと汎用シークレットをスキャンするには、最初にリポジトリまたは組織の機能を有効にする必要があります。 詳しくは、「プロバイダー以外のパターンのシークレットスキャンを有効にする」と「Copilot シークレット スキャンの一般的なシークレット検出の有効化」を参照してください。

GitHub は継続的に新しいパターンとシークレットの種類を汎用アラート リストにリリースし、機能が完全になったら (たとえば、適切な小ささのボリュームと誤検知率になったとき) 既定のリストにレベル上げします。

アラートの表示

secret scanning のアラートは、リポジトリの [セキュリティ] タブに表示されます。

  1. GitHub で、リポジトリのメイン ページに移動します。

  2. リポジトリ名の下にある [ セキュリティ] をクリックします。 [セキュリティ] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [セキュリティ] をクリックします。

    タブを示すリポジトリ ヘッダーのスクリーンショット。 [セキュリティ] タブが濃いオレンジ色の枠線で強調表示されています。

  3. 左側のサイドバーの [Vulnerability alerts] (脆弱性アラート) で、 [Secret scanning] をクリックします。

  4. 必要に応じて、[Generic] に切り替えて、プロバイダー以外のパターンまたは AI を使って検出された汎用シークレットのアラートを表示します。

  5. [Secret scanning]で、表示するアラートをクリックします。

    メモ

    漏洩したシークレットを含むリポジトリに対して管理者のアクセス許可を持つユーザーのみが、アラートのセキュリティ アラート詳細およびトークン メタデータを閲覧できます。 企業所有者は、この目的のためにリポジトリへの一時的なアクセスを要求できます。

アラートのフィルター処理

アラート リストにさまざまなフィルターを適用し、関心のあるアラートを見つけることができます。 アラート リストの上にあるドロップダウン メニューを使用したり、テーブルにリストされた修飾子を検索バーに入力したりすることができます。

修飾子説明
bypassedプッシュ保護がバイパスされたシークレットのアラートを表示します (true)。 詳しくは、「プッシュ保護について」をご覧ください。
isオープン (open)、閉じられた (closed)、パブリック リポジトリで見つかった (publicly-leaked)、または同じ organization または Enterprise 内の複数のリポジトリで見つかった (multi-repository) アラートを表示します。
props特定のカスタム プロパティ (CUSTOM_PROPERTY_NAME) が設定されたリポジトリのアラートを表示します。 たとえば、props:data_sensitivity:high は、data_sensitivity プロパティの値が high に設定されているリポジトリの結果を表示します。
provider特定のプロバイダー (PROVIDER-NAME) (たとえば、provider:github) のアラートを表示します。 サポートされているパートナーの一覧については、「サポートされているシークレット スキャン パターン」を参照してください。
repo指定されたリポジトリ (REPOSITORY-NAME) (たとえば、repo:octo-repository) で検出されたアラートを表示します。
resolution"偽陽性" (false-positive)、"構成により非表示" (hidden-by-config)、"パターン削除済み" (pattern-deleted)、"パターン編集済み" (pattern-edited)、"取り消し済み" (revoked)、"テストで使用" (used-in-tests)、または "修正しない" (wont-fix) として閉じられたアラートを表示します。
resultsサポートされているシークレットとカスタム パターン (default)、または秘密キーなどの非プロバイダー パターン (generic)、AI によって検出されたパスワードなどの汎用シークレットのアラートを表示します。 「サポートされているシークレット スキャン パターン」を参照してください。AI によって検出された汎用シークレットの詳細については、「Copilotシークレットスキャンを使用したジェネリックシークレットの責任ある検出」を参照してください。
secret-type特定のシークレットの種類 (SECRET-NAME) (たとえば、secret-type:github_personal_access_token) のアラートを表示します。 サポートされているシークレットの種類の一覧については、「サポートされているシークレット スキャン パターン」を参照してください。
sort最新から最も古い (created-desc)、最も古いものから最新 (created-asc)、最新の更新 (updated-desc)、または最新の更新 (updated-asc) の順に表示します
team指定したチーム (たとえば team:octocat-dependabot-team) のメンバーに所有されるアラートを表示します。
topic一致するリポジトリ トピック (たとえば topic:asdf) のアラートを表示します。
validity特定の有効性 (activeinactive、または unknown) を持つシークレットのアラートを表示します。 有効性チェックを有効にしない限り、GitHub トークンにのみ適用されます。有効性の状態の詳細については、「シークレット スキャンからのアラートの評価」を参照してください。

次のステップ