Skip to main content

CIシステムでのCodeQL Code scanningについて

サード パーティの継続的インテグレーション システムで CodeQL を使ってコードを分析し、結果を your enterprise にアップロードできます。 結果のcode scanningアラートは、GitHub AE内で生成されたアラートとともに表示されます。

Code scanning は、GitHub AE の Organization 所有のリポジトリで利用できます。 これは GitHub Advanced Security の機能です (ベータ リリース中は無料)。 詳細については、「GitHub Advanced Security について」を参照してください。

CIシステムでのCodeQL code scanningについて

Code scanning は、開発者が GitHub リポジトリ内のコードを分析して、セキュリティの脆弱性とコーディングエラーを見つけることができる機能です。 分析によって特定されたすべての問題はGitHub AEに表示されます。 詳細については、「CodeQL によるcode scanningについて」を参照してください。

CodeQL code scanningをGitHub AE内で、GitHub Actionsを使って実行できます。 または、サードパーティの継続的インテグレーションや継続的デリバリー/デプロイ (CI/CD) システムを使用している場合は、CodeQL の分析を既存のシステム上で実行し、その結果を your enterprise にアップロードできます。

CodeQL CLIをサードパーティのシステムに追加して、コードを分析するツールを呼び、SARIFの結果をGitHub AEにアップロードしてください。 結果のcode scanningアラートは、GitHub AE内で生成されたアラートとともに表示されます。 詳細については、「CI システムでの CodeQL コード スキャンについて」を参照してください。

注: GitHub AE の結果の code scanning として表示する SARIF データをアップロードすることは、GitHub Advanced Security が有効にされた組織が所有するリポジトリ。 詳細については、「リポジトリのセキュリティと分析の設定を管理する」を参照してください。

CodeQL CLI について

CodeQL CLIは、コードの分析に利用できるスタンドアローンの製品です。 その主な目的は、コードベースのデータベース表現であるCodeQLデータベースを生成することです。 データベースの準備ができたら、それに対して対話形式でクエリを実行することや、一連のクエリを実行して SARIF 形式で結果セットを生成し、結果を your enterprise にアップロードすることができます。

以下の分析にはCodeQL CLIを使ってください:

  • たとえばJavaScriptやPythonのような動的言語。
  • コンパイル済みの言語 (C/C++、C#、Java など)。
  • 複数言語を組み合わせて書かれたコードベース。

詳細については、「CI システムでの CodeQL CLI のインストール」を参照してください。

メモ:

  • CodeQL CLI は、Advanced Security のライセンスを持つ顧客が使うことができます。

  • CodeQL CLI は現在、glibc 以外の Linux ディストリビューション ((musl ベースの) Alpine Linux など) との互換性がありません。