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
AWSを始めるにあたってのAWS IAM基礎 / jawsug-niigata-8
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
kasacchiful
PRO
May 09, 2020
Programming
420
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AWSを始めるにあたってのAWS IAM基礎 / jawsug-niigata-8
JAWS-UG新潟#8で発表した資料です。
kasacchiful
PRO
May 09, 2020
More Decks by kasacchiful
See All by kasacchiful
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
1
450
Step Functions Express ワークフローの使い所 / 20260725jawsug-niigata-sado
kasacchiful
PRO
1
94
Step FunctionsでAIエージェント × 人の承認を試す / 20260705jawsug-hokurikushinkansen-agentcore-hitl-workflow
kasacchiful
PRO
0
100
上越のサメ食文化を訪ねて - 新潟市民の初体験レポ / ssmjp-shark
kasacchiful
PRO
1
89
Rust on AWS でデータ分析 / 20260523iotlt-niigata-rust-on-aws
kasacchiful
PRO
0
66
Step Functionsで始めるサーバーレス入門 〜 つないで動かすAWSサーバーレス
kasacchiful
PRO
0
78
Amazon Q Developer CLI (現Kiro CLI) で作った 新潟ランチマップWebアプリのこれまでとこれから / 20260207jawsug-tochigi
kasacchiful
PRO
0
140
Amazon SageMaker Catalogの、AIエージェントによる自動データ分類機能を試してみようとしたが、できなかったので、代わりに最近構築したデータ連携基盤を紹介します / 20260117jawsug-fukui
kasacchiful
PRO
0
170
データファイルをAWSのDWHサービスに格納する / 20251115jawsug-tochigi
kasacchiful
PRO
2
300
Other Decks in Programming
See All in Programming
Swift愛好会100回記念 第1回を振り返る
jollyjoester
0
120
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
200
新卒PdEのリアル
ryu1013
1
490
FreeBSDでZabbixを動かす.pdf
kenkino
0
220
AI Agent時代のリアーキテクチャ戦略と実践
hokaccha
9
4.3k
Go × SIMDで高速化するベクトル検索 ~ルーフラインモデルでSIMDが効く境界を探れ! ~
po3rin
1
540
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
2.6k
アクセシビリティから考える情報設計
high_g_engineer
0
370
一参加者から『中の人』へ 〜全通PHPerがブースに立って学んだ、カンファレンスを100倍楽しむコツ〜
wp_daisuke
0
150
The Good Stuff, Not the Slop: Engineering High-Quality Android Apps with Modern AI Tooling
danybony
1
250
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
3
540
Building an Out-of-Order CPU
latte72
1
770
Featured
See All Featured
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
520
A Modern Web Designer's Workflow
chriscoyier
699
190k
How STYLIGHT went responsive
nonsquared
100
6.3k
How to make the Groovebox
asonas
2
2.4k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.9k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
440
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
690
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Google's AI Overviews - The New Search
badams
0
1.6k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.3k
Skip the Path - Find Your Career Trail
mkilby
1
230
Transcript
AWSΛ࢝ΊΔʹ͋ͨͬͯͷ AWS IAMجૅ 2020-05-09 JAWS-UG৽ׁ#8 @kasacchiful
ࣗݾհ • ּݪ (@kasacchiful) • ৽ׁࢢࡏॅͷιϑτΣΞΤϯδχΞ • ͖ͳݴޠ: Ruby
• ݱࡏΑ͘৮͍ͬͯΔAWSαʔϏε: WorkSpaces / Amplify
༰ • IAMͱԿ͔Λͬ͘͟Γઆ໌ • IAMϢʔβʔ / άϧʔϓ / ϙϦγʔ /
ϩʔϧ • ·ͣ͜Ε͚͓͖͍ͩͬͯͨ͜ͱ5ͭ
JAWS-UG৽ׁͷϋϯζΦϯͰ… • IAMϢʔβ࡞ͯ͠AdministratorAccessϙϦγʔΛIAM άϧʔϓʹΞλον͍ͯ͠ΔͷͰɺIAM͔ͳΓ৮͍ͬͯΔ IUUQTHJUIVCDPNLBTBDDIJGVMKBXTVHOJJHBUBCMPCNBTUFS@SFHJTUSBUJPONE
IAM is Կʁ
AWS Identity and Access Management (IAM) • AWSͷૢ࡞ΛΑΓηΩϡΞʹ͢ΔͨΊͷ Έ •
ೝূɾೝՄ • AWSΛૢ࡞͢ΔͨΊͷϢʔβʔʗάϧʔϓʗϩʔϧͷ࡞ • Ϣʔβʔຖͷೝূใͷઃఆ • Ϣʔβʔʗάϧʔϓʗϩʔϧʹର࣮ͯ͠ߦͰ͖Δૢ࡞Λઃఆ
IAMΛ͏ʹ • AWSϚωδϝϯτίϯιʔϧ͔Βૢ࡞͢Δ͜ ͱ͕ଟ͍ • CLISDK͔ΒΞΫηεՄೳ
IAMϢʔβʔʗάϧʔϓʗϙ Ϧγʔ
IAMϢʔβʔʗάϧʔϓʗϙϦγʔ • IAMϢʔβʔ: Ϣʔβʔͷ1୯Ґ • IAMάϧʔϓ: IAMϢʔβʔΛ·ͱΊͨͷ • IAMϙϦγʔ: ݖݶઃఆ
ରԠؔ *".Ϣʔβ " *".Ϣʔβ # *".Ϣʔβ $
ରԠؔ *".Ϣʔβ " *".Ϣʔβ # *".Ϣʔβ $ *".άϧʔϓ ཧऀ *".άϧʔϓ
։ൃऀ
ରԠؔ *".Ϣʔβ " *".Ϣʔβ # *".Ϣʔβ $ *".άϧʔϓ ཧऀ *".άϧʔϓ
։ൃऀ ϙϦ γʔ ϙϦ γʔ
ରԠؔ *".Ϣʔβ " *".Ϣʔβ # *".Ϣʔβ $ *".άϧʔϓ ཧऀ *".άϧʔϓ
։ൃऀ ϙϦ γʔ ϙϦ γʔ ϙϦ γʔ
ରԠؔ *".Ϣʔβ " *".Ϣʔβ # *".Ϣʔβ $ *".άϧʔϓ ཧऀ *".άϧʔϓ
։ൃऀ ϙϦ γʔ ϙϦ γʔ ϙϦ γʔ "84ΞΧϯτ
AWSΞΧϯτ (ϧʔτϢʔβʔ) جຊ༻͠ͳ͍ • AWSΞΧϯτͳΜͰͰ͖Δ͕Ώ͑ʹɺ ࿙Ӯͨ͠߹ɺऔΓฦ͠ͷ͔ͭͳ͍ࣄଶʹ • جຊతʹతʹԠͯ͡IAMϢʔβʔϩʔϧ Λ࡞ͯ͠ΞΫηε͢Δ͜ͱͰɺ֤ʑͷΞΫ ηεཧɾঝೝɾࠪ
(CloudTrail) ͢Δ͜ͱ ͕Մೳʹ
IAMϢʔβ࡞࣌ͷ AWSΞΫηεͷछྨͷબ "84$-*"844%,ɺ ϓϩάϥϜ͔Β"84ʹΞΫηε͢Δࡍʹඞཁ "84Ϛωδϝϯτίϯιʔϧʹ ΞΫηε͢Δࡍʹඞཁ
git-secretsͰΞΫηεΩʔ࿙Ӯ Λ͙ IUUQTHJUIVCDPNBXTMBCTHJUTFDSFUT
IAMϙϦγʔ • ͲͷAWSαʔϏεʢϦιʔεʣʹରͯ͠ • ͲͷΑ͏ͳΞΫγϣϯΛ • ڐՄ or ڋ൱ ͢Δ
ΛJSONܗࣜͰهड़ͨ͠ͷ
IAMϙϦγʔ • ͲͷAWSαʔϏεʢϦιʔεʣʹରͯ͠ • ͲͷΑ͏ͳΞΫγϣϯΛ • ڐՄ or ڋ൱ ͢Δ
ΛJSONܗࣜͰهड़ͨ͠ͷ 3FTPVSDF "DUJPO &⒎FDU
IAMϙϦγʔαϯϓϧ { "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "s3:*",
"Resource": "*", "Condition": { "DateGreaterThan": {"aws:CurrentTime": "2017-07-01T00:00:00Z"}, "DateLessThan": {"aws:CurrentTime": "2017-12-31T23:59:59Z"} } } } IUUQTEPDTBXTBNB[PODPNKB@KQ*".MBUFTU6TFS(VJEFSFGFSFODF@QPMJDJFT@FYBNQMFT@BXTEBUFTIUNM ಛఆͷͰΞΫηεΛڐՄ͢Δ
ϙϦγʔͷධՁ݁Ռ • Կ໌ࣔ͞Ε͍ͯͳ͚ΕɺσϑΥϧτͰ ʮڋ൱ʯ • ʮڐՄʯ͕͋ΕɺʮڐՄʯ • ໌ࣔతʹʮڋ൱ʯ͕͋Εɺͨͱ͑ʮڐՄʯ ͕͋Ζ͏ͱɺʮڋ൱ʯ
ϙϦγʔͷධՁ݁Ռ ڐՄͷεςʔτϝϯτهड़͕ ͋Δ ͳ͍ ڋ൱ͷεςʔ τϝϯτهड़ ͕ ͋Δ ڋ൱ ڋ൱
ͳ͍ ڐՄ ڋ൱ ʢσϑΥϧτʣ
IAMϙϦγʔͷछྨ • AWSཧϙϦγʔ • Α͘͏ݖݶઃఆΛAWS͕༻ҙ͍ͯ͠ΔϙϦγʔ • ΧελϚʔཧϙϦγʔ • զʑ͕ࣗ࡞ͨ͠ϙϦγʔ •
IAMϢʔβɺάϧʔϓɺϩʔϧʹΞλονͰ͖Δ • ΠϯϥΠϯϙϦγʔ • IAMϢʔβɺάϧʔϓɺϩʔϧʹॻ͖ࠐΜͩϙϦγʔ • ଞͷIAMϢʔβͳͲʹΞλονͰ͖ͳ͍͕ɺ1ର1ͷద༻ʹศར
IAMϙϦγʔͷछྨ • AWSཧϙϦγʔ • Α͘͏ݖݶઃఆΛAWS͕༻ҙ͍ͯ͠ΔϙϦγʔ • ΧελϚʔཧϙϦγʔ • զʑ͕ࣗ࡞ͨ͠ϙϦγʔ •
IAMϢʔβɺάϧʔϓɺϩʔϧʹΞλονͰ͖Δ • ΠϯϥΠϯϙϦγʔ • IAMϢʔβɺάϧʔϓɺϩʔϧʹॻ͖ࠐΜͩϙϦγʔ • ଞͷIAMϢʔβͳͲʹΞλονͰ͖ͳ͍͕ɺ1ର1ͷద༻ʹศར ͡Ίɺ"84ཧϙϦγʔ Λ͏·ͬͯ͘ઃఆͯ͠ΈΑ͏ ׳Ε͖ͯͨΒɺಠࣗʹϙϦγʔ Λ࡞ͯ͠ઃఆͯ͠ΈΑ͏
IAM Policy Generator *".1PMJDZΛ બ IUUQTBXTQPMJDZHFOTBNB[POBXTDPNQPMJDZHFOIUNM
IAMϩʔϧ
IAMϩʔϧ • ୈ3ऀʹʮݖݶΛҕৡʯ͢ΔͨΊʹ༻ • AWSϦιʔεIAMϢʔβʹϩʔϧΛ௨ͯ͠ݖݶΛ༩Ͱ ͖Δ • Α͘ΘΕΔྫ: • EC2ʹS3ΞΫηεՄೳͳIAMϩʔϧΛΞλον
• LambdaʹS3ΞΫηεՄೳͳIAMϩʔϧΛΞλον
JAWS-UG৽ׁͷϋϯζΦϯͰ… • EC2LambdaͷϋϯζΦϯͰIAMϩʔϧΛ༻ͯ͠ݖݶ Λ༩͍ͯ͠Δ IUUQTHJUIVCDPNLBTBDDIJGVMKBXTVHOJJHBUBCMPCNBTUFS@FD@BWBJMBCJMJUZNE IUUQKBXTVHOJJHBUBIBOETPOTXFCTJUFBQOPSUIFBTUBNB[POBXTDPN@MBNCEB@T@IBOETPOIUNM
Կ͕͏Ε͍͠ͷ͔ • ΞΫηεΩʔΛऔಘ͠ͳͯ͘ࡁΉͷͰɺηΩϡΞʹΞΫη εͰ͖ΔΑ͏ʹͳΔɻ IUUQTHJUIVCDPNLBTBDDIJGVMKBXTVHOJJHBUBCMPCNBTUFS@FD@BWBJMBCJMJUZNE IUUQKBXTVHOJJHBUBIBOETPOTXFCTJUFBQOPSUIFBTUBNB[POBXTDPN@MBNCEB@T@IBOETPOIUNM
ΫϩεΞΧϯτΞΫηε • ผͷAWSΞΧϯτʹ͋ΔϦιʔεΞΫη εΛҕ͢Δํ๏ͰɺIAMϩʔϧΛ༻͢Δ IUUQTEPDTBXTBNB[PODPNKB@KQ*".MBUFTU6TFS(VJEFUVUPSJBM@DSPTTBDDPVOUXJUISPMFTIUNM
·ͣ͜Ε͚͓͖ͩͬͯͨ ͍͜ͱ5ͭ
·ͣ͜Ε͚͓͖͍ͩͬͯͨ ͜ͱ5ͭ • IAMͷμογϡϘʔυʹܝࡌ͞Ε͍ͯΔ5ͭͷ߲Λશͯྃʹ͠ ͓͖͍ͯͨ • ͓·͚: IAMͷμογϡϘʔυʹܝࡌ͞Ε͍ͯΔIAMϢʔβʔͷα ΠϯΠϯϦϯΫΛΧελϚΠζ͓͖͍ͯͨ͠
ϧʔτΞΧϯτͷMFA༗ޮԽ • AWSΞΧϯτʢϧʔτΞΧϯτʣʹMFA ʢଟཁૉೝূʣΛઃఆ͓ͯ͜͠͏ • Google AuthenticatorɺAuthyͷԾMFA ΛઃఆͰ͖ΔΞϓϦΛ༻͢ΔͱศརͰ͢ɻ
ݸʑͷIAMϢʔβʔͷ࡞ & άϧʔϓΛ༻ͨ͠ΞΫηεڐՄͷׂΓͯ • IAMϢʔβ࡞ͯ͠ɺIAMάϧʔϓͬͯIAM ϙϦγʔΛׂΓͯ·͠ΐ͏
IAMύεϫʔυϙϦγʔͷద༻ • ύεϫʔυϙϦγʔΛઃఆ͠Α͏
ΞΫηεΩʔͷϩʔςʔγϣϯ • ϓϩάϥϜͰ༻͢ΔΞΫηεΩʔগͳͯ͘1ճมߋ͠· ͠ΐ͏ • ະ༻ͷΞΫηεΩʔআ͠·͠ΐ͏
͓·͚: IAMϢʔβʔͷαΠϯ ΠϯϦϯΫͷΧελϚΠζ • σϑΥϧτʮAWSΞΧϯτIDʯ͕ઃఆ͞Ε͍ͯΔ • ΧελϚΠζ͓ͯ͘͠ͱɺϚωδϝϯτίϯιʔϧͷαΠϯΠϯ ʹͯɺAWSΞΧϯταΠϯΠϯը໘ͱIAMϢʔβʔαΠϯΠϯ ը໘ΛΓସ͑͘͢ͳΔͣ ΧελϚΠζͨ͠จࣈྻ
ʢΞΧϯτΤΠϦΞεʣ
·ͱΊ
·ͱΊ • IAMɺೝূɾೝՄΛ࢘ΔେࣄͳαʔϏε • AWSΞΧϯτͰͳ͘ɺIAMϢʔβͰૢ࡞͠Α͏ • ·ͣηΩϡϦςΟεςʔλε5߲શ͓ͯྃͯ͜͠͏ • IAMαΠϯΠϯϦϯΫͷΧελϚΠζ͓ͯ͘͠ͱศར •
IAMϙϦγʔͰඞཁ࠷খݶͷݖݶΛઃఆͰ͖Εɺॳ৺ऀ͔Βதڃऀ Ұา౿Έग़ͤΔ • αʔϏεؒ࿈ܞʹIAMϩʔϧΛઃఆ͠Α͏
͓ΘΓ