GitHub Advanced Security の概要

完了

GitHub Advanced Security (GHAS) は、技術的負債になる可能性があるセキュリティの問題を見つけて修正するのに役立ちます。 GitHub と Azure DevOps の両方で動作し、コードを正常に保つための強力なツールを提供します。

GHAS はセキュリティに重点を置いていますが、技術的負債の発見にも役立ちます。 そのスキャン ツールは、コードの問題、依存関係の問題、および時間の経過と同時に開発を遅くするセキュリティの脆弱性を見つけます。

GHAS が技術的負債にどのように役立つのか

GHAS には、次の 3 つの主要なツールが用意されています。

  • コード分析 - 技術的負債を作成するパターンを検索します
  • 依存関係のスキャン - 古い依存関係または危険な依存関係を識別する
  • セキュリティ スキャン - 負債になる脆弱性をキャッチします

開発の早い段階でこれらのツールを使用することで、技術的負債の発生を防ぐことができます。 これにより、コードのセキュリティが維持され、保守が容易になり、操作が容易になります。

CodeQL 分析: コードの問題を自動的に見つける

CodeQL は、コード内の問題のあるパターンを検索するスマート コード分析ツールです。 以下を見つけるのに役立ちます。

  • 開発を遅くするコーディング エラー
  • コードの保守を困難にする設計上の欠陥
  • インジェクション攻撃などのセキュリティの脆弱性
  • 認証とアクセス制御の問題

CodeQL は、コードベース内の潜在的な問題に関する手掛かりを探す探偵と考えてください。 パターンを使用して、技術的負債が隠れている可能性がある領域を特定します。

依存関係の管理: 依存関係を正常に保つ

古い依存関係は、技術的負債の一般的な原因です。 GHAS 依存関係スキャンは、次の場合に役立ちます。

  • すべてのプロジェクトの依存関係を 1 か所で表示する
  • セキュリティの脆弱性を持つパッケージを検索する
  • 更新プログラムが必要な古いライブラリを特定する
  • ライセンスに関する問題を確認する

Dependabot は、脆弱な依存関係を更新するためのプル要求を自動的に作成します。 これにより、時間を節約し、手動で作業することなくコードを安全に保ちます。

コード スキャン: 借金になる前に問題をキャッチする

コード スキャンでは、次のコードが自動的にチェックされます。

  • セキュリティの脆弱性 (XSS や SQL インジェクションなど)
  • デザインが不適切であることを示すコードのにおい
  • コードを維持しにくくするアンチパターン
  • 開発を遅くする品質の問題

各スキャンでは、明確で実用的な推奨事項が提供されます。 問題とその修正方法を正確に確認し、最も重要な問題に最初に優先順位を付けるのに役立ちます。