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
元現場エンジニアが思う「もっとこうしておけばよかった」から学ぶDevSecOps / ...
Search
ihcomega56
November 05, 2021
Technology
1
530
元現場エンジニアが思う「もっとこうしておけばよかった」から学ぶDevSecOps / DevSecOps Best Practices learned from my experiences
CloudNative Days Tokyo 2021
ihcomega56
November 05, 2021
Tweet
Share
More Decks by ihcomega56
See All by ihcomega56
JEP 455: Primitive Types in Patterns, instanceof, and switch (Preview)
ihcomega56
1
120
シリコンバレーのチームで経験したふりかえり - 共通点とギャップ / retrospectives in silicon valley
ihcomega56
5
1.9k
「サプライチェーン攻撃」に立ち向かう!SBOMを使った脆弱性管理がもたらす品質とスピード向上
ihcomega56
2
2.5k
アプリケーション開発者目線で語る、明日から始めるDevSecOps
ihcomega56
0
190
パターンマッチングを学んで新しいJavaの世界へ!Java 18までの目玉機能をおさらいしよう / Java 18 pattern matching
ihcomega56
3
1.4k
SCAとDockerを触ってみよう!DecSecOps入門ワークショップ / SCA and Docker workshop
ihcomega56
1
280
JFrogのDevOps Platformづくりを支えるオブザーバビリティ / JFrog Observability
ihcomega56
0
490
SBOMでソフトウェアを守れ!10年後も自信を持ってリリースするために今始めるDevSecOps / DevSecOps with SBOM for yourself 10 years from now
ihcomega56
1
6.3k
Javaアプリケーションの アーティファクト管理と DevSecOps / Java artifacts management and DevSecOps
ihcomega56
0
2.6k
Other Decks in Technology
See All in Technology
20250807 Applied Engineer Open House
sakana_ai
PRO
2
610
✨敗北解法コレクション✨〜Expertだった頃に足りなかった知識と技術〜
nanachi
1
780
Amazon Q と『音楽』-ゲーム音楽もAmazonQで作成してみた感想-
senseofunity129
0
170
ウォンテッドリーのアラート設計と Datadog 移行での知見
donkomura
0
150
EKS Pod Identity における推移的な session tags
z63d
1
140
夏休みWebアプリパフォーマンス相談室/web-app-performance-on-radio
hachi_eiji
1
270
Intro to Software Startups: Spring 2025
arnabdotorg
0
280
形式手法特論:位相空間としての並行プログラミング #kernelvm / Kernel VM Study Tokyo 18th
ytaka23
3
1.5k
Engineering Failure-Resilient Systems
infraplumber0
0
130
20250818_KGX・One Hokkaidoコラボイベント
tohgeyukihiro
0
110
LLM 機能を支える Langfuse / ClickHouse のサーバレス化
yuu26
9
2.6k
AIに目を奪われすぎて、周りの困っている人間が見えなくなっていませんか?
cap120
1
710
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
184
22k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Practical Orchestrator
shlominoach
190
11k
BBQ
matthewcrist
89
9.8k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
A designer walks into a library…
pauljervisheath
207
24k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Optimizing for Happiness
mojombo
379
70k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
For a Future-Friendly Web
brad_frost
179
9.9k
Transcript
ݩݱΤϯδχΞ͕ࢥ͏ ʮͬͱ͜͏͓͚ͯ͠ Α͔ͬͨʯ͔ΒֶͿ %FW4FD0QT +'SPHΑ͜ͳ ԣాಸ 0
1 Α͜ͳͰ͢ "ZBOB:PLPUB • +'SPHͷσϕϩούʔΞυϘέΠτ • લ৬·ͰओʹόοΫΤϯυͷ։ൃ ʢ4*FS ࠂձࣾ ূ݊ελʔτΞοϓʣ
• 1PLFNPO (Pͷότϧ·ָ͍͡͠ ࠓΞϓϦέʔγϣϯ։ൃऀઢͰ ͓͠͠·͢ʂ 5XJUUFS !JIDPNFHB
͍ΘΏΔݱΛΕ σϕϩούʔΞυϘέΠτʹͳͬͯ ૣʂ 2 ʘݱͷࠒΑΓམͪண͍ͯࣄΛߟ͑ͨΓʗ ʘݴޠԽͨ͠Γ͢Δ͕࣌ؒ૿͑ͨΑʗ
ʮ͜͏͠Α͏ʯʮ͜Μͳ෩ʹߟ͑Α͏ʯ ͱʑૌ͍͑ͯ͘தͰࢥ͏ͷͰ͢ 3
ΤϯδχΞͩͬͨࠒ Βͳ͔ͬͨʗग़དྷ͍ͯͳ͔ͬͨ͜ͱ ͬͯ͋Δͳ͊ɾɾɾ 4
ͷͮ͘Γ࣌ɺࢲͷϞνϕʔγϣϯ ྑ͍ͷΛ࡞Γ͍ͨʂ • ༷ΛͲ͏͢Δ͔ߟ͑Δ͜ͱ͕ग़དྷͨ • ΤϯδχΞ৫ͷ֎ͱͷڠྗਐΜͰग़དྷͨ • ʮϚʔέͷϓϩϞʔγϣϯʹ͚ͯ͜ͷ·Ͱʹ͜ΕΛ༻ҙ͠Α͏ʯ • ʮࣾϢʔβʔͷۀΛษڧͯ͠ΑΓ͍͍͢ͷΛࢦͦ͏ʯ
• ΠϯϑϥɺηΩϡϦςΟʹΊͬΆ͏ऑ͔ͬͨ • ۤखҙ͔ࣝΒνϟϨϯδ͢Δ༐ؾখ͘͞ޙճ͠ʹ͔ͨͬͨ͠ • ͦ͜ʹ՝ҙࣝΛ࣋ͭࣗ 74ํͳ͍͔ͱఘΊΔࣗ 5
ࢲͷϞνϕʔγϣϯ ࿑ ਓࣄ ૯ ܦӦ اը ϚʔέςΟϯά Ӧۀ ࣾ֎ͷϢʔβʔ ࣾͷϢʔβʔ
σβΠφʔ ϑϩϯτΤϯυ όοΫΤϯυ 2" 43& ηΩϡϦςΟ
ಛʹηΩϡϦςΟɾɾɾ 7
%FW4FD0QT·ͩ·ͩ • %FW0QT͕ΓΛݟ͓ͤͯΓɺϕετϓϥΫςΟεͷதʹ ʮͬͯ ݕ౼ͯ͠ ͨΓલʯͱݴ͑Δͷ૿͖͑ͯͨ • ιϑτΣΞ։ൃͷϥΠϑαΠΫϧͷதʹηΩϡϦςΟΛΈ ࠐΉ%FW4FD0QTͦ͜ཋͼ͍ͯΔͷͷ%FW0QTʹൺΔ ͱਁಁ͍ͯ͠ͳ͍
։ൃ ӡ༻ ηΩϡ ϦςΟ ˞͜͜Ͱਁಁͱ֤ϫʔυ͕ΒΕ͍ͯΔ͔ɺ ҙࣝ͞Ε͍ͯΔ͔Ͳ͏͔Ͱͳ͘ɺͦΕΒ͕ ࢦ͢Α͏ͳ༰ʹ࣮ࡍऔΓΜͰ͍Δ͔Ͳ͏͔Λ ݴ͍ͬͯ·͢ɻ 8
ੲͷࣗΛৼΓฦͬͯɺ μϝͩͬͨϙΠϯτͱ ͦΕʹؔΘΔ%FW4FD0QTͷ ϕετϓϥΫςΟεΛ ݟ͍͖ͯ·͢ʂ 9
աڈͷࣗΞϯνύλʔϯ ΞϓϦέʔγϣϯͷ࡞Γ͜Έ͕ͦ͜ʮྑ͍ͷΛ࡞Δʯ ͷେ෦ΛΊΔͱ͍͏ҙࣝΛͲ͔͜Ͱ͍࣋ͬͯͨ • ͲΜͳ༷ʹ͢Δ͔ʁͬͨਓͷϑΟʔυόοΫͲ͏͔ʁͱ ͍ͬͨ༰͕ͦ͜Ϣʔβʔͷମݧʹܨ͕Δͱ͍͏ҙࣝ • σϦόϦʔͷϓϩηεηΩϡϦςΟͷվળʮΒͳ͖Ό ͍͚ͳ͍λεΫʯʮࣗୡͷ࡞ۀΛָʹ͢Δͷʯͱ͍͏ҙࣝ 10
ώϯτ̍ Ϣʔβʔʹಧ͘·Ͱ͕ʮྑ͍ͷΛ࡞ΔʯͰ͢ ͍ɺͦͷޙଓ͖·͢ 📘ࡢࠓͷࢥख๏ɺͲΕΛͱͬͯΰʔϧ @@ϢʔβʔʹՁΛಧ͚ଓ͚Δ͜ͱ • ʮԿΛ࡞Δ͔ʯʹՃ͑ͯʮͲ͏ಧ͚Δ͔ʯϢʔβʔͷͨΊʹ ͋Δ ͦΕ͕݁Ռͱͯ͠ΤϯδχΞͷͨΊʹͳΔ •
ૉૣ͞ɾ҆શੑͷ࣮ݱ͕ෆՄܽ • ʮΒͳ͖Ό͍͚ͳ͍ʯ͜ͱͰ͋Δ͕ɺྑ͍ͷΛಧ͚͍ͨ ͱ͍͏ࢥ͍ʹϓϥεʹಇ͘ͷͰϙδςΟϒʹऔΓ͏ 11
աڈͷࣗΞϯνύλʔϯ̎ ࣮ࡍͷ৫ͱͯ͠ؾ࣋ͪͷ্ͰηΩϡϦςΟνʔϜ ͕ࣗͷνʔϜͷ֎ଆʹ͋ͬͨ • ඞཁͳͱ͖ʹ͓ئ͍Λ͠߹͏ؔͩͬͨ • ීஈԿΛ͍ͯ͠Δ͔͓ޓ͍Α͘Βͳ͔ͬͨ • ʮηΩϡϦςΟνʔϜ͕ݴ͏ͳΒେࣄͳΜͩΖ͏ʯ ͱத్ͳཧղͰݴΘΕͨ͜ͱΛΔ͚ͩͷ࣌
͋ͬͨ 12 ʘࠓࢥ͑ηΩϡϦςΟνʔϜͷํ͔Βʗ ʘาΈد͖ͬͯͯ͘Εͯͨ͜ͱʜʗ ʘͬͱίϥϘग़དྷͨͳ͊ʜʗ
ώϯτ̎ ηΩϡϦςΟνʔϜҰॹʹͷͮ͘ΓΛ͢ΔؒͰ͢ 📘։ൃɾӡ༻ʹՃ͑ͯηΩϡϦςΟνʔϜͱڠۀ͢Δ • ͳΔ͘ΰʔϧΛڞ༗͠߹͏ྗΛ͠Α͏ • େ͖ͳಉ͡ΰʔϧΛ࣋ͭͱ͍͏ҙຯͰͷڞ༗ • ͦΕͧΕͷখ͞ͳΰʔϧΛ͓ޓ͍͓ͬͯ͘ͱ͍͏ҙຯͰͷڞ༗ •
ඞཁͳ͚࣌ͩ࿈བྷ͢ΔͷͰͳ͘ɺීஈ͔Βίϛϡχέʔγϣϯ ΛऔΕΔؔੑΛங͜͏ • ৫ͷߏతʹ͍͠߹Ͳ͏ؤுͬͯݫ͍͠ɾɾɾ • ಛʹେاۀʹ͓͚Δ ηΩϡϦςΟνʔϜͱͷؔΘΓํͰΦεεϝ ޭྫ͕͋Εڭ͍͑ͯͩ͘͞ʂ 13
աڈͷࣗΞϯνύλʔϯ̏ ηΩϡϦςΟ͕͔Βͳ͍ɾ͍͠ɾා͍ͱࢥ͍ͬͯͨ • ෳࡶͳͷͰઐՈʹͤΔ͔͠ͳ͍ؾ͕ͨ͠ • ͪΖΜͳ͍͕͠Ζʹग़དྷͳ͍ͱࢥ͍ͬͯΔͷͰɺݴΘΕͨ ͜ͱ͍ͬͯͨ 14
ώϯτ̏ ·ͣղ͠·͠ΐ͏ 📘খ࢝͘͞ΊΔ • ηΩϡϦςΟͷकඋൣғ͍͕ɺ%FW4FD0QTͰओʹιϑτ ΣΞͷηΩϡϦςΟΛѻ͏ • ιϑτΣΞͷηΩϡϦςΟͱݴͬͯऔΓΊΔ׆ಈͷछྨ ͕͍͔ͭ͋͘Δ •
·ͣݱঢ়Ѳͱͯ͠ࠓͰ͖͍ͯΔ͜ͱɺͰ͖͍ͯͳ͍͜ͱΛ ͚͔ͯΒ࣍ͷΞΫγϣϯΛܾΊΔ 15
ηΩϡϦςΟͷղ • ΠϯϑϥɺΞϓϦέʔγϣϯɺώϡʔϚϯΤϥʔʜؾʹ͖͢ ͜ͱଟذʹΘͨΔ • ·ͣͯ͢ΛηΩϡϦςΟ୲ʹؙ͛ͤͣɺࣗʹͰ͖Δ ͜ͱΛݟ͚ͭΔͷ͕େࣄ ʮ8IBUBSFUIFMBZFSTPGTFDVSJUZ "DZCFSTFDVSJUZSFQPSUʯ IUUQTHPNJOETJHIUDPNJOTJHIUTCMPHXIBUBSFUIFMBZFSTPGTFDVSJUZ
16
ιϑτΣΞͷηΩϡϦςΟ৭ʑ • ڴҖϞσϦϯά 5ISFBUNPEFMJOH • ੩తΞϓϦέʔγϣϯηΩϡϦςΟςετ 4"45 • ಈతΞϓϦέʔγϣϯηΩϡϦςΟςετ %"45
• ιϑτΣΞίϯϙδγϣϯղੳ 4$" • ϑΝδϯά GV[[JOH • ϖωτϨʔγϣϯςετ ͳͲ 17
աڈͷࣗΞϯνύλʔϯ̐ ࣗͷॻ͍ͨίʔυʹؔ৺ͷ΄ͱΜͲΛୣΘΕ͍ͯͨ • ։ൃఔͰੜΈग़ͨ͠ιʔείʔυͷ੬ऑੑ͕ා͍ • ࣗʹؔΘΔηΩϡϦςΟͱ͍͑4"45%"45 18
ώϯτ̐ Ռ ࡞ͬͨίʔυͱ͍ͬͯΔίʔυ͔Βग़དྷ͍ͯ·͢ 📘044ͷηΩϡϦςΟνΣοΫΛ͢Δ • ׂҎ্ͷ৫͕ιϑτΣΞ։ൃʹ044Λ͏ͱݴΘΕΔ࣌ • 044ͷ΄ͱΜͲผͷ044ʹґଘ͓ͯ͠ΓσϓϩΠ͢Διϑτ ΣΞʹࣗͷѲ͍ͯ͠ͳ͍ίʔυ͕େྔʹؚ·ΕΔ •
4$" ιϑτΣΞίϯϙδγϣϯղੳ πʔϧΛ͏ 19
ґଘɺͦͷ·ͨґଘ 20 ʮ&YQMPSFZPVS044EFQFOEFODJFT7JTVBMMZʯ IUUQTXXXMJOLFEJODPNQVMTFFYQMPSFZPVSPTTEFQFOEFODJFTWJTVBMMZNJDIBFMNVMMFS
աڈͷࣗΞϯνύλʔϯ̑ ηΩϡϦςΟΛ։ൃϥΠϑαΠΫϧʹΈࠐ͏ͱͯ͠ ͍ͳ͔ͬͨ • ηΩϡϦςΟؔ࿈ͷνΣοΫΛ։ൃͷޙʹ·ͱΊͯΖ͏ͱ ͍ͯͨ͠ • ྫ݄͑ʹճ࣮ࢪ͢ΔͱසΛܾΊΔͱ͔ɺϓϩδΣΫτ͕ མͪண͍ͨΒ࣮ࢪ͢Δͱ͔ɺ։ൃͱผͷͱ͜ΖͰΕྑ͍ ͱߟ͍͑ͯͨ
21
ώϯτ̑ ηΩϡϦςΟνΣοΫɺͨΓલʹΓ·͠ΐ͏ 📘γϑτϨϑτɾ4%-$ͷΈࠐΈ • ࣗಈԽ͠ɺ$*$%ύΠϓϥΠϯͷதʹΈࠐΉ • ϦϦʔεલʹ·ͱΊͯߦ͏ͱϦϦʔεͷΕʹܨ͕ΔͷͰආ͚Δ • සλΠϛϯάΛܾΊΔΑΓɺ։ൃΛਐΊΔͱඞͣ௨ΔΑ͏ʹ͢Δ •
͍͟՝͕ݟ͔ͭͬͨͱ͖ͷରԠ͋ΔఔΠϝʔδ͓ͯ͘͠ • ఆྔతͳ݁Ռ ॏେɺ$744είΞͳͲ ʹԠͨ͡ϧʔϧΛఆΊ͓ͯ͘ • ʮΒͳ͍͜ͱʯΛܾΊΔͷେࣄ • ਓͷஅͳ͘ͳΒͳ͍͕ɺ ͦ͜ʹϦιʔεΛׂͨ͘ΊʹࣗಈԽ͢Δ 22 $744 $PNNPO7VMOFSBCJMJUZ4DPSJOH4ZTUFN ੬ऑੑΛධՁ͢ΔͨΊͷΦʔϓϯͳۀքඪ४
4%-$ʹηΩϡϦςΟΛΈࠐΉ νΣοΫ Ξτ Ϗϧυ ςετ ϦϦʔε σϓϩΠ ڴҖ ϞσϦϯά 4"45
%"45 ϖϯςετ 4$" ϑΝδϯά 4"45 ϒϥοΫϘοΫε ςετ %"45 ϖϯςετ ϗϫΠτϘοΫε ςετ ϑΝδϯά 4$" 23 શ෦ ͜͜ͰΔ ʘ·ͣॻ͍ͨίʔυʹ%"45ʗ ʘͦͯ͠044ʹ4$"ͱ͍͏ʗ ʘॱͰ࢝ΊͯΈͯʁʗ
ώϯτ্ͤ ΞʔςΟϑΝΫτͷཧɾ׆༻ඞਢͰ͢ 📘ಉ͡ιʔείʔυͷϏϧυ͚ͩ @@Ҏ߱อͨ͠ΞʔςΟϑΝΫτΛ͏ • 044ΛͬͨιϑτΣΞͷ࣭୲อͷͨΊ • ࣭͕୲อ͞ΕͨιϑτΣΞΛग़ՙ͢ΔͨΊ • ͦͷଞɺϏϧυ࣌ؒͷઅόʔδϣϯͷΓସ͑͢͞ͳͲ
ϝϦοτ৭ʑ 24
25 Ϣʔβʔʹಧ͘·Ͱ͕ʮྑ͍ͷΛ࡞ΔʯͰ͢ ηΩϡϦςΟνʔϜҰॹʹͷͮ͘ΓΛ͢ΔؒͰ͢ ʮηΩϡϦςΟʯڪΕͣʹ·ͣղ͠·͠ΐ͏ Ռ࡞ͬͨίʔυͱ͍ͬͯΔίʔυ͔Βग़དྷ͍ͯ·͢ ηΩϡϦςΟνΣοΫɺͨΓલʹΓ·͠ΐ͏ ΞʔςΟϑΝΫτͷཧɾ׆༻ඞਢͰ͢ ώϯτ͓͞Β͍
26 Ϣʔβʔʹಧ͘·Ͱ͕ʮྑ͍ͷΛ࡞ΔʯͰ͢ ηΩϡϦςΟνʔϜҰॹʹͷͮ͘ΓΛ͢ΔؒͰ͢ ʮηΩϡϦςΟʯڪΕͣʹ·ͣղ͠·͠ΐ͏ Ռ࡞ͬͨίʔυͱ͍ͬͯΔίʔυ͔Βग़དྷ͍ͯ·͢ ηΩϡϦςΟνΣοΫɺͨΓલʹΓ·͠ΐ͏ ΞʔςΟϑΝΫτͷཧɾ׆༻ඞਢͰ͢ ώϯτ͓͞Β͍ ϚΠϯυ ɾ
৫ ٕज़ ɾ πʔϧ
%FW0QT%FW4FD0QT πʔϧΛೖΕͯऴΘΓɺ࡞ۀͱͯ͠औΓΉ͚ͩͷͷͰͳ͍ • ৫ϚΠϯυηοτͷมֵ͔Β࢝·Δ • ༗ࣝऀ͕͍ΕվળਐΉ͕ࣗͲ͏͔ʁද໘తͳ࡞ۀͷΈ Ͱͳ͘ਅʹʮ%FW0QT%FW4FD0QTͷܦݧ͋Γ·͢ʯͱݴ͑Δ ͷ͔ʁ 27
ͲͪΒେࣄ • ͪΖΜखΛಈ͔͢͜ͱΊͪΌͪ͘Όଚ͍ • ʮਅʹʜʯͱ͔ߟ͑ͳٕͯ͘ज़͕తʹͳ͍ͬͯͯɺศར ʹͳΕͦΕ࣮֬ʹϓϥε 28
ؾ͖͔Β࢝·Δ • Կ͔Γͳ͍ͱײ͡Δ߹ɺ৽͍͜͠ͱۤखͳ͜ͱʹઓ͠ ͍͚ͨͲΠϚΠν౿Έग़ͤͳ͍ͱ͍͏߹ • ͕ࣗࠓԿʹؔ৺͕͋Δͷ͔ʁԿ͕ग़དྷ͍ͯͳ͍ͷ͔ʁੳͯ͠ΈΔ • ౿Έग़ͤͳ͍ྖҬɺؔΘΓ͕ബ͍ਓʑେ͖ͳత ओʹϏδωε Λ
ͱʹࢦؒͩ͢ͱଊ͑ɺΛ୳͢ • ͜ΕΛΓӽ͑ͨΒ۩ମతͳํ๏͕ΑΓͬ͘͠Γ͖ͨΓɺͲ͔͜Β ࢝ΊΔ͔அ͘͢͠ͳͬͨΓ͢Δ͔ʂʁ • ࢲͱશવҧ͏ཱɾҙݟͷํͦͷʮҧ͏ͳʙʯͱ͍͏ײ ͋Δҙຯؾ͖͔͠Ε·ͤΜ 29
ؾ͖͔Β࢝·Δ 30
ϚΠϯυΛม͑Δͱ͍͏ҙຯͰ ۩ମతͳํ๏ΛΔͱ͍͏ҙຯͰ 31
ͨ͘͞Μͷؾ͖ʹग़ձ͑ͦ͏ͳ $MPVE/BUJWF%BZT5PLZP👏 32
Ҿ͖ଓָ͖͠ΜͰ͍͖·͠ΐ͏ʂ 33
ϕετϓϥΫςΟε࣮ફͷώϯτ ΣϏφʔ IUUQTKGSPHDPNKBSFTPVSDFTVQDPNJOHXFCJOBST • ͖ͬ͞ग़͖ͯͨʮΞʔςΟϑΝΫτཧʯʹ͍ͭͯ • ݄ʙ ։ൃɾӡ༻ޮͱηΩϡϦςΟ্Λॿ͚Δ ΞʔςΟϑΝΫτཧ •
+'SPH 1MBUGPSNʹ͝ڵຯΛ͓࣋ͪͷํ ͋Γ͕ͱ͏͍͟͝·͢ʂ ͚ • ݄ʙ ͡Ίͯͷ +'SPH1MBUGPSN ࠷ޙʹΑΖ͚͠Ε Ξϯέʔτʹ͝ڠྗ͍ͩ͘͞🐸 34
5IBOLZPV 35 ʘ+'SPHͷϓϩμΫτΛʗ ʘແྉͰͬͯΈΔʗ
˞ ֤Ξϯνύλʔϯ࣮Ͱ͕͢ɺ࠷ۙͷͷ͘͢͝ੲͷͷ͋Γ·͢ ͠ɺશͯࢲͷະख़͞Ώ͑Ͱ͢ɻաڈʹॴଐ͍ͯͨ͠ಛఆͷ৫ͷͰ ͋Γ·ͤΜɻ 36
ࢀߟϦϯΫ • 8IJUF1BQFS+'SPH9SBZ4FDVSJUZBOE$PNQMJBODFPGUIF 0QFO4PVSDF 4PGUXBSF%FQFOEFODJFT:PV3FMZPO IUUQTKGSPHDPNXIJUFQBQFSKGSPHYSBZVOJWFSTBMDPNQPOFOU BOBMZTJT • #JOBSZ4PGUXBSF$PNQPTJUJPO"OBMZTJT IUUQTXXXHSBNNBUFDIDPNCJOBSZTPGUXBSFDPNQPTJUJPO
BOBMZTJTTDB 37