Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
SBOMでソフトウェアを守れ!10年後も自信を持ってリリースするために今始めるDevSecOp...
Search
ihcomega56
February 18, 2022
Technology
6.9k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SBOMでソフトウェアを守れ!10年後も自信を持ってリリースするために今始めるDevSecOps / DevSecOps with SBOM for yourself 10 years from now
Developers Summit 2022
ihcomega56
February 18, 2022
More Decks by ihcomega56
See All by ihcomega56
JEP 455: Primitive Types in Patterns, instanceof, and switch (Preview)
ihcomega56
1
190
シリコンバレーのチームで経験したふりかえり - 共通点とギャップ / retrospectives in silicon valley
ihcomega56
5
2.1k
「サプライチェーン攻撃」に立ち向かう!SBOMを使った脆弱性管理がもたらす品質とスピード向上
ihcomega56
2
2.7k
アプリケーション開発者目線で語る、明日から始めるDevSecOps
ihcomega56
0
280
パターンマッチングを学んで新しいJavaの世界へ!Java 18までの目玉機能をおさらいしよう / Java 18 pattern matching
ihcomega56
3
1.5k
SCAとDockerを触ってみよう!DecSecOps入門ワークショップ / SCA and Docker workshop
ihcomega56
1
350
JFrogのDevOps Platformづくりを支えるオブザーバビリティ / JFrog Observability
ihcomega56
0
580
Javaアプリケーションの アーティファクト管理と DevSecOps / Java artifacts management and DevSecOps
ihcomega56
0
2.8k
元現場エンジニアが思う「もっとこうしておけばよかった」から学ぶDevSecOps / DevSecOps Best Practices learned from my experiences
ihcomega56
1
590
Other Decks in Technology
See All in Technology
トークン化預金DCJPYの取り組みと活用ユースケース
finengine
0
190
DGX Spark でどこまでハッキングができるのか?
kash1064
3
1.4k
FinOps Agentが生んだ技術負債:コスト自動調査の落とし穴と解消までの道のり
oasis1994liveforever
2
180
その Valkey 使いこなしていますか?
onk
PRO
5
1.6k
20261017福岡devIO 「AIは"良いダッシュボード"を作れるか?
jtakeda
0
210
M5Stackで作る BLEマウス GPSログの世界
tomokusaba
PRO
0
450
オントロジーって 結局なにもの? AI エージェントに「意味」を渡す知識設計の話
greenmidori
0
240
実践!Cloud Run ハンズオン!! / Cloud Run handson
y0hgi
2
300
React改造してみた
tsukina_7mochi
0
140
野蛮なアジャイル [サイボウズ発!]組織の常識を覆した反骨のスクラム実践記 / Barbaric Agile - Enterprise Agile Study Group
ama_ch
0
120
フィンテック養成勉強会#68
finengine
0
170
古い指輪から広がった JAVA コミュニティ とのつながり
yamad
0
130
Featured
See All Featured
Navigating Weather and Climate Data
rabernat
0
560
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
1.1k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
540
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
820
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
77k
Utilizing Notion as your number one productivity tool
mfonobong
4
620
Color Theory Basics | Prateek | Gurzu
gurzu
1
490
RailsConf 2023
tenderlove
30
1.6k
Unsuck your backbone
ammeep
672
58k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
450
Transcript
4#0.ͰιϑτΣΞΛकΕʂ ޙࣗ৴Λ࣋ͬͯ ϦϦʔε͢ΔͨΊʹ ࠓ࢝ΊΔ%FW4FD0QT σϒαϛ
%FW4FD0QTͷηογϣϯɺ ଟ͍Ͱ͢Ͷʂ 1
ͦΜͳத͓ӽ͠Լ͞Γ ͋Γ͕ͱ͏͍͟͝·͢ 2
Α͜ͳͰ͢ 3 • +'SPHͷ%FWFMPQFS"EWPDBUF • %FW0QTΛΓ্͍͛ͯ͘κ • લ৬·ͰओʹόοΫΤϯυͷ։ൃ 4*FS ࠂձࣾ
ূ݊ελʔτΞοϓ • ઌिɺେਓʹͳͬͯॳͷˆΛܦݧ օ͞ΜҾ͖ଓ͖ࣗ͝Ѫ͍ͩ͘͞! !"#$$%&' (#)*+,%-.
ࠓճͷσϒαϛςʔϚ ʮޙੈքͰ௨͡ΔΤϯδχΞͰ͋ΔͨΊʹʯ 4
͋ͬͱ͍͏͚ؒͩͲɺͨ͘͞Μͷ͜ͱ͕Ͱ͖Δ 5 ʙલɺલग़͖ͯͨͷʹલ͚ͩग़ͯ͜ͳ͔ͬͨ(PPHMFQIPUPTʜ
͜ͷηογϣϯ ޙʹඋ͑ͯ ͍͔ʹͷͮ͘ΓΛ͢Δ͔ Ͱͳ͘ 6
͍͔ʹͷΛ҆શʹอ͔ͭɺ ҆શͳͷΛಧ͚Δ͔ ͷώϯτΛ͓ಧ͚͠·͢ 7
%FW4FD0QTͱ •%FWͱ0QTʹՃ͑ͯɺ4FDVSJUZ ڠۀͯ͠ιϑτΣΞΛ࡞͍ͬͯ͘ • શһ͕શ෦Λग़དྷΔΑ͏ʹͳΔ ඞཁͳ͍ • ·ؙͣ͛͠ͳ͍ɺཧղ͢Δ • গ͓ͣͭ͠ޓ͍खΛ͛Δ
8 8 ։ൃ ӡ༻ ηΩϡ ϦςΟ
ηΩϡϦςΟͱ͍༷ͬͯʑ 9 • ΠϯϑϥɺιϑτΣΞɺ ώϡʔϚϯΤϥʔͳͲؾʹ ͖͢͜ͱଟذʹΘͨΔ • %FW4FD0QTͷλʔήοτ ιϑτΣΞͷηΩϡϦ ςΟͰ͋Δ
ग़యʮ8IBUBSFUIFMBZFSTPGTFDVSJUZ "DZCFSTFDVSJUZSFQPSUʯ IUUQTHPNJOETJHIUDPNJOTJHIUTCMPHXIBUBSFUIFMBZFSTPGTFDVSJUZ
ιϑτΣΞͷηΩϡϦςΟʁ 10 10 %%PT߈ܸ 42-ΠϯδΣΫγϣϯ ϥϯαϜΣΞ ϑΟογϯά θϩσΠ߈ܸ ϒϧʔτϑΥʔεΞλοΫ
ιϑτΣΞͷηΩϡϦςΟʁ 11 11
ͦΜͳʹ୯७Ͱͳ͍ 12
αϓϥΠνΣʔϯ߈ܸ 13
αϓϥΠνΣʔϯ߈ܸ • ιϑτΣΞʹෆਖ਼ͳϓϩάϥϜόοΫυΞΛࠐΈɺ ͦͷιϑτΣΞΛऔಘͨ͠૬खʹରͯ͠߈ܸΛߦ͏ • ඪతΛ߈ܸͤͣɺ ଟ͘ͷ߹ɺΑΓηΩϡϦςΟ ରࡦ͕खബͳ ؔ࿈ձࣾऔҾઌΛૂͬͨ߈ܸΛߦ͏ 14
࠷ۙͷࣄྫ 15 15 ग़యɿ ;%/FU݄ܝࡌʮถͳͲͷେنαΠόʔ߈ܸɺ4PMBS8JOETͷιϑτΣΞߋ৽Λѱ༻ʯ IUUQTKBQBO[EOFUDPNBSUJDMF
࠷ۙͷࣄྫ 16 16 ग़యɿ +'SPH݄ܝࡌʮ-PH4IFMMθϩσΠ͓͖ͬͯ͘͜ͱ IUUQTKGSPHDPNKBCMPHMPHTIFMMEBZWVMOFSBCJMJUZBMMZPVOFFEUPLOPX
खͷಧ͘ൣғ͚ͩͷରࡦͰΓͳ͍ • ࣗͰॻ͍ͨίʔυ͕҆શͰɺऔಘͯͬͨ͠ιϑτ ΣΞʹ੬ऑੑ͕ݟ͔ͭΔՄೳੑ͕͋Δ • ࡢࠓɺϓϩϓϥΠΤλϦͳιϑτΣΞͷʙׂఔ͕ 044ͱݴΘΕ͍ͯΔ 17 ग़యɿ 4ZOPQTZTXIJUFQBQFSʮ0QFO4PVSDF
3JTLJO."CZUIF/VNCFSTʯ IUUQTXXXTZOPQTZTDPNDPOUFOUEBNTZOPQTZTTJHBTTFUTXIJUFQBQFSTXQSJTLNBOVNCFSTQEG ʮηΩϡϦςΟɾεΩϟϯʯͷιϑτΣΞߏੳ 4$" ͱʁ IUUQTXXXSJDLTPGUKQCMPHBSUJDMFTIUNM ʮ&YQMPSFZPVS044EFQFOEFODJFT7JTVBMMZʯ IUUQTXXXMJOLFEJODPNQVMTFFYQMPSFZPVSPTTEFQFOEFODJFTWJTVBMMZNJDIBFMNVMMFS
Կ͔͋ͬͨͱ͖ɺ ࣗͷιϑτΣΞ͕ େৎ͔͙͔͢Γ·͔͢ʁ 18
ͲͷιϑτΣΞ͕ ίϯϙʔωϯτͱͯ͠ ԿΛ͍ͬͯΔ͔ ѲͰ͖·͔͢ʁ 19
ґଘઌͷґଘઌ ਪҠతґଘؔ ݟམͱ͍ͯ͠·ͤΜ͔ʁ 20
ղܾࡦͷͻͱͭ4#0. 21
4#0.ͱ • 4PGUXBSF#JMM0G.BUFSJBMT ιϑτΣΞ෦ද • ιϑτΣΞΛߏ͢Δίϯϙʔωϯτͱϝλσʔλͷ Ұཡ 22
4#0.ͰҰཡԽ͢Δίϯϙʔωϯτ • ιϑτΣΞ͕ґଘɾ༻͢Δ044αʔυύʔςΟͷ ϥΠϒϥϦ • ιϑτΣΞ͕͏ΞυΦϯɺϓϥάΠϯɺ֦ுػೳ • ϓϩϓϥΠΤλϦͳίʔυ • 4BB4ͷ߹
"1*αʔυύʔςΟͷαʔϏεͷใ 23
4#0.ʹؚ·ΕΔ༰ • ίϯϙʔωϯτͷαϓϥΠϠʔ • ίϯϙʔωϯτ໊ • ίϯϙʔωϯτͷόʔδϣϯ • ίϯϙʔωϯτΛࣝผ͢ΔΩʔ •
ґଘؔ • 4#0.ͷ࡞ऀ • λΠϜελϯϓ 24
4#0.ͷྫ 25 ग़యɿ 4VSWFZPG&YJTUJOH4#0.'PSNBUTBOE4UBOEBSET IUUQTXXXOUJBHPWGJMFTOUJBQVCMJDBUJPOTOUJB@TCPN@GPSNBUT@BOE@TUBOEBSET@XIJUFQBQFS@@WFSTJPO@QEG
ϑΥʔϚοτ • ඪ४Խ͕ਐΜͰ͍Δ • 4PGUXBSF1BDLBHF%BUB&YDIBOHF 41%9 • 4PGUXBSF*EFOUJGJDBUJPO 48*% •
$ZDMPOF%9 ͳͲ • UBHWBMVFܗࣜ 41%9 ɺ+40/ɺ:".-ɺ9.-ͳͲʹରԠ • ਓؒʹػցʹಡΊΔ 26
ͳͥ4#0.͕ʹཱ͔ͭ • ࣍ͷΑ͏ͳ༻్Ͱ͑Δ • ࢿ࢈ཧ • ϥΠηϯεɾίϯϓϥΠΞϯεཧ • తࡒ࢈ཧ •
੬ऑੑཧ • ΠϯγσϯτϨεϙϯε • ιϑτΣΞͷ҆શੑͷ֬ೝɾอূʹཱͭ 27
ॏཁࢹ͞ΕΔ4#0. • ΞϝϦΧɿ݄ͷେ౷ྖྩͰɺͱऔҾͷ͋Δ ৫4#0.͕ඞਢͱ͚ͯٛ͠ΒΕͨ • ຊͰࣗಈंۀքͳͲͰ׆༻͕·Δ 28 ग़యɿ ܦ95&$) ݄ܝࡌ
τϤλ͕ਪ͢αΠόʔରࡦͷ৽ৗࣝʮ4#0.ʯɺྲྀग़͢ΔϦεΫʁ IUUQTXXXJUNFEJBDPKQOFXTBSUJDMFTOFXTIUNM
ࣅͨΑ͏ͳ͜ͱΛ طʹ͍ͬͯΔํɺ ͍Βͬ͠ΌΔ͔͠Ε·ͤΜ 29
͋Δ͋Δͳཧ 30 &YDFMˢ ˣͰ֬ೝ
31
4#0.ཧϕετϓϥΫςΟε • Ұ؏ͯ͠ಉ͡ϑΥʔϚοτͰཧ͠ଓ͚Δ • πʔϧΛͬͯࣗಈԽ͢Δ • ϦϦʔεͷͨͼʹߋ৽͢Δ • ϝλσʔλΛ͋Θͤͯอ࣋͢Δ •
ӡ༻͍ͯ͠Δͷ͕4BB4Ͱ͋ͬͯ4#0.Λ͏ 32
4$"ʢιϑτΣΞίϯϙδγϣϯղੳʣ • 4#0.ͷ࡞ʹɺιϑτΣΞʹԿؚ͕·Ε͍ͯΔ͔ ͷௐ͕ࠪવඞཁͱͳΔ • ιϑτΣΞΛεΩϟϯͯ͠ߏͱ੬ऑੑɺϥΠηϯε ҧͳͲΛௐΔ͜ͱΛ4$"ͱ͍͏ • ੈͷதʹ༷ʑͳ4$"πʔϧ͕͋Γɺ͜ΕΛͬͯ $*$%࣮ߦ࣌ʹ4$"ࣗಈͰߦ͏
33
4#0.ͷجຊΛͬͯ ͍͖ͨͩ·ͨ͠ʂ 34
͜ΕͰηΩϡϦςΟ όονϦʂ 35
ͱͳΓ·ͤΜɾɾɾ 36
ऴΘΓͳ͍ • ਓηΩϡϦςΟΤϯδχΞʮ͜ΕΛͬͨΒେৎͱ ͍͏͜ͱܾͯ͠ͳ͍ʯ 37
༷ʑͳηΩϡϦςΟରࡦ • ڴҖϞσϦϯά 5ISFBUNPEFMJOH • ੩తΞϓϦέʔγϣϯηΩϡϦςΟςετ 4"45 • ಈతΞϓϦέʔγϣϯηΩϡϦςΟςετ %"45
• ιϑτΣΞίϯϙδγϣϯղੳ 4$" • ϑΝδϯά GV[[JOH • ϖωτϨʔγϣϯςετ ͳͲ 38
39 39 ڴҖ ϞσϦ ϯά νΣοΫ Ξτ Ϗϧυ ςετ ϦϦʔε
σϓϩΠ 4"45 %"45 ϖϯ ςετ 4$" ϑΝδ ϯά 4$" 4$" ηΩϡϦςΟରࡦΛ4%-$ʹΈࠐΉ ˞ਤҰྫͰ͢
Կ͔ΒΕʜ • Ͱ͖Δͱ͜Ζ͔Β࢝ΊΔ • ʮ੬ऑੑஅʯΛطʹ͍ͬͯΔ৫ଟ͍ͷͰͳ͍͔ • ͜ΕʹՃ͑ͯ4$"ΛऔΓೖΕͯΈΔͷΦεεϝ • ੬ऑੑΛݟ͚ͭΔͷݟ͔ͭͬͨ࣌ͷରԠൺֱత༰қ •
πʔϧ ແྉ͋Δʂ ΛೖΕΔͷࣗࣾͰ݁Ͱ͖Δ͜ͱଟ͘ɺ அͷϓϩΛޏ͏ͷͱൺֱͯ͠खܰ • %"45ͱ4$"͕උΘΕɺͻͱ·ͣࣗͰॻ͍ͨίʔυऔಘ ͨ͠ίʔυΧόʔͰ͖Δ 40
ݸਓͰ࢝ΊΒΕΔ͜ͱ͋Δ • ͪΐͬͱ͚ͩͰηΩϡϦςΟͷχϡʔεΛݟͯΈΔ • ʮηΩϡϦςΟ ͍ͬͯΔαʔϏεʗݴޠٕज़ʯͱ͔ࡶ ʹݕࡧͯ͠Έͯ৭ʑग़ͯ͘Δ • ࣾͷηΩϡϦςΟ୲ͷํͱͯ͠ΈΔ 41
ؔ৺͕ͳ͍ͷ͕ Ұ൪ةݥʂ 42
աڈͷࢲ • ։ൃͦͷͷ͕ͦ͜ʮྑ͍ͷΛͭ͘Δʯ ߦҝͩͱೝ͍ࣝͯͨ͠ • ηΩϡϦςΟରࡦʮΑ͔͘Βͳ͍͚Ͳ Βͳ͖Ό͍͚ͳ͍ͷʯͩͬͨ • ηΩϡϦςΟ͕ͱʹ͔ͯ͘͘͠ා͔ͬͨ 43
!"#$%&' ()* +,-."/ 01."/234
ࠓࢥ͏͜ͱ 44 • ։ൃͨ͠ͷ҆શʹಧ͚ɺͦͷޙ҆શʹӡ༻͠ଓ͚ ͳͯ͘ͳΒͳ͍ • ηΩϡϦςΟ୲Ұॹʹͷͮ͘ΓΛ͢ΔؒͰ͋Δ • ʮ͔Βͳ͍ʯͱ͍͏ࢥ͍ࠐΈ͕͔Βͳ͍ͯ͘͠Δ •
ηΩϡϦςΟൣғ͕େͳͷͰɺղͯ͠ΈΔͱগ͠ ͣͭཧղͰ͖Δ
ͪΐͬͱ͖͔͚ͨͬ͠Ͱ นΛΓӽ͑ΒΕΔ ͪΐͬͱͣͭʜ 45
ۙͳ͔Β 46 • օ͕ʹ͍ͯ͠ΔτϐοΫ • ͕ࣗରԠͨ͠੬ऑੑ ग़యɿ *5NFEJB /&84݄ܝࡌ 044ʮGBLFSKTʯͱʮDPMPSTKTʯͷ։ൃऀɺ
ࣗͰϥΠϒϥϦΛҙਤతʹվ͟Μ ʮͨͩಇ͖͏͠ͳ͍ʯ IUUQTXXXJUNFEJBDPKQOFXTBSUJDMFTOFXTIUNM
৮Εͨ͜ͱͷ͋Δͷ͔Β 47 • ʮ੬ऑੑஅฉ͍ͨ͜ͱ͋Δ͚ͲɺͦΕҎ֎ʹऔΓ ΊΔ࡞ۀ͕͋ͬͨΜͩͳ͊ʯ • ʮ044ͷόʔδϣϯ֬ೝɺखಈͰΔͷ͠ΜͲ͗ͨ͢ʜ ࣗಈԽͰ͖Δπʔϧ͕͋ͬͨͳΜͯʂʯ
ͥͻ͜ͷηογϣϯ Կ͔ͷ͖͔͚ͬʹ ͍ͯͩ͘͠͞ʂ 48
ͦͯ͠ԿΑΓ 49
4#0.׆༻Ͱ কདྷͷඋ͑Λʂ 50
ࠓޙʹޤ͏͝ظʂ 51
53 5IBOLZPV
ࢀߟจݙ • +FOOJGFS%BWJT 3ZO %BOJFMTʰ&GGFDUJWF %FW0QT ʕຊபʹΑΔ࣋ଓՄೳͳ৫จԽͷҭͯํʱ • ʮ8IBUBSFUIFMBZFSTPGTFDVSJUZ "DZCFSTFDVSJUZSFQPSUʯIUUQTHPNJOETJHIUDPNJOTJHIUTCMPHXIBUBSFUIFMBZFSTPG
TFDVSJUZ • ;%/FU݄ܝࡌʮถͳͲͷେنαΠόʔ߈ܸɺ4PMBS8JOETͷιϑτΣΞߋ৽Λѱ༻ʯ IUUQTKBQBO[EOFUDPNBSUJDMF • +'SPH݄ܝࡌʮ-PH4IFMMθϩσΠ͓͖ͬͯ͘͜ͱʯIUUQTKGSPHDPNKBCMPHMPHTIFMMEBZWVMOFSBCJMJUZBMMZPV OFFEUPLOPX • 4ZOPQTZTXIJUFQBQFSʮ0QFO4PVSDF 3JTLJO."CZUIF/VNCFSTʯIUUQTXXXTZOPQTZTDPNDPOUFOUEBNTZOPQTZTTJH BTTFUTXIJUFQBQFSTXQSJTLNBOVNCFSTQEG • ʮʰηΩϡϦςΟɾεΩϟϯʱͷιϑτΣΞߏੳ 4$" ͱʁʯIUUQTXXXSJDLTPGUKQCMPHBSUJDMFTIUNM • ʮ&YQMPSFZPVS044EFQFOEFODJFT7JTVBMMZʯIUUQTXXXMJOLFEJODPNQVMTFFYQMPSFZPVSPTTEFQFOEFODJFTWJTVBMMZNJDIBFMNVMMFS • ʮ4VSWFZPG&YJTUJOH4#0.'PSNBUTBOE4UBOEBSETʯ IUUQTXXXOUJBHPWGJMFTOUJBQVCMJDBUJPOTOUJB@TCPN@GPSNBUT@BOE@TUBOEBSET@XIJUFQBQFS@@WFSTJPO@QEG • ܦ95&$)݄ܝࡌ τϤλ͕ਪ͢αΠόʔରࡦͷ৽ৗࣝʮ4#0.ʯɺྲྀग़͢ΔϦεΫʁ IUUQTXXXJUNFEJBDPKQOFXTBSUJDMFTOFXTIUNM • *5NFEJB /&84݄ܝࡌ 044ʮGBLFSKTʯͱʮDPMPSTKTʯͷ։ൃऀɺࣗͰϥΠϒϥϦΛҙਤతʹվ͟Μ ʮͨͩಇ͖͏͠ͳ ͍ʯIUUQTXXXJUNFEJBDPKQOFXTBSUJDMFTOFXTIUNM • ܦࡁ࢈ۀলใࡦہαΠόʔηΩϡϦςΟ՝ʮ044ͷར׆༻ٴͼͦͷηΩϡϦςΟ֬อʹ͚ͨཧख๏ʹؔ͢Δࣄྫूʯ IUUQTXXXNFUJHPKQQSFTTQEG • ʮ#FTUQSBDUJDFTGPSJOUSPEVDJOH+'SPH9SBZJOUPZPVS%FW4FD0QT QSPDFTTʯIUUQTNFEJBKGSPHDPNXQ DPOUFOUVQMPBET#FTUQSBDUJDFTGPSJOUSPEVDJOH+'SPH9SBZJOUPZPVS%FW4FD0QTQSPDFTTQEG 54 54