Submit Search
Upload
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
•
2 likes
•
2,497 views
D
Daisuke Morishita
Follow
オープンソースカンファレンス2021 Online/Spring https://event.ospn.jp/osc2021-online-spring/session/297765
Read less
Read more
Technology
Slideshow view
Report
Share
Slideshow view
Report
Share
1 of 55
Download now
Download to read offline
Recommended
オープンソースライセンスの基礎と実務
オープンソースライセンスの基礎と実務
Yutaka Kachi
GNU AGPLv3について(On GNU AGPLv3)
GNU AGPLv3について(On GNU AGPLv3)
真行 八田
Guide To AGPL
Guide To AGPL
Mikiya Okuno
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門
Etsuji Nakai
Docker Compose 徹底解説
Docker Compose 徹底解説
Masahito Zembutsu
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Akihiro Suda
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
AWSではじめるMLOps
AWSではじめるMLOps
MariOhbuchi
Recommended
オープンソースライセンスの基礎と実務
オープンソースライセンスの基礎と実務
Yutaka Kachi
GNU AGPLv3について(On GNU AGPLv3)
GNU AGPLv3について(On GNU AGPLv3)
真行 八田
Guide To AGPL
Guide To AGPL
Mikiya Okuno
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門
Etsuji Nakai
Docker Compose 徹底解説
Docker Compose 徹底解説
Masahito Zembutsu
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Akihiro Suda
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
AWSではじめるMLOps
AWSではじめるMLOps
MariOhbuchi
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
Kumazaki Hiroki
Redisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
WebAssemblyのWeb以外のことぜんぶ話す
WebAssemblyのWeb以外のことぜんぶ話す
Takaya Saeki
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
mosa siru
ログ解析を支えるNoSQLの技術
ログ解析を支えるNoSQLの技術
Drecom Co., Ltd.
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
Kuniyasu Suzaki
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
分散システムについて語らせてくれ
分散システムについて語らせてくれ
Kumazaki Hiroki
SpringBootTest入門
SpringBootTest入門
Yahoo!デベロッパーネットワーク
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
Yahoo!デベロッパーネットワーク
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Atsushi Tanaka
忙しい人の5分で分かるDocker 2017年春Ver
忙しい人の5分で分かるDocker 2017年春Ver
Masahito Zembutsu
例外設計における大罪
例外設計における大罪
Takuto Wada
Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~
Masahito Zembutsu
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
たまにはライセンスの話をしよう 20110211
たまにはライセンスの話をしよう 20110211
Yutaka Kachi
たぶん45分くらいでわかる、オープンソースの世界
たぶん45分くらいでわかる、オープンソースの世界
Yutaka Kachi
More Related Content
What's hot
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
Kumazaki Hiroki
Redisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
WebAssemblyのWeb以外のことぜんぶ話す
WebAssemblyのWeb以外のことぜんぶ話す
Takaya Saeki
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
mosa siru
ログ解析を支えるNoSQLの技術
ログ解析を支えるNoSQLの技術
Drecom Co., Ltd.
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
Kuniyasu Suzaki
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
分散システムについて語らせてくれ
分散システムについて語らせてくれ
Kumazaki Hiroki
SpringBootTest入門
SpringBootTest入門
Yahoo!デベロッパーネットワーク
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
Yahoo!デベロッパーネットワーク
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Atsushi Tanaka
忙しい人の5分で分かるDocker 2017年春Ver
忙しい人の5分で分かるDocker 2017年春Ver
Masahito Zembutsu
例外設計における大罪
例外設計における大罪
Takuto Wada
Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~
Masahito Zembutsu
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
What's hot
(20)
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
Redisの特徴と活用方法について
Redisの特徴と活用方法について
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
WebAssemblyのWeb以外のことぜんぶ話す
WebAssemblyのWeb以外のことぜんぶ話す
DockerとPodmanの比較
DockerとPodmanの比較
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
ログ解析を支えるNoSQLの技術
ログ解析を支えるNoSQLの技術
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
分散システムについて語らせてくれ
分散システムについて語らせてくれ
SpringBootTest入門
SpringBootTest入門
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
忙しい人の5分で分かるDocker 2017年春Ver
忙しい人の5分で分かるDocker 2017年春Ver
例外設計における大罪
例外設計における大罪
Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Similar to エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
たまにはライセンスの話をしよう 20110211
たまにはライセンスの話をしよう 20110211
Yutaka Kachi
たぶん45分くらいでわかる、オープンソースの世界
たぶん45分くらいでわかる、オープンソースの世界
Yutaka Kachi
技術選択とアーキテクトの役割
技術選択とアーキテクトの役割
Toru Yamaguchi
オープンソースライセンス ケーススタディ
オープンソースライセンス ケーススタディ
Yutaka Kachi
Android™組込み開発基礎コース BeagleBoard編
Android™組込み開発基礎コース BeagleBoard編
OESF Education
OSS光と闇
OSS光と闇
Hirofumi Ichihara
テクてく Lotus 技術者夜会 03/16 Lotus Notes/Domino Upgrade Pack とは
テクてく Lotus 技術者夜会 03/16 Lotus Notes/Domino Upgrade Pack とは
Hiroaki Komine
DevConf.cz 2020参加報告
DevConf.cz 2020参加報告
Hitachi, Ltd. OSS Solution Center.
Otrs&OTOBO_document 20210402
Otrs&OTOBO_document 20210402
IO Architect Inc.
Keycloak入門-OpenID ConnectによるAPIセキュリティ
Keycloak入門-OpenID ConnectによるAPIセキュリティ
Yuichi Nakamura
080826 Extライセンスについて(第3回勉強会)Slideshare
080826 Extライセンスについて(第3回勉強会)Slideshare
Yuki Naotori
企業のオープンソース活動を支える Open Source Program Office (OSPO)
企業のオープンソース活動を支える Open Source Program Office (OSPO)
takanori suzuki
20130203 oss-db-lpi
20130203 oss-db-lpi
Shinichi Matsuda
20130203 OSS-DB Exam Silver 技術解説無料セミナー
20130203 OSS-DB Exam Silver 技術解説無料セミナー
Kazuko Itoda
[db tech showcase OSS 2017] A14: IoT時代のデータストア--躍進するNoSQL、拡張するRDB by OSSコンソーシア...
[db tech showcase OSS 2017] A14: IoT時代のデータストア--躍進するNoSQL、拡張するRDB by OSSコンソーシア...
Insight Technology, Inc.
Lf intro 2020-r5
Lf intro 2020-r5
Hashimoto Hisashi
20101022
20101022
信次郎 兼久
Mbed祭り 2017@春の新横浜 20170225 竹之下
Mbed祭り 2017@春の新横浜 20170225 竹之下
Koyo Takenoshita
App017 power shellの新しい相棒_visual_studio
App017 power shellの新しい相棒_visual_studio
Tech Summit 2016
App017 power shellの新しい相棒_visual_studio_
App017 power shellの新しい相棒_visual_studio_
Tech Summit 2016
Similar to エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
(20)
たまにはライセンスの話をしよう 20110211
たまにはライセンスの話をしよう 20110211
たぶん45分くらいでわかる、オープンソースの世界
たぶん45分くらいでわかる、オープンソースの世界
技術選択とアーキテクトの役割
技術選択とアーキテクトの役割
オープンソースライセンス ケーススタディ
オープンソースライセンス ケーススタディ
Android™組込み開発基礎コース BeagleBoard編
Android™組込み開発基礎コース BeagleBoard編
OSS光と闇
OSS光と闇
テクてく Lotus 技術者夜会 03/16 Lotus Notes/Domino Upgrade Pack とは
テクてく Lotus 技術者夜会 03/16 Lotus Notes/Domino Upgrade Pack とは
DevConf.cz 2020参加報告
DevConf.cz 2020参加報告
Otrs&OTOBO_document 20210402
Otrs&OTOBO_document 20210402
Keycloak入門-OpenID ConnectによるAPIセキュリティ
Keycloak入門-OpenID ConnectによるAPIセキュリティ
080826 Extライセンスについて(第3回勉強会)Slideshare
080826 Extライセンスについて(第3回勉強会)Slideshare
企業のオープンソース活動を支える Open Source Program Office (OSPO)
企業のオープンソース活動を支える Open Source Program Office (OSPO)
20130203 oss-db-lpi
20130203 oss-db-lpi
20130203 OSS-DB Exam Silver 技術解説無料セミナー
20130203 OSS-DB Exam Silver 技術解説無料セミナー
[db tech showcase OSS 2017] A14: IoT時代のデータストア--躍進するNoSQL、拡張するRDB by OSSコンソーシア...
[db tech showcase OSS 2017] A14: IoT時代のデータストア--躍進するNoSQL、拡張するRDB by OSSコンソーシア...
Lf intro 2020-r5
Lf intro 2020-r5
20101022
20101022
Mbed祭り 2017@春の新横浜 20170225 竹之下
Mbed祭り 2017@春の新横浜 20170225 竹之下
App017 power shellの新しい相棒_visual_studio
App017 power shellの新しい相棒_visual_studio
App017 power shellの新しい相棒_visual_studio_
App017 power shellの新しい相棒_visual_studio_
Recently uploaded
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
Recently uploaded
(11)
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
1.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 株式会社 日立ソリューションズ OSSコンサルティンググループ 森下 大輔 エンジニアのためのOSSライセンス管理 〜OSS管理ツールの池の水ぜんぶ抜く〜
2.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 1 はじめに OSS管理ツールの池の水ぜんぶ抜く クラウドサービスFOSSAについて 本日のアジェンダ
3.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 2 はじめに
4.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 3 自己紹介 森下 大輔 @OSSコンサルティンググループ Qiitaやってます https://qiita.com/d-morishita
5.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 4 (念のため)OSSライセンスとは • MIT、Apache-2.0、GPL、AGPL、など • OSI(Open Source Initiative)が定義
6.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 5 OSSライセンス”管理”とは • 使っているOSSをすべて把握すること • OSSライセンスを正しく把握すること • ライセンスのルールに従うこと(責務を全うすること)
7.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 6 エンジニアにとってのOSSライセンス管理 • 手間がかかる • ライセンスの確認には手間と時間がかかる • 開発スピードを落としたくない • よく分からない • ライセンスは英語でよく分からない • 日本語にしても法律関連の文章で意味不明
8.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 7 エンジニアにとってのOSSライセンス管理 • 手間がかかる • ライセンスの確認には手間と時間がかかる • 開発スピードを落としたくない • よく分からない • ライセンスは英語でよく分からない • 日本語にしても法律関連の文章で意味不明 ←ツール ←解釈共有
9.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 8 OSSライセンス管理のためのツール • さまざまなツール • 無償(フリー/OSS) • FOSSology • scancode-toolkit • LicenseFinder • など • 有償 • Black Duck • WhiteSource • FlexNet Code Insight • など
10.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 9 OSSライセンスの解釈共有サービス・ツール 1. TLDRLegal • FOSSA社が公開しているOSSライセンスの要約を解りやすい形式 で提供するWebサイト 2. OSADL License obligations checklist • Open Source Automation Development Lab(OSADL)が公開 しているライセンス義務条件データ 3. OSS License Open Data • 日立が公開しているライセンス解釈データ 1.https://tldrlegal.com/ 2.https://www.osadl.org/Access-to-raw-data.oss-compliance-raw-data-access.0.html 3.https://github.com/Hitachi/open-license
11.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 10 エンジニアにとってのOSSライセンス管理 • 手間がかかる • ライセンスの確認には手間と時間がかかる • 開発スピードを落としたくない • よく分からない • ライセンスは英語でよく分からない • 日本語にしても法律関連の文章で意味不明 ←ツール ←解釈共有 今日はここを深堀り
12.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 11 OSS管理ツールの池の水ぜんぶ抜く
13.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 12 OSS管理ツールの池の水ぜんぶ抜く • 今日の話 • OSSライセンス管理のためのツールはどんなもの があるか • それらはどんなことができるか • どう使えば良いか
14.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 13 どんなツールがあるのか
15.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 14 OSSライセンス管理のためのツール オープンソースが世の中に広まっていく中でさまざまなツールが誕生 → 全容が分かり辛くなっている(まるで公園の池のように…) たくさんあるね 2004年に旧BlackDuck社が OSSスキャンソリューションを発表 無償・有償問わず 多数のツールが誕生 多数の機能を持ったツールも存在 ツールによっては珍しい 機能を持ったツールも まるで新種のように… 希少種の ように… まるで巨大魚のように…
16.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 15 開始10分ですが、 さっそく水を抜きます
17.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 16 池の水ぜんぶ抜いてみた BlackDuck WhiteSource FlexNet Code Insight FOSSID Insignary Clarity FOSSA Snyk JFrog Xray Veracode SCA WhiteHat SCA GitLab yamory Nexus Contrast OSS CAST Highlight CxSCA FOSSology scancode-toolkit askalono lc go-license-detector licensee ninka licenseclassifier LiD ORT LicenseFinder licensed license- checker(npm) license maven plugin(Maven) license gradle plugin(Gradle) AboutLibraries (android) LicensePlist(iOS) pip-licenses(pip) php-legal- licenses(composer) go-licenses(Go)
18.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 17 全ツールについて詳細を解説 整理した上で全体像(何ができるか)を解説
19.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 18 何ができるのか?(ライセンス関連) 1. OSSとライセンスのスキャン • 依存関係(メタデータ)のスキャン • ライセンス文字列のスキャン • コードパターンのスキャン 2. ポリシーの設定とアラートの通知 • GPL/AGPLの検出でメール送付するなど 3. ライセンスファイルの生成 • 利用OSSすべてのライセンステキストまとめを生成 1と2できます 全部できます ※ツールによって持っている機能が異なります 1だけできます
20.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 19 何ができるのか?(ライセンス関連) 1. OSSとライセンスのスキャン • 依存関係(メタデータ)のスキャン • ライセンス文字列のスキャン • コードパターンのスキャン 2. ポリシーの設定とアラートの通知 • GPL/AGPLの検出でメール送付するなど 3. ライセンスファイルの生成 • 利用OSSすべてのライセンステキストまとめを生成 1だけできます 1と2できます 全部できます ※ツールによって持っている機能が異なります
21.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 20 依存関係(メタデータ)のスキャンとは • パッケージマネージャなどで依存モジュールとして設定し たOSSライブラリの検出 • 無償・有償含め、本機能を持っているツールは多数存在 ~パッケージマネージの例~ Maven Npm Gradle nuget CocoaPods …
22.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 21 依存関係(メタデータ)のスキャン 補足 • ツールの例 • 特定環境特化型 • 特定の言語や環境に特化してOSSライセンスを調べるツール • ツールの例 • license-checker(npm) • LicenseToolsPlugin(android) • など • 環境横断型 • 複数言語(パッケージマネージャ)に対応したツール • ツールの例 • LicenseFinder(pivotal) • Licensed(github) • など • ツールによる違い • 検出対象 • アプリケーションのパッケージ(npm、maven、…) • OSのパッケージ(rpm、deb、…) • ライセンスの判断材料 • パッケージのメタデータ • 「LICENSE」や「README」などのファイル • ソースファイル(ライセンスヘッダ等)
23.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 22 ライセンス文字列のスキャンとは • OSSライセンスと思われるテキスト(文字列)の検出 • 無償、有償含め、多数のツールが存在 OSS CodeBase Scanner Copy “.*apache.*license.*2.0.*” Search Developer Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.
24.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 23 ライセンス文字列のスキャン 補足 • ツールの例 • FOSSology • scancode-toolkit • Licensee • askalono • など • ツールによる違い • 検出手段 • 正規表現 • テキスト類似度 • 正確さを優先するもの、指摘漏れの回避を優先するものなど、さまざま • 著作権表示(コピーライト)、Email、URLなどを検出するものもある
25.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 24 コードパターンのスキャンとは • ソースファイルの内容をOSSデータベースと照合(マッチン グ)させて検出 • 基本的に有償ツールでのみ実施可能(OSSデータベース要)
26.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 25 コードパターンのスキャン 補足 • ツールの例 • BlackDuck • WhiteSource • FlexNet Code Insight • FOSSID • Insignary Clarity • ツールによる違い • 検出の対象 • ソースコード • 独自バイナリ • 検出の粒度 • ファイル • スニペット(コードの一部分であっても検出する) • OSS特定のレベル • OSSの特定は行わない(候補を出すのみ) • OSSの特定まで行う(OSSを一意に決定する) ※有償なので実際は色々なスキャンが可能です
27.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 26 何ができるのか?(ライセンス関連) 1. OSSとライセンスのスキャン • 依存関係(メタデータ)のスキャン • ライセンス文字列のスキャン • コードパターンのスキャン 2. ポリシーの設定とアラートの通知 • GPL/AGPLの検出でメール送付するなど 3. ライセンスファイルの生成 • 利用OSSすべてのライセンステキストまとめを生成 1だけできます 1と2できます 全部できます ※ツールによって持っている機能が異なります
28.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 27 何ができるのか?(ライセンス関連) 1. OSSとライセンスのスキャン • 依存関係(メタデータ)のスキャン • ライセンス文字列のスキャン • コードパターンのスキャン 2. ポリシーの設定とアラートの通知 • GPL/AGPLの検出でメール送付するなど 3. ライセンスファイルの生成 • 利用OSSすべてのライセンステキストまとめを生成 1だけできます 1と2できます 全部できます ※ツールによって持っている機能が異なります 結局、何を どうすべき?
29.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 28 エンジニアのためのOSSライセンス管理戦略
30.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 29 以下のようなプロジェクトで考える OSS OSS OSS-A OSS-a1 依存パッケージ OSS-B OSS-b1 OSS-a2 … ソースコード 依存するOSS ・OSS-A ・OSS-B ・……… OSS-X パッケージマ ネージャ設定 ファイル 断片 (改変ファイル) フォルダ L L … License L L L L L L
31.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 30 OSS OSS OSS-A OSS-a1 依存パッケージ OSS-B OSS-b1 OSS-a2 … ソースコード 依存するOSS ・OSS-A ・OSS-B ・……… OSS-X パッケージマ ネージャ設定 ファイル 断片 (改変ファイル) フォルダ L L … License L L L L L L OSSの管理戦略① … 依存パッケージは依存関係(メタデータ)のスキャンで対応 依存関係 ・誤検知なし ・高速 ライセンス文字列 コードパターン ・誤検知あり ・判断が難しい OSSおよびバージョンの特定は手動 (ライセンスしか分からない)
32.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 31 OSS OSS OSS-A OSS-a1 依存パッケージ OSS-B OSS-b1 OSS-a2 … ソースコード 依存するOSS ・OSS-A ・OSS-B ・……… OSS-X パッケージマ ネージャ設定 ファイル 断片 (改変ファイル) フォルダ L L … License L L L L L L OSSの管理戦略② 残りの部分はどのようなアプローチでスキャンすべきか? 依存関係 コードパターン でもさ、そもそもスキャンって やる必要ある? ライセンス文字列 OSS内の別OSSを見つけ る場合、根拠になるのは ライセンスなどの文字列 情報となる ライセンス情報がなくても 検知可能なのでファイルや コード断片の検出はコード パターンのスキャンが良い
33.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 32 OSS OSS OSS-A OSS-a1 依存パッケージ OSS-B OSS-b1 OSS-a2 … ソースコード 依存するOSS ・OSS-A ・OSS-B ・……… OSS-X パッケージマ ネージャ設定 ファイル 断片 (改変ファイル) フォルダ L L … License L L L L L L OSSの管理戦略③ 残りの部分はどのようなアプローチでスキャンすべきか? ・スキャンすれば良いというものではない ・運用まで考えて必要なところにツールを使う 開発者の意図しない利用 =ツールでスキャンすべき 開発者の意図した利用 =スキャン不要 ライセンス文字列 コードパターン 要教育 手間と時間がかかる上 に結局は検知漏れもあ りえるので、開発者を 教育して把握させた方 が効率も精度も良い とはいえ他社が作ったコード など、コードパターンの スキャンが有効な場合はあるよ 依存関係 開発者がリテラシを持ち 自身でOSSを把握する ひと手間かかるがコンプラ イアンス観点で要スキャン
34.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 33 OSS OSS OSS-A OSS-a1 依存パッケージ OSS-B OSS-b1 OSS-a2 … ソースコード 依存するOSS ・OSS-A ・OSS-B ・……… OSS-X パッケージマ ネージャ設定 ファイル 断片 (改変ファイル) フォルダ L L … License L L L L L L OSSの管理戦略④ 2パターンのスキャンアプローチが準備できていればOK 依存関係 ライセンス文字列 コードパターン 要教育 その② ・FOSSology ・scancode-toolkit ・など その① ・LicenseFinder ・licensed ・など 基本的に自動で検知 OSSコピペ時のみ手動確認
35.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 34 OSS OSS OSS-A OSS-a1 依存パッケージ OSS-B OSS-b1 OSS-a2 … ソースコード 依存するOSS ・OSS-A ・OSS-B ・……… OSS-X パッケージマ ネージャ設定 ファイル 断片 (改変ファイル) フォルダ L L … License L L L L L L OSSの管理戦略⑤ 依存パッケージ内のOSSライセンスは大丈夫か? 依存関係 ライセンス文字列 コードパターン 要教育 L L L L L L 各OSSパッケージ内にも他ライ センスのコードがあるかも… 一つずつ文字列スキャンするか? ↓ 場合によっては100~1000以上の パッケージが利用される… ↓ 多大な工数が発生
36.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 35 OSS OSS OSS-A OSS-a1 依存パッケージ OSS-B OSS-b1 OSS-a2 … ソースコード 依存するOSS ・OSS-A ・OSS-B ・……… OSS-X パッケージマ ネージャ設定 ファイル 断片 (改変ファイル) フォルダ L L … License L L L L L L 依存関係 ライセンス文字列 コードパターン 要教育 L L L L L L ・FOSSA ・ORT ・など ライセンス文字列 基本的に自動で検知 これでかなり開発者の 負荷が減りそうです 希少種!! OSSの管理戦略⑥ 依存チェックと同時に文字列スキャンしてくれるツールを使う
37.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 36 クラウドサービスFOSSAについて
38.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 37 FOSSAとは • OSSライセンス管理のためのクラウドサービス • 個人利用は無料(制限つき) • 「license scan」バッジを提供 引用:https://fossa.com/customers/js-foundation
39.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 38 FOSSA社について • TLDRLegalを提供 • 業界の専門家と協力体制を構築 • OSSライセンスの世界で著名な米国弁護士であるHeather Meeker氏がアドバイザーとして参画 • Cloud Native Computing Foundation (CNCF)のCTOである Chris Aniszczyk氏がアドバイザーとして参画 https://tldrlegal.com/
40.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 39 FOSSA導入実績 • 全世界16000チームが採用 引用:https://fossa.com/customers
41.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 40 FOSSAの概要 • 機能 • OSSとライセンスのスキャン • 依存関係(メタデータ)のスキャン • ライセンス文字列のスキャン • ポリシー・アラート • ライセンスファイルの生成
42.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 41 FOSSAの概要 • 機能 • OSSとライセンスのスキャン • 依存関係(メタデータ)のスキャン • ライセンス文字列のスキャン • ポリシー・アラート • ライセンスファイルの生成
43.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 42 FOSSAの機能(OSSとライセンスのスキャン) • クイックインポート • スキャナ連携(CI/CD連携)※ベンダ推奨
44.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 43 クイックインポート • GitHub、GitLab、Bitbucketのアカウントと連携 • 自身が管理するリポジトリを指定してFOSSAにインポート 引用:https://docs.fossa.com/docs/quick-import
45.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 44 スキャナ連携(CI/CD連携) • 開発環境(開発PC、CI環境など)でスキャナを実行 • スキャナがスキャン結果をサーバに送信 https://github.com/fossas/fossa-cli スキャナはOSSです。
46.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 45 FOSSAの概要 • 機能 • OSSとライセンスのスキャン • 依存関係(メタデータ)のスキャン • ライセンス文字列のスキャン • ポリシー・アラート • ライセンスファイルの生成
47.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 46 FOSSAの機能(ポリシー・アラート) • FOSSAのポリシーおよびスキャン結果の確認 • Policies画面 • Issue画面
48.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 47 Policies画面 • ポリシーを利用してコンプライアンス違反の可能性を 検出可能 • 専門家が監修した3種類のポリシーがプリセットされ ている • Standard Bundle Distribution • Single-Binary Distribution • Website/Hosted Service • ポリシーはカスタマイズも可能 引用:https://docs.fossa.com/docs/configuring-default-policy-rules
49.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 48 Issue画面 • ポリシーに違反している事象の列挙 • 問題に関わる情報の提供 • Jiraへのチケット作成機能
50.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 49 FOSSAの概要 • 機能 • OSSとライセンスのスキャン • 依存関係(メタデータ)のスキャン • ライセンス文字列のスキャン • ポリシー・アラート • ライセンスファイルの生成
51.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 50 FOSSAの機能(ライセンスファイルの生成) • カスタマイズ性が高く実用性に優れたレポートを生成可能 Docker社の例 引用:https://www.docker.com/legal/components-licenses
52.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 51 FOSSAまとめ OSS OSS OSS-A OSS-a1 依存パッケージ OSS-B OSS-b1 OSS-a2 … ソースコード 依存するOSS ・OSS-A ・OSS-B ・……… OSS-X OSS-Y OSS-Z パッケージマ ネージャ設定 ファイル 断片 (改変ファイル) フォルダ FOSSAなら全体のスキャン→違反検知→ライセンスファイル生成まで一気通貫 依存関係 ライセンス文字列 コードパターン OSS-a1-1 OSS-a1-2 OSS-a2-1 OSS-a2-2 ライセンス文字列 … OSS-b1-1 OSS-b1-2 違反検知 ライセンス ファイル生成
53.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 52 補足:サポート範囲 詳細はFOSSAのドキュメントを参照ください:https://docs.fossa.com/docs • 主要な言語/パッケージマネージャをサポート • npm、Maven、Gradle、pip、Nuget、CocoaPods、など • 主要な外部ツールとの統合をサポート • GitHub、GitLab、Bitbucket、Jira、Slack、など • 有償版はOSS脆弱性管理の機能もサポート
54.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 53 全体まとめ • OSS管理ツールは整理する以下の機能に分解される • OSSとライセンスのスキャン • 依存関係(メタデータ)のスキャン • ライセンス文字列のスキャン • コードパターンのスキャン • ポリシー設定とアラート通知 • ライセンスファイルの生成 • 管理の戦略 • スキャンすれば良いというものではない • 適材適所のスキャンアプローチ • 違反の検知やライセンス生成はツールで自動化 • 具体的な管理施策(例) • FOSSAでプロジェクトを管理
55.
© Hitachi Solutions,
Ltd. 2021. All rights reserved. 54 END ※本資料に記載の会社名、商品名、ロゴ等は各社の商標または登録登録です。
Download now