Apache License 2.0とは? Apache Licenseの許可事項と制限事項(利用規約) Apache Licenseでは、 ユーザーは 元の オープンソースコードを 変更、 配布、 サブライセンスできます。 また、 商用利用、 保証、 特許に 関する 申し立ても 認められています。 この ライセンスの 利用規約は コード自体に 制限を 設けていませんが、 エンドユーザーは、 いかなる 理由であっても オープンソースの 貢献者に 責任を 問う ことは できません。
Apache Licenseを 使用する 際、 開発者は 元の 著作権表示と ライセンス本文の コピーを 含める 必要が あります。 また 場合に よっては、 帰属表示や 元の コードに 加えた 重要な 変更の 開示を 記載した NOTICEファイルの コピーも 必要です。 コードに 加えた 大幅な 変更を 開示する ことは、 Apache Licenseと、 他の 寛容型 オープンソースソフトウェアライセンスに おける 制限との 大きな 違いです。
Apache License 2.0の歴史 199 5年、 Apache Software Foundation (ASF、 旧称Apache Group)から、 最初の Apache Licenseが オープンソースソフトウェアライセンスと して 公開されました。 Apache Software Foundation(ASF) は、 あらゆる 種類の アプリケーションで オープンソースコンポーネントの 利用を 促進する ために、 この ライセンスを 作成しました。
現在、 オープンソースソフトウェアの コンポーネントで Apache Licenseの 最初の バージョンが 使われる ことは ほとんど ありません。 200 4年に ASFが Apache Licenseバージョン2.0 を 作成し、 BSDライセンス モデルから 移行した ためです。 この 新しい バージョンでは、 ライセンス本文に 含まれる 一部の 概念が 明確化され、 ユーザーに 特許権が 付与された ほか、 Apacheへの 帰属表示に 関する 広告条項が 削除されました。 その 結果、 エンドユーザーは オープンソースコードを より 自由に 商用利用できるようになりました。
Apache 2.0はどの種類のライセンスですか? Apache 2.0は 寛容型 ライセンスであり、 コードの 利用に 関する 制限が ほとんど ありません。 これは、 ユーザーに 同じ ソフトウェアライセンスで コードを 配布する ことを 求める コピーレフトライセンス とは 異なります。 Apache Licenseでは、 再配布する コードに Apacheが 求める 適切な ドキュメントが 含まれていれば、 エンドユーザーは 元の コードの 一部を 任意の ライセンスの 下で 変更できます。 ぜひ、 知っておきたい ソフトウェアライセンスの 種類に 関する ガイド も ご覧ください。
Apache Licenseはどのような場合に使うべきですか? オープンソース開発者が Apache Licenseを 選ぶと、 プロジェクトを すばやく 市場に 投入し、 商用アプリケーションで オープンソースコンポーネントを 使いたい 大手ソフトウェア企業に 届ける ことができます。 この ライセンスでは、 企業に コード変更の 開示を 求めず、 特許権も 付与される ため、 企業が 利用を 検討する 可能性の ある オープンソースソフトウェアの 配布に 適しています。 また、 Apacheと いう 名称自体が、 何十年にも わたって 業界で 存在感を 示してきた 財団の 信頼性を 背景に、 利用を 検討している ユーザーに 安心感を 与えます。
Apache License 2.0とMITライセンスの比較 Apache Licenseと MITライセンス は おおむね 似ていますが、 重要な 違いが いくつか あります。 まず、 Apache 2.0の ライセンス本文は MITライセンスよりも 詳細で、 法律用語も 多く 含まれています。 MITライセンスは、 開発者が ソフトウェアを 配布する 際に 使える、 最も シンプルで 分かりやすい オープンソースライセンスを 目指しています。
もう 1つの 大きな 違いは、 Apache Licenseでは、 開発者が 元の ソースコードに 加えた 大幅な 変更を 開示する 必要が ある ことです。 変更後の ソースコード自体を 公開する 必要は ありませんが、 変更した 旨の 通知は 必要です。 ただし、 変更していない コードには Apache Licenseを 引き続き適用する 必要が あります。
MITライセンスとは 異なり、 Apache Licenseの 下で 変更された オープンソースソフトウェアは、 エンドユーザーが 特許を 取得する ことも 認められています。 変更した バージョンが Apacheの 承認を 受けていると 示唆しない 限り、 特許権は 全世界で 有効で、 永続的かつ取消不能、 非独占的です。 Apache Licenseの 文面では 特許権の 明示的な 付与が 明確に 示されていますが、 MITライセンスでは 特許権の 扱いがより 曖昧です。
Apache LicenseとAGPLの比較 GNU Affero General Public License(AGPL) は、 Free Software Foundation (FSF)が 作成した GPLv3 の 派生ライセンスで、 これを 使用する すべての ソフトウェアに 完全な コピーレフトの 適用を 求めます。 これは、 Apacheや MITのような 寛容型 ライセンスとは 正反対の アプローチです。 これらの ライセンスは、 プロプライエタリな 用途を 含め、 あらゆる 目的で オープンソースソフトウェアを 変更・再配布する ことを 促進します。
AGPLと 他の コピーレフトライセンスとの 大きな 違いは、 開発者が ソフトウェアを 明示的に 配布していない 場合 (たとえば バックエンドサーバーにのみ デプロイしている 場合)にも AGPLの 使用を 求める ことで、 抜け穴を ふさいでいる 点です。 その ため、 AGPLは 利用可能な オープンソースライセンスの 中でも 特に 制限が 厳しい ものの 1つです。
コピーレフトライセンスとパーミッシブライセンスの比較
Snykでオープンソースライセンスを管理 現在、 ほとんどの 開発チームが オープンソースソフトウェア (OSS)を 使用している ため、 OSSの ライセンスや ポリシーを 適切に 追跡する ことが 重要です。 たとえば、 ライセンスの 下で 配布される オープンソースコンポーネントを 利用する ソフトウェアプロジェクトでは、 Apache Licenseに 必要な ドキュメントを 含める 必要が あります。 何百もの オープンソース依存関係を 使う 数十もの ソフトウェアプロジェクト全体で、 これらを 管理するのは 容易ではありません。
Snyk Open Source を 使うと、 使用中の ライセンスの 種類を 問わず、 開発チームは プロジェクト全体の オープンソースライセンスを 把握できます。 ポリシー適用の 自動化 と きめ細かな 管理 に より、 オープンソースライセンス違反の リスクを 低減できます。
Snykのライセンスコンプライアンス管理画面のスクリーンショット。ライセンスに関する問題の重大度レベルを表示
Snykでは、 ライセンスの 有効期限や 更新要件も 可視化できます。 大規模な 組織では、 これらの 管理が 複雑に なりがちです。 ライセンスを 効率よく 管理する ことで、 開発者は オープンソースポリシーに 準拠しながら、 迅速に ソフトウェアを 開発できます。
ライセンスコンプライアンスを シンプルに ポリシーを 作成して、 オープンソースライセンスへの 準拠を 大規模に 簡単に 徹底できます。