In this article
ソフトウェアライセンスの基礎知識
知っておきたい 5 種類のソフトウェアライセンス
あらゆる企業が、業務プロセスの管理や従業員、顧客、取引先とのコミュニケーションなど、さまざまな目的でソフトウェアを利用しています。多くの場合、ソフトウェア製品のダウンロード、インストール、アクセスには、ライセンスの有効化や「利用規約」への同意が必要です。
ソフトウェアライセンスにはさまざまな種類があり、利用条件、サポート契約、制限事項、費用も異なります。責任や法的条件、制限事項を十分に理解するために、ソフトウェアライセンスの基本を把握しておく必要があります。
ソフトウェアライセンスを解説
ソフトウェアライセンスとは?
ソフトウェアライセンスとは、アプリケーション、基盤となるソースコード、または関連製品を作成・提供した事業者と、そのエンドユーザーとの間で交わされる契約です。ライセンスは、ソフトウェア開発者の知的財産を保護し、ソフトウェアの使用に起因して生じる可能性のある開発者への請求を制限するための文書です。
ソフトウェアライセンスには、ソフトウェアの配布と使用に関する法的拘束力のある定義も記載されています。インストール、保証、責任などのエンドユーザーの権利も、多くの場合、ソフトウェアライセンスに明記されており、開発者の知的財産の保護も含まれます。
ほとんどのソフトウェアは、著作権法上の扱いが明確に異なる、次の2つのカテゴリのいずれかに分類されます。
プロプライエタリ(クローズドソースとも呼ばれます)
フリー/オープンソースソフトウェア(FOSS)(オープンソースとも呼ばれます)
FOSSソフトウェアライセンスでは、ソフトウェアコードの変更や再利用などの権利が利用者に付与され、ソフトウェア製品とともに実際のソースコードが提供されます。このオープンソース型のライセンスにより、利用者はソフトウェアの機能を変更でき、コードを調査する自由も得られます。
プロプライエタリソフトウェアライセンスでは、コードの変更や再利用は認められず、通常はソースコードではなく実行用コードのみが提供されます。ライセンスには、ライセンシーがソースコードを取得する目的でオブジェクトコードを「リバースエンジニアリング」することを禁止する条項が含まれることもよくあります。
いずれの場合も、ソフトウェアの使用に伴う責任の制限、サポートなど双方の責任、保証や保証の否認について、ソフトウェアライセンスに定められていることがほとんどです。
いずれのライセンスにも適用されないソフトウェアは、通常、次のように分類されます。
パブリックドメインソフトウェア:自由に利用でき、著作権による保護を受けないソフトウェア
ライセンスのない非公開ソフトウェア:著作権による保護の対象となる業務用アプリケーションなど
オープンソースとプロプライエタリのソフトウェアライセンスでは、追加の制限や条件が定められている場合もあります。
所有権を購入者に譲渡するか、販売者が保持するか
ソフトウェアの複製、販売、配布が許可されるか
ライセンスがソフトウェアの購入とリースのどちらに該当するか
ソフトウェアライセンスの仕組み
ソフトウェアを初めて利用するユーザーは通常、ライセンサー(提供者)とライセンシー(ユーザーまたは企業)の関係を法的に定義するエンドユーザーライセンス契約(EULA)を締結します。EULAは、ソフトウェアのインストールと使用に関する購入者の権利を定める契約です。
すべてのEULAには、エンドユーザーがいつ条件に同意したとみなされるかを定める条項があります。たとえば、製品のパッケージを開封した時点や、アクセスするためにEULAの条件に同意するボタンをクリックした時点などです。
Software as a Service(SaaS)などのクラウドベースのアプリケーションでは、EULAに次のようなライセンスの詳細が含まれることがあります。
ユーザーごとの月額または年額料金
契約期間
契約の解約条件
契約期間中に解約した場合の料金の返金
ソフトウェアライセンスのもう1つの用途は、ソフトウェア開発者や企業が、別の事業者のブランドでソフトウェアを販売・配布する権限を付与するケースです。開発者は所有権を保持しながら、ブランドを変更する企業はソフトウェア製品を再販売できます。このライセンス方式は「ホワイトラベリング」と呼ばれます。
2022年版オープンソースセキュリティの現状レポートを公開しました!
Linux Foundationと共同で作成した新しい「オープンソースセキュリティの現状」レポートを公開しました。オープンソースセキュリティが現在直面する最大の課題をご覧ください。
ソフトウェアライセンスの種類
ソフトウェアライセンスには、さまざまな種類のソフトウェアやビジネス形態に対応する、主に5つのカテゴリがあります。無料ソフトウェア(パブリックドメイン)から有料の商用ソフトウェア(プロプライエタリ)まで、幅広いライセンス形態をカバーします。
この両極の間には、オープンソースプロジェクトに適用される3つのカテゴリ(GNU/LGPL、パーミッシブ、コピーレフト)もあります。オープンソースライセンスの利用規約に従わないと、企業秘密が明らかになったり、プロジェクトの開発者から法的措置を取られたりする可能性があります。
知っておきたいソフトウェアライセンスの5つの種類

