【おーぷんそーすらいせんす】

オープンソースライセンス とは?

💡 「自由に使っていいよ」の条件を定めた約束事
📌 このページのポイント
OSSライセンスの種類と特徴 コピーレフト型(厳格) 派生物も同じライセンスで公開が必要 GPL AGPL Linux, GCC MongoDB(旧) 改変したら必ずソース公開 準コピーレフト型(中間) LGPL MPL ライブラリ利用は自由 パーミッシブ型(寛容) 著作権表示のみで自由に利用可能 MIT Apache BSD React, Rails Android FreeBSD 商用利用もほぼ自由 自由度の比較 厳格 寛容 GPL → LGPL → Apache → MIT 利用目的に合ったライセンスを選ぶことが重要
OSSライセンスの種類と特徴イメージ
ひよこ ひよこ

オープンソース=自由に使っていいの?

ペンギン先生 ペンギン先生

ソースコードが公開されている=何でもOK」ではないよ。ライセンスによって条件が違う。MITライセンスは「著作権表示を残せばほぼ自由」、GPLは「改変したソフトも同じGPLで公開する義務」がある。ライセンスなしのコードは著作権法上むしろ使えないから、必ず確認しようね

ひよこ ひよこ

MITとApacheの違いは?

ペンギン先生 ペンギン先生

どちらも寛容型ライセンスで商用利用OK。MITは最もシンプルで著作権表示だけが条件。Apache 2.0は特許に関する条項が追加されていて、コントリビューターが持つ特許権の使用許可も含まれる。企業で使うならApache 2.0の方が特許リスクが低い。ReactAngularTypeScriptはMIT、KubernetesApache 2.0だよ

ひよこ ひよこ

GPLは何が厳しいの?

ペンギン先生 ペンギン先生

GPLは「コピーレフト」型で、GPLのコードを使って作ったソフトウェアGPLで公開する義務がある。これが「伝染性」と呼ばれる特徴。自社の独自コードもGPLで公開が必要になりうるため、商用ソフトでは避けることが多い。LGPLならライブラリとしてリンクする分にはコピーレフトが及ばないよ

ひよこ ひよこ

ライセンス違反するとどうなる?

ペンギン先生 ペンギン先生

法的には著作権侵害で訴訟リスクがある。実際にGPL違反で訴訟になった例もある。対策として、①使用ライブラリのライセンスを一覧管理する、②license-checkerなどのツールでCIに組み込む、③法務部門と連携してライセンスポリシーを策定する。npmpipMaven依存関係も含めてチェックが必要だよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「オープンソースライセンス」って出てきたら「ソフトウェアの使用条件を定めたルール」と思えればだいたいOK!
📖 おまけ:英語の意味
「Open Source License」 = オープンソースの使用許諾
💬 License(許可証)でソースコードの利用条件を決める。無料=何でもOKではないよ
← 用語集にもどる