リポジトリへの書き込み権限があるユーザなら誰でも、pull request の code scanning アノテーションを表示できます。 詳しくは、「pull request で Code scanning アラートをトリアージする」を参照してください。
リポジトリのアラートを表示する
[セキュリティ] タブでリポジトリのすべてのアラートの概要を表示するには、書き込みアクセス許可が必要です。
デフォルトでは、リポジトリのデフォルトのブランチのアラートのみが表示されるように、code scanning アラートがフィルター処理されています。
-
GitHub で、リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [ セキュリティ] をクリックします。 [セキュリティ] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [セキュリティ] をクリックします。
-
左側のサイドバーで、[ Code scanning をクリックします。
-
必要に応じて、フリー テキスト検索ボックスまたはドロップダウン メニューを使用してアラートをフィルター処理します。 たとえば、アラートを識別するために使われたツールによってフィルタリングできます。
-
[Code scanning] で、調査するアラートをクリックすると、詳しいアラート ページが表示されます。 [アラート] ページのステータスと詳細は、他のブランチにアラートが存在する場合であっても、リポジトリの既定のブランチに対するアラートのステータスを反映するのみです。 既定以外のブランチのアラートの状態は、[アラート] ページの右側にある [影響を受けるブランチ] セクションで確認できます。 既定のブランチにアラートが存在しない場合、アラートの状態は、[in pull request] または [in branch] として、グレー表示されます。
-
アラートでデータ フローの問題が強調表示された場合は、必要に応じて [パスの表示] をクリックし、データソースから、それが使用されているシンクまでのパスを表示します。
-
CodeQL 解析によるアラートには、問題の説明も含まれています。 コードの修正方法に関するガイダンスについては、 [さらに表示] をクリックします。
詳しくは、「Code scanningアラートについて」を参照してください。
注記: code scanning 解析の前回の実行日時をツール ステータス ページで確認できます。 詳しくは、「コード スキャンのツール状態ページについて」を参照してください。
code scanning アラートのフィルター処理
code scanning アラート ビューに表示されるアラートをフィルター処理できます。 これにより、特定の種類のアラートに集中できるため、数多くのアラートがある場合に便利です。 表示されるアラートの一覧を絞り込むために使用できるいくつかの定義済みのフィルターとさまざまなキーワードがあります。
ドロップダウン リストからキーワードを選ぶか、検索フィールドにキーワードを入力すると、結果が含まれる値のみが表示されます。 結果のないフィルターを設定せずに済みます。
複数のフィルターを入力すると、ビューには、これらの _すべて_のフィルターと一致するアラートが表示されます。 たとえば、is:closed severity:high branch:main
の場合、main
ブランチに存在し、クローズされた重大度が高いアラートのみが表示されます。 例外は、refs (ref
、branch
、pr
) に関連するフィルターです。is:open branch:main branch:next
の場合、main
ブランチと next
ブランチの両方のオープンなアラートが表示されます。
既定ではないブランチでフィルター処理したのと同じアラートが、既定のブランチに存在する場合、そのアラートのアラート ページには、その状態が既定ではないブランチでの状態と競合する場合でも、既定のブランチのアラートの状態のみが反映されることに注意してください。 たとえば、アラートの概要の branch-x
の [Open](オープン) リストに表示されるアラートは、そのアラートが既定のブランチで既に修正されている場合、アラート ページに "Fixed"(修正済み) の状態で表示される場合があります。 フィルター処理したブランチのアラートの状態は、アラート ページの右側の [Affected branches](影響を受けるブランチ) セクションで確認できます。
tag
フィルターにプレフィックス -
を付けると、そのタグを含む結果を除外できます。 たとえば、-tag:style
には style
タグのないアラートのみが表示されます。
結果をアプリケーション コードのみに制限する
"Only alerts in application code" フィルターまたは autofilter:true
キーワードと値を使用して、結果をアプリケーション コード内のアラートに制限できます。 アプリケーション コードではなく自動的にラベル付けされるコードの種類の詳細については、「Code scanningアラートについて」を参照してください。
code scanningアラートの検索
アラートのリストを検索できます。 これは、リポジトリ中に大量のアラートがある場合や、たとえばアラートの正確な名前を知らないような場合に役立ちます。 GitHubは以下に渡って自由テキスト検索を行います。
- アラートの名前です。
- アラート詳細 (これには、折り畳み可能なセクション [詳細を表示] では既定で非表示になる情報も含まれます)
サポートされている検索 | 構文の例 | 結果 |
---|---|---|
単一語検索 | injection | 語 injection を含むすべてのアラートが返されます |
複数語検索 | sql injection | sql または injection を含むすべてのアラートが返されます |
完全一致検索 (二重引用符を使用) | "sql injection" | 句 sql injection をこのとおりに含むすべてのアラートが返されます |
OR検索 | sql OR injection | sql または injection を含むすべてのアラートが返されます |
AND検索 | sql AND injection | sql と injection の両方の語を含むすべてのアラートが返されます |
ヒント:
- 複数語検索はOR検索と等価です。
- AND 検索により、検索語句がアラート名または詳細の 任意の位置 に任意の順序で見つかった場合に結果が返されます。
- GitHub で、リポジトリのメイン ページに移動します。
- リポジトリ名の下にある [ セキュリティ] をクリックします。 [セキュリティ] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [セキュリティ] をクリックします。
- 左側のサイドバーで、[ Code scanning をクリックします。
- [フィルター] ドロップダウン メニューの右側にあるフリー テキスト検索ボックスに、検索するキーワードを入力します。
- Return キーを押します。 アラートリストには、検索条件にマッチしたオープンなcode scanningアラートが含まれます。
Issues で code scanning アラートを追跡する
注: Issue の code scanning アラートの追跡は パブリック プレビュー であり、変更される可能性があります。
この機能では、GitHub Actions を使用してネイティブで、または既存の CI/CD インフラストラクチャを使用して外部で分析を実行すること、およびサードパーティの code scanning ツールがサポートされていますが、サードパーティの追跡ツールはサポート されていません。
特定の code scanning アラートの状態を追跡する問題を迅速に作成するには、[code scanning アラート] ページで、追跡するアラートをクリックします。そのアラートの詳細ページ内の [問題の作成] をクリックします。 自動生成された問題を必要に応じてカスタマイズし、[新しい問題の送信] をクリックします。
または、存在する問題で code scanning アラートを追跡するには、issue のタスク リスト項目としてアラートの URL を追加します。 タスク リストについて詳しくは、「タスクリストについて」をご覧ください。
code scanning アラートを追跡するための issue の作成については、「タスク リストを使用した issue のコード スキャン アラートの追跡」を参照してください。
code scanning アラートへの応答を監査する
GitHub ツールを使用して、code scanning アラートに応答して実行されたアクションを監査できます。 詳しくは、「セキュリティ アラートの監査」を参照してください。