GNU Affero General Public License(AGPL)とは
ネットワーク経由で提供されるソフトウェアについてもソースコードの提供を求める、SaaSの抜け穴への対応を目的としたコピーレフトの自由ソフトウェアライセンス。
GNU Affero General Public License(AGPL)は、ネットワーク化されたソフトウェアの利用者にも、ローカルで実行されるプログラムの利用者と同じ自由を確保するために作られた、自由ソフトウェアのコピーレフトライセンスである。サーバー側ソフトウェアやウェブサービス、ウェブサーバー、ウェブアプリケーションに一般的に適用される。AGPLはGNU General Public Licenseと多くの目的を共有するが、ネットワーク経由で利用されるソフトウェアを対象とする特別な条項を含む。
主な特徴
AGPLは、対象となるコードの使用、複製、改変を認める一方、受領者に対応するソースコードへのアクセスを提供することを求める。決定的な特徴はネットワーク利用要件である。改変したAGPL対象プログラムを運用し、他者が遠隔からこれと対話できるようにする場合、それらの利用者に改変後のソースコードへのアクセスを提供しなければならない。正式な文言については、ライセンス本文を参照。
典型的な義務
- プログラムを他者に配布する際は、対応するソースコードを開示する。
- ネットワーク経由でプログラムと対話する利用者に、ソースコードへのアクセスを提供する。
- 後続の複製物にも著作権表示およびライセンス条件を保持する。
歴史と目的
AGPLは、ときに「サービスとしてのソフトウェア」のギャップと呼ばれる問題を解消するために開発された。組織はGPL対象のサーバーソフトウェアを改変してオンラインサービスとして提供し、バイナリを配布しなければ、GPLのソース共有要件の発動を回避できた。ネットワーク利用条項を加えることで、ソフトウェアがインターネット経由で提供される場合に、改良をコミュニティへ公開せずに済ませることをより難しくしている。クラウド時代における利用者の自由を守るものとして、自由ソフトウェア運動の中でしばしば支持されている。
互換性、バージョン、実務上の利用
AGPLには複数のバージョンがあり、他のライセンスとの互換性や実務上の意味合いは異なる。サービス提供者による機能強化も共有されることを確保したいプロジェクトは、AGPLを選択する。一方で、より広範な採用を促すために寛容なライセンスを選ぶ組織もあれば、相互性を維持するためにAGPLを用いる組織もある。ネットワーク条項がプロジェクトの目標に適するかを判断する際、法律家や保守担当者はAGPLの利点と制約を比較することが多い。
主な相違点と例
AGPLは、ネットワーク利用者にソースコードの提供を申し出る明示的な要件を持つ点で、主にGPLと異なる。これは、サービスとして提供されるソフトウェア(SaaS)に関する懸念に対応するものである。実務上、改変したAGPLソフトウェアを運用するホスティング提供者は、その改変を利用可能にする必要がある。実装や方針に関する詳しい指針については、公式ページやリポジトリからリンクされているプロジェクト文書およびコミュニティの資料を参照できる。
さらに理解を深めるには、ライセンスガイド、プロジェクトのFAQ、信頼できる解説を参照し、AGPLが展開モデル、コントリビューター契約、企業方針とどのように関わるかを確認するとよい。
関連項目
著者
AlegsaOnline.com GNU Affero General Public License(AGPL)とは Leandro Alegsa
URL: https://ja.alegsaonline.com/art/39331