AI スキャンは、 CodeQLを補完する AI を利用したスキャン機能のセットです。 機能の範囲は異なります。
- AI Scan for repositories は、CodeQL で既にサポートされている言語を含むすべての言語で、リポジトリの既定のブランチをオンデマンドでスキャンします。
- プル リクエスト用の AI スキャンでは、現在、CodeQLでカバーされていない選択した言語とフレームワークにおける一般的なセキュリティ脆弱性が検出されます。
- AI アプリケーションをスキャン すると、CodeQL 言語カバレッジとは無関係に、間接プロンプトインジェクションなど、AI アプリケーションやエージェントに固有のリスクが検出されます。
各機能には、独自のカバレッジ、可用性、課金の要件があります。
リポジトリの AI スキャン
リポジトリの AI スキャンは パブリック プレビュー プレビュー中であり、変更される可能性があります。
リポジトリの AI スキャンでは、リポジトリの既定のブランチ内のセキュリティ脆弱性が、任意の言語で検出されます。 CodeQL がサポートする言語を超えてカバレッジを拡張し、CodeQL が既に分析している言語で追加の脆弱性を見つけることができます。
書き込みアクセス権を持つユーザーは、オンデマンドでスキャンを実行します。 検出結果は、code scanningアラートと共にCodeQLバックログに追加されます。ここで、検出結果を割り当てたり、問題にリンクしたり、セキュリティ キャンペーンに含めたり、agentic autofixを使用して修正したりできます。
可用性、課金、制限事項、有効化に関するガイダンスなどの詳細については、 リポジトリのバックログの AI スキャン を参照してください。
プル リクエストでの AI スキャン
一般的なコード セキュリティの脆弱性
**プル リクエストの AI スキャンでは、**CodeQLでカバーされていない、選択した言語とフレームワークに対するプル リクエストの変更におけるセキュリティの脆弱性が検出されます。 例としては、PHP と Terraform 構成 (HCL) があります。
有効にすると、対象となるプル要求が作成され、新しいコミットのたびにスキャンされます。 結果は、"AI" ラベル付き CodeQL アラートと共に表示されます。
カバレッジ、可用性、課金、有効化のガイダンスなどを含む詳細については、プル リクエスト向け AI スキャン を参照してください。
AI アプリケーションとエージェントのリスク
AI アプリケーションのスキャン では、プル要求内の AI アプリケーションとエージェントにおけるセキュリティ リスクが検出され、最初は間接プロンプトインジェクションに焦点が当てられています。
有効にすると、検出機能は、有効なプル リクエストが作成されたときに、および新しいコミットのたびにスキャンします。 結果は、pull request にコメントとして表示されます。
カバレッジ、可用性、課金、有効化に関するガイダンスなどの詳細については、プルリクエストのスキャンを行う AI アプリケーション を参照してください。
AI スキャンの管理
企業の場合、共有 AI スキャン ポリシーは、組織がこれらの機能を有効にできるかどうかを制御します。 AI スキャンを許可しても、どの機能も自動的には有効になりません。 「エンタープライズのコード セキュリティと分析のためのポリシーの適用」を参照してください。
組織は各機能を個別に有効にし、リポジトリ管理者は各機能を個別にオプトアウトできます。 アクセス許可とセットアップ手順については、各機能の専用記事を参照してください。