Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ソフトウェアライセンス_2020 / Software_License_2020
Search
Cybozu
PRO
August 19, 2020
Technology
0
61k
ソフトウェアライセンス_2020 / Software_License_2020
Cybozu
PRO
August 19, 2020
Tweet
Share
More Decks by Cybozu
See All by Cybozu
PSIRTでAIテストを実施するまでの道のり
cybozuinsideout
PRO
0
87
無理なく続けるサイボウズの社内勉強会
cybozuinsideout
PRO
1
1.2k
分散システムにおける 無兆候データ破損の影響について
cybozuinsideout
PRO
1
59
タンパク質構造のシミュレーションソフトウェア試行錯誤
cybozuinsideout
PRO
1
47
読みやすいアセンブリ言語
cybozuinsideout
PRO
1
43
Wasmで拡張できる軽量マークアップ⾔語Brack(後編)
cybozuinsideout
PRO
1
36
Wasmで拡張できる軽量マークアップ⾔語Brack(前編)
cybozuinsideout
PRO
1
37
kintone開発組織のAWSエンジニアの紹介
cybozuinsideout
PRO
0
240
kintone開発組織のサービスプラットフォームチームの紹介
cybozuinsideout
PRO
0
130
Other Decks in Technology
See All in Technology
Oracle Cloud Infrastructure:2025年6月度サービス・アップデート
oracle4engineer
PRO
1
140
UIテスト自動化サポート- Testbed for XCUIAutomation practice
notoroid
0
110
VCpp Link and Library - C++ breaktime 2025 Summer
harukasao
0
220
Абьюзим random_bytes(). Фёдор Кулаков, разработчик Lamoda Tech
lamodatech
0
270
(非公式) AWS Summit Japan と 海浜幕張 の歩き方 2025年版
coosuke
PRO
1
330
原則から考える保守しやすいComposable関数設計
moriatsushi
3
500
本部長の代わりに提案書レビュー! KDDI営業が毎日使うAIエージェント「A-BOSS」開発秘話
minorun365
PRO
14
2.3k
Liquid Glass革新とSwiftUI/UIKit進化
fumiyasac0921
0
140
Windows 11 で AWS Documentation MCP Server 接続実践/practical-aws-documentation-mcp-server-connection-on-windows-11
emiki
0
700
IAMのマニアックな話 2025を執筆して、 見えてきたAWSアカウント管理の現在
nrinetcom
PRO
4
660
生成AIでwebアプリケーションを作ってみた
tajimon
2
120
本当に使える?AutoUpgrade の新機能を実践検証してみた
oracle4engineer
PRO
1
120
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
660
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
Building Applications with DynamoDB
mza
95
6.5k
We Have a Design System, Now What?
morganepeng
52
7.6k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
490
Optimising Largest Contentful Paint
csswizardry
37
3.3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Practical Orchestrator
shlominoach
188
11k
Optimizing for Happiness
mojombo
379
70k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Transcript
ソフトウェアライセンス 2020/04/28 法務統制本部 & OSS推進チーム
理想 ▌他者のソフトウェアを使うときの注意点を考慮できる ▌OSS 関連活動を適切に⾏える 2/ 34
この講義のゴール ▌ソフトウェアライセンスの法的背景がわかる ▌OSS ライセンスがどんなものかわかる ▌業務での OSS との関わり⽅がわかる 3/ 34
⽬次 ▌ソフトウェアとライセンス ▌OSS ライセンス ▌サイボウズの OSS ポリシー ▌他者ソフトウェア (OSS) を使うとき
▌OSS を公開するとき 4/ 34
ソフトウェアとライセンス 5/34
ソフトウェアと著作権 ▌ソフトウェア = 著作物 ↓ 著作権法が適⽤される ▌他⼈の著作物の無断利⽤は、著作権侵害になる 6/ 34
「利⽤」と「使⽤」の違い ▌著作権違反になるのは、著作物を「利⽤」したとき ▌プログラムの「利⽤」に該当する⾏為 l ユーザー環境にインストールさせるためにプログラムを提供する l パッケージ製品に組み込んで提供する l ダウンロードサイトに置く l
プログラムを改変する ▌プログラムの「使⽤」に該当する⾏為 l ローカルでプログラムを実⾏して⾃分で使う l サーバー上でプログラムを実⾏し、ユーザーにその機能を使わせる = クラウドサービス 7/ 34
ライセンス ▌ライセンスとは、著作権法に基づく利⽤許諾条件 l 「私が権利を持っている著作物を利⽤させてあげる 代わりに、この条件を守ってね」というもの ▌条件はライセンサ次第で、どういった制限が掛かるかは それぞれのライセンスによる 8/ 34
ライセンス違反で起こり得ること ▌著作権の⾏使 l 派⽣(対象のソフトウェアを組み込んだ)製品の販売停⽌(差⽌め) l ソフトウェアの利⽤料の請求(損害賠償請求) ▌許諾条件の強制 l 派⽣製品のソースコードの開⽰ ▌レピュテーションリスク
l ライセンスビジネスをしている企業としてのブランド価値の低下 l オープンソースコミュニティで炎上 9/ 34
OSS ライセンス 10/34
OSS ライセンスとは ▌OSS とは l ソースコードが無償で公開され、誰でもその改変と 再配布を⾃由に⾏えるソフトウェアのこと l Linux, MySQL,
Java, Nginx, ... ▌OSS ライセンスとは l OSS を利⽤する際のライセンス l ⾊々な種類があり、それぞれ条件が違う l Open Source Initiative (OSI) の承認が必要 11/ 34
OSS ライセンスに共通する主な条件 ▌再配布する際にライセンス本⽂を付ける ▌利⽤は無保証、脆弱性や不具合は⾃⼰責任 ▌対象のソフトウェアに関連する特許がある場合、 無償で利⽤許諾する(特定のライセンスのみ) 12/ 34
OSS ライセンスの類型 OSS ライセンスの類型 改変部分の ソースコード開⽰ 他のソフトウェアの ソースコード開⽰ コピーレフト型ライセンス (代表︓
GPL) 要 要 準コピーレフト型ライセンス (代表︓ MPL) 要 不要 ⾮コピーレフト型ライセンス (代表︓ BSD License) 不要 不要 13/ 34
コピーレフト型 ▌特徴 l 派⽣製品のソースコードも開⽰させる → ⾃由に使えるソフトウェアを広げていく、という考え l 製品に組み込んだ場合、製品全てのソースコード開⽰が 必要となる ▌主な
OSS ライセンス l GPL, AGPL, EUPL 14/ 34
コピーレフト型 ▌コピーレフト型の OSS l Linux, MySQL, WordPress ▌主な条件 l 再配布する際に同じライセンスを適⽤する
l 派⽣製品(動的リンクも含む)のソースコードを開⽰する l AGPL︓クラウドサービスのサーバーで使⽤した場合、 派⽣製品(動的リンクも含む)のソースコードを開⽰する 15/ 34
準コピーレフト型 ▌特徴 l 改変した場合、その改変部分を開⽰させる ▌主な OSS ライセンス l MPL, LGPL
16/ 34
準コピーレフト型 ▌準コピーレフト型の OSS l Mozilla (Firefox, Thunderbird) ▌主な条件 l 改変した場合、その改変部分のソースコードを開⽰する
l MPL︓改変しない場合、取得元を開⽰する l LGPL︓派⽣製品(動的リンクを含まない)のソースコードを 開⽰する 17/ 34
⾮コピーレフト型 ▌特徴 l ほぼ何も気にしない(p12の条件くらい) ▌主な OSS ライセンス l BSD License,
Apache License, MIT License ▌⾮コピーレフト型の OSS l Nginx, Apache, React 18/ 34
サイボウズの OSS ポリシー 19/34
ドキュメント ▌ポリシー l 権利帰属についてや、OSS 関連活動をどのように ⾏うべきかが書かれた内規 ▌ガイドライン l 業務に沿った⼿引き 20/
34
策定の背景 ▌サイボウズでは製品・サービスにおいて数多くの OSS が利⽤ されており、従業員も業務や個⼈活動で OSS 関連活動の機会 が増えている ▌そこで、以下を⽬的に策定された l
OSS 関連活動を過⼤な負担なく⾏えるよう⽀援するため l オープンソースコミュニティにおける良き⼀員であるため 21/ 34
著作権の帰属 ▌サイボウズの著作物 ① 当社の極秘情報を含むもの ② 上⻑の明⽰的な指⽰または承認のもと作成されたもの ↓ それ以外は個⼈の著作物となる ▌著作権の譲渡 l
条件に従って承認されれば、著作権が譲渡される 22/ 34
努⼒義務とライセンス違反への対応 ▌他者 OSS を利⽤するなかで不具合を発⾒した場合、 速やかに当該不具合を報告するよう努める ▌ライセンスに違反する事実を発⾒した場合、 速やかに OSS 管理組織に報告しなければならない 23/
34
何かあったら ▌OSS 管理組織(現 OSS 推進チーム)まで 24/ 34
他者ソフトウェア (OSS) を使うとき 25/34
ライセンスを確認する 26/ 34
ライセンスの確認(優先順) ▌ソースコード中のライセンス原⽂の記載 l プログラムファイルのヘッダに記載された ライセンス名とリンクも同様 ▌アーカイブに配置されたライセンスファイル ▌アーカイブ内の README ファイルの記載 ▌DLサイト上の記載(根拠としては弱い)
l DLサイト上の記載と、アーカイブ内のライセンス ファイルが異なる場合もある... 27/ 34
気を付けるポイント ▌ライセンスが明確ではないソフトウェアを使わない ▌パッケージ製品に、コピーレフト型の OSS を使わない ▌クラウド製品に、AGPL の OSS を使わない 28/
34
利⽤までの流れ ▌使いたい OSS のライセンスが「OSS license リスト」 にあるか確認 l リストにあれば、利⽤条件に従って利⽤ ▌リストになければ、「オープンソースライセンス確認アプリ」
で過去に利⽤可能判断がされているか確認 l リストにあれば、利⽤条件に従って利⽤ ▌過去の判断が無ければ、「OSS推進チーム依頼箱」 でライセンスの確認を依頼 29/ 34
OSS を公開するとき 30/34
気を付けるポイント ▌著作権が⾃分に帰属している場合 l OSS を公開する際に「Copyright YEAR Cybozu」のように サイボウズの著作物として表⽰することはできない ▌著作物が会社に帰属している場合 l
公開のルールに従う 31/ 34
⾃社 OSS を社外に公開する流れ ▌GitHub にリポジトリを作成する ▌OSS ライセンスを選択し、必要なファイルを配置する ▌選択した OSS ライセンスに従って著作権の年号や著作権者を
表記する 32/ 34
まとめ 33/34
▌ソフトウェアを利⽤する際は、ライセンスに気を付けましょう ▌OSS ポリシーを守りましょう ▌困ったら、法務統制本部か OSS 推進チームに相談しましょう 34/ 34