OWS2020の企画講演セッションでの発表資料です。 https://www.iwsec.org/ows/2020/
OSSに取り組むと企業にとってどのようなメリットがあるのか?また、OSS開発者として勤務する場合の良い点・大変な点などを説明しています。
© 2020 Aqua Security Software Ltd., All Rights ReservedOWS 2020 اըηογϣϯ1Teppei Fukuda / Oct 27th, 2020اۀͰOSS։ൃΛ͢Δͱ͍͏͜ͱ
View Slide
2• ໊લɿా మฏʢ@knqyf263ʣ• ձࣾɿAqua Security Software Ltd.• ॴଐɿOpen Source Team• ܦྺ• 20195݄ɹझຯͰηΩϡϦςΟOSS։ൃ• 20195݄ɹւ֎اۀ͔Βࣗ࡞OSSͷങऩΦϑΝʔ• 20199݄ɹΠεϥΤϧʹҠॅͯ͠OSS։ൃΛଓ͚Δࣗݾհ
3େମͷܦҢϒϩάʹॻ͍ͨͷͰׂѪ• http://knqyf263.hatenablog.com/entry/2019/08/20/120713ΠεϥΤϧʹདྷΔ·Ͱͷ
4• ࣄۀ༰ɿίϯςφͱΫϥυωΠςΟϒΞϓϦͷͨΊʹ։ൃ͞ΕͨɺϑϧϥΠϑαΠΫϧͳηΩϡϦςΟιϦϡʔγϣϯ• ैۀһɿ260໊ఔ• ຊࣾɿΞϝϦΧͱΠεϥΤϧ• ಛ• ϕϯνϟʔͰ͋Γͳ͕Βάϩʔόϧاۀ• OSSʹྗΛೖΕ͍ͯΔAqua Security Software Ltd.
5• اۀͱOSSͷؔΘΓ• ԿΛతͱͯ͠OSSʹऔΓΜͰ͍Δͷ͔• ձࣾһͱOSSͷؔΘΓ• OSS։ൃΛۀͰߦ͏͜ͱʹ͍ͭͯຊͷൃද༰• OSSͱԿ͔• OSSͷߩݙํ๏※ ͞ͳ͍͜ͱϒϩάʹ΄΅ಉ͡༰Λॻ͍͍ͯ·͢https://knqyf263.hatenablog.com/entry/2020/08/28/074749
اۀͱOSSͷؔΘΓ
7• ϕϯνϟʔاۀͰ͋ΔʹؔΘΒͣOSS։ൃνʔϜ͕ଘࡏ͢Δ• େاۀͱҟͳΓతʹϏδωεɾརӹʹܨ͛Δඞཁ͕͋Δ• ࣾͰ࡞ͬͨͷΛ͔͔ͤͬͩ͘ΒOSSʹ͠Α͏ɺͰͳ͘OSSΛࣄۀͷҰͱͯ͠ߟ͍͑ͯΔ• ྫɿHashiCorp, Elastic• ݩʑOSS͍ͬͯͳ͔͕ͬͨOSSͷ࣋ͭྗʹؾ͍ͮͯνʔϜΛ্ཱͪ͛ͨฐࣾͱOSSͷؔΘΓ
8• ࢢͷख़• ༗ྉԽͷҠߦ͢͠͞• ࣭ͷ্• ΧϯϑΝϨϯεͰͷൃද• ϑΝϯΛ࡞Δ͜ͱ• ίϛϡχςΟʹΑΔϑΟʔυόοΫฐ͕ࣾࢦ͍ͯ͠Δͷ
9• ΫϥυωΠςΟϒʹҠߦ͍ͯ͠ͳ͍اۀଟ͍• DevSecOpsͱݴΘΕͯϐϯͱ͜ͳ͍اۀଟ͍ࢢͷख़https://www.synopsys.com/ja-jp/glossary/what-is-devsecops.htmlOSSͰମݧͯ͠Β͏※ ແྉͳͷͰࢼ͍͢͠ࢢنͷ֦େ
100ԯ1020%1ԯ2000ສ10%10ԯࢢ͕֦େ͢Ε10%Ͱ10ԯʹͳΔ
11༗ྉԽͷҠߦͷ͢͠͞OSSอकܖSaaS༗ྉػೳOSSͰेʂͱ͍͏ϦεΫ͋Δ
12࣭ͷ্OSSଟ͘ͷʹࡽ͞ΕΔ
13• Elasticࣾͷྫ• X-Pack༗ྉϓϥάΠϯ• ݩʑϓϥΠϕʔτ• εύήοςΟίʔυʹͳͬͨ• ެ։ͨ͠Β্࣭͕• X-Pack͚ͩผϥΠηϯε࣭ͷ্
14• ΦʔϓϯͳΧϯϑΝϨϯεͰͷࠂېࢭ• OSSͷએͳΒͳ͍• ձ໊ࣾΛͬͯΒ͑Δ• ձࣾಉ࢜ͷަྲྀͰίϥϘ͢Δ͜ͱΧϯϑΝϨϯεͰͷൃද
15• ιϑτΣΞΤϯδχΞྑ͍πʔϧΛଞऀʹհ͠Α͏ͱ͢Δ• ޱίϛͰ͕͍ͬͯ͘• ྑ͍OSSΛ࡞͍ͬͯΔձࣾѪ͞ΕΔ• ͨͱ͑༗ঈ൛ΛങΘͳͯ͘ྑ͍ධՁΛ͛ͯ͘ΕΔϑΝϯΛ࡞Δ͋ͷπʔϧྑ͔ͬͨʂͬͯΈͨʁ
16ίϛϡχςΟʹΑΔϑΟʔυόοΫ• ·ͣͬͯΒͬͯײΛ͏ɺͱ͍͏͜ͱ͕༗ঈπʔϧΑΓߦ͍͍͢• όάཉ͍͠৽ػೳ• খ͘͞࡞ͬͯվળΛॏͶ͍͢• OSSϢʔβʼ༗ঈ൛Ϣʔβ• ແྉͰΘͤͯΒ͍ͬͯΔͷͰϑΟʔυόοΫͰߩݙ͠Α͏ͱ͍͏ҙࣝOSS SaaSϑΟʔυόοΫOSSϢʔβSaaS ϢʔβϑΟʔυόοΫ ϑΟʔυόοΫ
17ίϛϡχςΟʹΑΔใఏڙ• ྑ࣭ͳใ͕ू·Δ
18ίϛϡχςΟʹΑΔߩݙ• ༏लͳߩݙ͋Δ• Berkeley DBͷCͰॻ͔ΕͨιʔείʔυΛಡΜͰϦόʔεɾΤϯδχΞϦϯά͠ɺGoʹҠ২ࣗͨͪͰϦιʔεෆͰ։ൃͰ͖ͳ͔ͬͨػೳ
ձࣾһͱOSSͷؔΘΓOSSΤϯδχΞΛͬͯײͨ͜͡ͱ
20࣮ʹͳΔ• OSS։ൃͦͷ··֎͔Βݟ͑Δ• ࠾༻ଆʹͱͬͯͷϝϦοτɿޱ͚ͩୡऀͳਓؒͷ࠾༻Λආ͚ΒΕΔ• ձࣾһʹͱͬͯͷϝϦοτɿ৬ܦྺॻΛॻ͔ͳͯ͘ྑ͘ͳΔ
21ಘҙͳܗͰΞτϓοτͰ͖Δ• ιϑτΣΞΤϯδχΞΞτϓοτ͕େࣄ• ֎෦ొஃ• ϒϩάɾຊͷࣥච• OSSಘҙͳ͜ͱΛ৳͢
22ษڧʹͳΔ• IssuePRΛड͚औΔ• ͕ࣗΒͳ͍͜ͱΛڭ͑ͯ͘ΕΔ͜ͱଟ͋Δ• PRΛݟֶͯͿ
23ਂ͘ಛఆྖҬΛֶΔ• ઐΛಘΔ• Iܕ͔ΒTܕʹҠߦ͢Δ΄͏͕ਫ਼ਆతʹָ• ձࣾͰδΣωϥϦετͷ΄͏͕ٻΊΒΕΔ͜ͱ͋Δ• ଞऀͷൺֱͱ͍͏؍Ͱ෯ʹݶΓ͕ͳ͍IܕਓࡐઐੑTܕਓࡐࣝͷ෯ࣝͷ෯ઐͷͳ͍δΣωϥϦετઐੑ
24ଟ͘ͷਓʹཱͭݟΛڞ༗͠ʹ͍͘• ษڧձͳͲͰଟ͘ͷਓʹཱͭࣝΛڞ༗͢Δͱ͍͏લఏ͕͋Δఔ͋Δ͕ɺઐྖҬͰͷݟଞͷਓʹʹཱͨͳ͍͜ͱ͕ଟ͍ABCؒҧ͍͍͢จ๏πʔϧͷΠϯετʔϧํBerkeley DBͷ෦࣮
25͘৮Εͳ͍ʢՄೳੑ͕͋Δʣ• ઐྖҬΛۃΊΑ͏ͱ͢Δͱଞͷʹ͋Ε͜ΕखΛग़͕࣌ؒ͢ͳ͍͔͠Εͳ͍ABCXXXৗࣝYYYΛͬͯΈͨ
26• OSSࣗମແྉͳͷͰձࣾͷച্ʹͳΒͳ͍• ͓ۚΛΒ͖ͬͯͳ͜ͱΛ͍ͬͯΔ͜ͱʹࡑѱײΛ๊͔͘͠Εͳ͍• ͳͥOSSΛ͍ͬͯΔͷ͔ʁΛҙࣝ͢Δ• ݴΘΕ͔ͨΒ͍ͬͯΔɺͩͱਏ͘ͳΔ͔͠Εͳ͍• ձࣾͷઢʹͳΔ• ߩݙྫ• SaaSʹOSSΛΈࠐΉ• OSSܦ༝Ͱ༗ঈ൛ϢʔβΛ֫ಘ͢Δձࣾͷച্ʹߩݙͰ͖Δํ͕ਫ਼ਆతʹָָͯ͘͠࠷ߴʂͱͳΒͳ͍͔͠Εͳ͍
27• OSS͕͘ΘΕΔΑ͏ʹͳΔͱχʔζ͘ͳΔ• ଟ͘ͷϢʔβʹͱͬͯෆཁʹݟ͑ΔػೳͳͲʹରԠ͢Δ߹͋Δ• ར༻౷ܭΛऔΔ͜ͱ͕ग़དྷͳ͍ʢେࣄʣ• ࠐΉ͜ͱՄೳ͕ͩڪΒ͘ݏΘΕΔʢGitHubͷ ͕ݶքʣ• υΩϡϝϯτʹॻ͍ͯ͋Δ͜ͱΛ࣭ͯ͘͠Δਓ૿͑Δ• ΧελϚʔαϙʔτۀʹͳͬͯ͠·͏͜ͱ͋Δ• PRΛૹͬͯ͘ΕͨਓΛແԼʹग़དྷͳ͍ਫ਼ਆతͳ• ͦͷޙͷϝϯςφϯεϝϯςφʔ͕ߦ͏ඞཁ͕͋Δϝϯςφϯείετ͕ߴ͘ͳΔ
28• ࣗͷ߹ݩʑझຯͷ։ൃͩͬͨͷͰগ͠ಛघ• ۀͱͯ͠։ൃ͢ΔҎ্اۀͱͯ͠ͷํʹै͏ඞཁ͕͋Δ• খ͍͞πʔϧʁશ෦ೖΓπʔϧʁ• false positiveΛݮΒ͢ʁfalse negativeΛݮΒ͢ʁ• ͲͪΒ͕ਖ਼͍͠ͱ͍͏͜ͱͳ͍ͷͰٞΛॏͶΔඞཁ͕͋Δ• ͦͷ݁Ռྑ͍ͷʹͳΔ͜ͱ͋Δ͕ࣗͷͩ͜ΘΓೖΕʹ͍͘ํΛܾΊʹ͘͘ͳΔ
29• ڍ͖͛ͯͨརΘΕͯͦ͜ͷ• ୭ʹΒΕͳ͚Εҙຯ͕ͳ͍• ϒϩάొஃͳͲ͕ඞཁ• ྑ͍ͷΛ։ൃͰ͖ͨͱࢥ͍͑ͯΕൃදͦͷͷ͕Ռ͡Όͳ͍ͷͰਏ͘ͳ͍• Product-drivenͳൃද͓͢͢Ίએඞཁ
30• ࠩ͠ࠐΈλεΫ͕ඇৗʹଟ͍• ༗ঈϓϩμΫτͰΧελϚʔαϙʔτνʔϜ͕͍Δ͜ͱ͕ଟ͍• OSSͰIssueͷରԠΛࣗͰߦ͏ඞཁ͕͋ΔʢنʹΑΔʣ• PRΛϨϏϡʔ͢Δඞཁ͕͋Δ• ༗ঈϓϩμΫτͰ·ͣى͜Βͳ͍ࠩ͠ࠐΈ• OSSͱͯ͠ͷ݈શੑΛอͭͨΊʹظͷ์ஔ͍͠ʢpublic͔ͩΒͦ͜ʣ• AػೳΛ্ظඪʹ͍ͯ͠ΔͷʹBػೳͷPR͕དྷͯ͠·ͬͨ...ͳͲ• ඪͷมߋͳͲॊೈͳରԠΛձ͕ࣾೝΊΔඞཁ͕͋Δձ͔ࣾΒͷධՁ͕͍͠ʢݸਓʣ
31• ച্Λ͋͛ΔΘ͚Ͱͳ͍• ձࣾͷ໊ͷ্ͳͲଌΓʹ͍͘• ͳͥ༗ঈϓϩμΫτʹڵຯΛ͔࣋ͬͨʁͳͲΛฉ͍ͯOSSܦ༝ͷސ٬͕͍Δͷ͔͔֬ΊΔ• ϢʔβͳͲଌΕΔͷଌͬͯࠩΛݟΔձ͔ࣾΒͷධՁ͕͍͠ʢOSS)OSSϢʔβ SaaS Ϣʔβׂ߹ʁϢʔβʁ
32• ଟ͘ͷਓʹࣗͷπʔϧ͕ར༻͞ΕΔ• ੈքதͷਓ͔Βײँ͞ΕΔ• ࠃڥ৫͑ͯҰؙͱͳͬͯ։ൃ• ଞʹͦͷΑ͏ͳ׆ಈΛΒͳָ͍͍͠https://memegenerator.net/instance/50118051/will-ferrell-elf-open-source-makes-me-feel-super-happy΄΅झຯ
33• ָ͠͞ʹͭͳ͕Δ• େاۀʹΑΔ࠾༻Γ͕͍͕͋Δ
34• اۀ͕OSSʹऔΓΉϝϦοτ• ࢢͷख़• ༗ྉԽͷ͢͠͞• ্࣭• ্໊• ίϛϡχςΟʹΑΔߩݙ·ͱΊ• ۀͰOSSʹऔΓΉ։ൃऀ• ϝϦοτ• ָ͍͠ɾΓ͕͍͕͋Δ• ࣮ʹͳΔ• ઐྖҬΛ࣋ͯΔ• σϝϦοτ• ٯʹઐ֎ʹগ͠ૄ͘ͳΔՄೳੑ• Ϣʔβ૿ՃʹΑΔϝϯςφϯείετ• ධՁ͞Εʹ͍͘Մೳੑ
൪֎ฤɿΠεϥΤϧʹ͍ͭͯ
36ΠεϥΤϧ
37ΠεϥΤϧ
38
ఱؾ͕ྑ͍
Ϗʔν͍ۙ
42
҆ଉ
44• ిؾث۩ېࢭ• όεɾిंఀࢭ• ళجຊด·Δ• ྉཧېࢭ• ͓ۚΘͳ͍• ϖϯ࣋ͨͳ͍҆ଉ
45৺෦ͰͷͲ͔
46• ࣏҆ྑ͍• ਓ͕༏͍͠• ৯ࣄ͓͍͍͠• γΣΞεΫʔλʔศར• λΫγʔ͕ศརͰ͍҆• ిं͕৽װઢฒͷ͞ɾ៉ྷ͞• ग़ੜຊͷ2ഒҎ্Ͱࢠڙʹ༏͍͠• ਓ͕ཅؾͦͷଞ
© 2020 Aqua Security Software Ltd., All Rights ReservedThank you for your attention!