1. パブリックドメインライセンス
ソフトウェアがパブリックドメインと定義されている場合、誰でも制限なく自由に利用・変更できます。これは「パーミッシブ」なライセンスで、コードをアプリケーションやプロジェクトに取り入れたり、ソフトウェアを自由に再利用したりできます。
パブリックドメインソフトウェアをプロジェクトや重要なアプリケーションに採用する際、企業はいくつかの理由から慎重になる必要があります。
パブリックドメインソフトウェアは、必ずしも優れたコーディング慣行に沿っているとは限らず、アプリケーションに求められるセキュアなソフトウェアの基準を満たしていない場合もあります。
特定のライセンス条件がないソフトウェアが、必ずしもパブリックドメインのコードとは限りません。コピー、再利用、配布する前に、本当にパブリックドメインであることを確認してください。
2. GNU/LGPL – GNU Lesser General Public License(LGPL)
LGPLライセンスでは、開発者は自身のソフトウェア内でオープンソースライブラリにリンクする権利を得られます。LGPLライセンスのライブラリを含めてプロジェクトをコンパイルまたはリンクする場合、生成されたコードには、プロプライエタリを含む任意の種類のライセンスを適用できます。
ただし、ライブラリの一部をコードにコピーしたり変更したりすると、そのライブラリを使用した開発コードには、元のLGPLライセンスの条件が適用されます。
3. パーミッシブライセンス
このライセンスは、オープンソースソフトウェアライセンスの中でも特に一般的で人気があります。「Apache」型や「BSD」型とも呼ばれるパーミッシブライセンスでは、ソフトウェアの配布や変更に関する制限や要件がほとんどありません。パーミッシブなソフトウェアライセンスには、「MIT」ライセンスもあります。
パーミッシブライセンスは、ライセンス表示や著作権表示の保持要件、ソフトウェアの商用・私的利用の可否、商標に関する要件、その他の規定などに違いがあります。
4. コピーレフト
このライセンスは制限が厳しく、互恵ライセンスとも呼ばれます。コピーレフトライセンスでは、変更または配布後のコードを同じソフトウェアライセンスの下で配布する場合に限り、ライセンス対象のコードをソフトウェアプロジェクトの一部として変更または配布できます。
つまり、ソフトウェア製品に含まれるコードが「個人利用のみ」と指定されている場合、配布する新しい製品にも同じ指定・制限を適用する必要があります。
新しいプロジェクトに含まれる元のソフトウェアは変更や配布が許可されているため、このライセンスはソフトウェア開発者にとって最適とは限りません。生成されたコードにも、ソースコードの公開を含め、コピーレフトのライセンスを適用する必要があるためです。
5. プロプライエタリライセンス
このソフトウェアライセンスでは、ソフトウェアの複製、変更、配布が認められません。ソフトウェアの不正使用から開発者や所有者を保護する、最も制限の厳しい種類のライセンスです。
ソフトウェアライセンス契約とは
ソフトウェアライセンス契約は、ソフトウェアの使用を許可するにあたり、ソフトウェア企業または開発者とユーザーの間で交わされる主要な条件を定めた法的文書です。
これらの条件は、開発者の知的財産権を保護し、ソフトウェアの使用によって生じる損害に関する請求を制限することを目的としています。価格や支払い条件が含まれる場合もありますが、別の文書で扱われることがよくあります。ただし、契約の主な目的は、ソフトウェアの使用に関する詳細なルールを定めることです。
ソフトウェアをインストールできる場所と、インストールできるインスタンス数
ソフトウェアの使用方法
ソフトウェアの複製、変更、再配布が認められるか
ソフトウェアに適用される著作権
ソフトウェアの所有権(多くの場合、提供者がすべての所有権を保持することを明記)
契約条件の有効期間
ソフトウェアの適切な使用方法
ソフトウェアライセンスの目的
開発者がソフトウェアを公開する理由は、新しいアイデアを実証するため、できるだけ多くの人に役立ててもらうため、あるいは金銭的・経済的な利益を得るためなど、さまざまです。ソフトウェアに関わるすべての人がその恩恵を受けられるように、使用条件を明確に定義する必要があります。
こうした利用条件は、ライセンス契約として定められます。ソフトウェアライセンスが提供者と利用者の双方にとって重要なのは、次のような理由からです。
ソフトウェアの使用許可を文書で明示することで、企業ユーザーや個人を責任や著作権侵害の申し立てから保護
ソフトウェアを利用できるユーザー数の明確化
メンテナンス、アップグレード、サポートなど、提供内容の定義
保証契約と問題解決の手順
配布の許可と制限
複製や変更などの使用権
ソフトウェアと関連文書を含む著作権の定義
インストール、トレーニング、サポート、ライセンス期間に関する日程
契約終了条件、違約金、金銭的責任
パフォーマンス保証と救済措置
ソフトウェアライセンスは、ライセンサーとライセンシーの間の契約内容全体を定義します。法的・技術的な両面から関係を明確にし、契約期間中に責任について予期せぬ事態や憶測が生じないようにすることが目的です。
モバイルソフトウェアの場合、ライセンス条件では、アプリケーション提供者が端末に保存されたユーザーの機密性の高い個人データにどこまでアクセスできるかを定めています。こうした契約は、財務情報、位置情報、健康データなどの個人情報を保護し、悪用を防ぐことを目的としています。
ソフトウェアライセンスの費用
ソフトウェアライセンスの価格は、ソフトウェアの種類、提供方法、開発にかかった費用によって大きく異なります。SaaSプロバイダーは通常、ユーザー数に応じて料金が決まるサブスクリプションモデルを採用しています。これにより、企業はコストを柔軟に管理できます。
オンプレミス型の包括的な業務ソリューションを提供する企業と、社内アプリケーションやWeb機能の構築に使えるオープンソースのコンポーネントを提供する企業とでは、ソフトウェアライセンスの価格に大きな差があります。こうした費用は不要に思えるかもしれませんが、保険と同じように、必要なときに保護をもたらします。
ソフトウェアライセンス管理
すべてのライセンス、有効日、コンプライアンス上の問題を追跡できる管理ツールを導入すれば、ソフトウェアライセンスや契約を簡単に管理できます。
Snyk Open Sourceのライセンスコンプライアンスを利用すれば、ライセンスの種類を問わず、プロジェクト全体のオープンソースライセンスを効率的に追跡できます。
ソフトウェアライセンスに関するよくある質問
最適なソフトウェアライセンスの種類とは?
実のところ、状況によって異なります。エンタープライズ向けソフトウェアプロバイダーは、一般に企業標準に基づく複雑なライセンステンプレートを提示します。一方、オープンソースソフトウェアのプロバイダーは、ライセンスの利用規約に大幅な柔軟性を持たせている場合があります。
企業が複数種類のソフトウェアライセンスを保有することはできますか?
多くの企業では通常、さまざまなアプリケーションベンダーやソフトウェアの種類に対応するため、複数のソフトウェアライセンスを保有しています。各ライセンスの条件を管理し、すべてのコンプライアンス要件を遵守するのは容易ではありません。意図的かどうかにかかわらず条件を守らなかった場合、財務面で大きな影響が生じる可能性があります。