コードスキャンニングについて

code scanning を使用して、GitHub 上のプロジェクトのコードからセキュリティの脆弱性とエラーを見つけることができます。

Code scanningは、Organizationが所有するGitHub Advanced Securityが有効化されたすべてのパブリック及びプライベートリポジトリで利用できます。 詳しい情報については、「GitHub Advanced Security について」を参照してください。

code scanning について

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

code scanning を使用して、コード内の既存の問題の修正を検索し、トリアージして、優先順位を付けることができます。 また、Code scanning は、開発者による新しい問題の発生も防ぎます。 スキャンを特定の日時にスケジュールしたり、プッシュなどの特定のイベントがリポジトリで発生したときにスキャンをトリガーしたりすることができます。

code scanning がコードに潜在的な脆弱性またはエラーを見つけた場合、GitHub はリポジトリにアラートを表示します。 アラートを引き起こしたコードを修正すると、GitHubはそのアラートを閉じます。 詳しい情報については、「リポジトリの code scanning アラートを管理する」を参照してください。

リポジトリまたは Organization をまたいで code scanning による結果を監視するには、webhooks や code scanning API を使用できます。 code scanning 用の webhook に関する詳しい情報については、「Webhook イベントとペイロード」を参照してください。 API に関する情報については、 「Code scanning」を参照してください。

code scanning を始めるには、「リポジトリに対する code scanning を設定する」を参照してください。

CodeQL について

デフォルトでは、code scanning はセマンティックコード分析エンジンである CodeQL を使用します。 CodeQL はコードをデータとして扱い、コードの潜在的な脆弱性を従来の静的分析よりも高い精度で見つけることができます。

QL は CodeQL を動作させるクエリ言語です。 QL はオブジェクト指向ロジックプログラミング言語です。 GitHub、言語の専門家、セキュリティ研究者が code scanning に使用するクエリを作成します。クエリはオープンソースです。 コミュニティはクエリを維持および更新して、分析を改善し、誤検出を減らします。 詳しい情報については、GitHub Security Lab Web サイトの「CodeQL」を参照してください。

code scanning の API エンドポイントについての詳細は、「Code scanning」を参照してください。

  • C/C++
  • C#
  • Go
  • Java
  • JavaScript/TypeScript
  • Python

github/codeqlリポジトリで code scanning のクエリを表示して貢献できます。 詳しい情報については、 CodeQL ドキュメントの「CodeQL クエリ」を参照してください。

code scanningの支払いについて

Code scanning は GitHub Actions を使用し、code scanning ワークフローの実行ごとに GitHub Actions に数分かかります。 詳しい情報については、「GitHub Actionsの支払いについて」を参照してください。

About third-party code scanning tools

Code scanningは、Static Analysis Results Interchange Format (SARIF) データを出力するサードパーティのコードスキャンニングツールと相互運用できます。 SARIFはオープン標準です。 詳しい情報については「code scanningのためのSARIF出力」を参照してください。

You can run third-party analysis tools within GitHub using actions or within an external CI system. For more information, see "Setting up code scanning for a repository" or "Uploading a SARIF file to GitHub."

参考リンク

このドキュメントは役立ちましたか?プライバシーポリシー

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

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

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

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

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

GitHubコミュニティで質問するサポートへの連絡