ニュース

GitHubのオープンソース依存関係コンプライアンスプレイブック

GitHubのオープンソースプログラムオフィスが、オープンソース依存関係のライセンスコンプライアンスとサプライチェーンインテグリティの管理方法を共有します。

July 4, 2026· 1 min read· 出典: The GitHub Blog
GitHubのオープンソース依存関係コンプライアンスプレイブック

GitHubのオープンソースプログラムオフィス(OSPO)が、オープンソース依存関係のコンプライアンスを維持する方法についての見解を公開しました。OSPOを運営するJeffが執筆したこの記事では、GitHubがソフトウェアサプライチェーン全体でライセンス義務を確実に果たすために取る実践的な手順を説明しています。

コンプライアンスの課題

オープンソースの依存関係は至る所に存在し、それぞれに独自のライセンス条件があります。GitHubのようなプラットフォームは、数千ものオープンパッケージを消費しており、それらの義務を追跡し履行することは容易ではありません。Jeffは、GitHubが自動化ツールと手動レビューの組み合わせを使用してコンプライアンスを維持していると述べています。

主要なプラクティス

  • 自動スキャン: GitHubはコードベースでソフトウェア構成分析(SCA)ツールを実行し、オープンソースコンポーネントとそのライセンスを検出します。
  • ライセンス分類: 検出された各コンポーネントは、ライセンスタイプ(例:MIT、GPL、Apache)ごとに分類され、義務を判断します。
  • ポリシー適用: 内部ポリシーにより、特定のライセンスの使用をブロックしたり、採用前に承認を要求したりします。
  • 帰属生成: 自動化システムが配布用の通知と帰属ファイルを生成します。
  • 監査証跡: すべてのコンプライアンス決定とアクションがトレーサビリティのために記録されます。

サプライチェーンインテグリティ

ライセンスに加えて、GitHubはサプライチェーンセキュリティにも注力しています。依存関係の出所を検証し、既知の脆弱性をチェックし、悪意のあるパッケージを監視します。これは、SLSAやSBOMなどの業界全体の取り組みと一致しています。

エンジニアへの教訓

オープンソースに依存するソフトウェアを構築している場合、GitHubのアプローチは確かな参考になります。鍵は、スキャン、分類、帰属を可能な限り自動化し、エッジケースには人間を関与させることです。コンプライアンスは単なる法的なオーバーヘッドではなく、責任あるエンジニアリングの一部です。

出典: The GitHub Blog