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
Cognitoを利用してAWSサービスへのアクセス権限をコントロールする
Search
kawaji
May 28, 2019
44
0
Share
Cognitoを利用してAWSサービスへのアクセス権限をコントロールする
kawaji
May 28, 2019
More Decks by kawaji
See All by kawaji
Amazon Nova シリーズでパワポカラオケしてみた
kawaji_scratch
0
25
re:Invent 2025 から見る営業が知るべき AWS サービス
kawaji_scratch
0
27
次世代のSageMakerとは
kawaji_scratch
0
120
サーバレスの未来〜The Key to Simplifying Everything〜
kawaji_scratch
3
550
こんなJAWS FESTAはいやだ!
kawaji_scratch
0
130
AWSにおける生成AIと最近のアップデート
kawaji_scratch
0
75
Cookieレスな時代に向けたマーケティング基盤の作り方
kawaji_scratch
0
67
JAWS ミート 2024 LT
kawaji_scratch
0
49
RustでLambdaはどれだけ高速化するのか
kawaji_scratch
0
5
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
96
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
100
Typedesign – Prime Four
hannesfritz
42
3k
Designing for Performance
lara
611
70k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
120
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Docker and Python
trallard
47
3.8k
Abbi's Birthday
coloredviolet
2
6.4k
Color Theory Basics | Prateek | Gurzu
gurzu
0
280
Transcript
CognitoΛར༻ͯ͠ AWSαʔϏεͷΞΫηεݖݶΛί ϯτϩʔϧ͢Δ 2019/5/28 JAWS-UG ໊ݹ ࿏ ོٛ
w ॴଐ ༗ݶձࣾεΫϥονιϑτ w ໊લ ࿏ོٛʢ͔Θ͡Α͔ͨ͠ʣ w "84ྺ
̔ w ͖ͳ"84αʔϏε 3PVUFɺ&$4QPU'MFFU"1* w ظ͍ͯ͠ΔαʔϏε .BOBHFE#MPDLDIBJO ࣗݾհ !LBXBKJ@TDSBUDI
Cognitoͱ ͳΜ͔ॻ͘ "84#MBDL#FMU0OMJOF4FNJOBS"84$PHOJUPΑΓҾ༻
Ϣʔεέʔε • ։ൃҊ݅ͰϢʔβʔϩάΠϯػೳ͕ඞཁɻ • ೝূج൫ΛࣗલͰ։ൃ͠ͳ͍ํ๏ͳ͍͔ʁ
HTMLϕʔεͷ߹
ߏ
ͬ͘͟Γखॱ • Cognito UserPoolΛ༻ҙ͢Δ • ΫϥΠΞϯτΞϓϦΛઃఆ͢Δ • ALBΛ༻ҙ͢Δ • ϦεφʔΛઃఆ͢Δ
ΞϓϦΫϥΠΞϯτ
ΞϓϦΫϥΠΞϯτ $PHOJUPΛ*%ϓϩόΠμͱͯ͠ࢦఆ αΠϯΠϯޙʹϦμΠϨΫτ͞ΕΔ63- αΠϯΞτޙʹϦμΠϨΫτ͞ΕΔ63-
Ϧεφʔͷઃఆ σϑΥϧτΞΫγϣϯͰʮೝূʯΛબ
Ϧεφʔͷઃఆ $PHOJUPΛબ ࡞ࡁΈͷϢʔβʔϓʔϧ ࡞ࡁΈͷΞϓϦΫϥΠΞϯτ Ҏ্Ͱɺ&-#ϦΫΤετ͕དྷͨ߹ʹ$PHOJUPͱ࿈ܞ͢Δ
Ϧεφʔͷઃఆ ೝূࡁΈͷϦΫΤετΛసૹ͢Δઃఆ
Ϧεφʔͷઃఆ "-#ʹઃఆͨ͠"VUP4DBMJOH(SPVQΛࢦఆ
Πϝʔδ ϦΫΤετ ϩάΠϯը໘ ϦμΠϨΫτࢦࣔ ೝূϦΫΤετ ೝূޙ63-ϦμΠϨΫτ 5PLFOݕূ
Cognito͕༻ҙ͢ΔUI αΠϯΠϯը໘ αΠϯΞοϓը໘
ิ ALB͕ϦΫΤετΛͲ͏Validation͢Δ͔ • CookieΛར༻͍ͯ͠Δ AWSELBAuthSessionCookie-0 AWSELBAuthSessionCookie-1 • λΠϜΞτͳͲࣗͰมߋՄೳ
SPA ʢγϯάϧϖʔδΞϓϦέʔγϣϯʣ ͷ߹
ߏ
ͬ͘͟Γखॱ • Cognito UserPoolΛ༻ҙ͢Δ • ΫϥΠΞϯτΞϓϦΛઃఆ͢Δ • APIGatewayΛ༻ҙ͢Δ • ΦʔιϥΠβʔΛઃఆ͢Δ
ͬ͘͟Γखॱ • Cognito UserPoolΛ༻ҙ͢Δ • ΫϥΠΞϯτΞϓϦΛઃఆ͢Δ • APIGatewayΛ༻ҙ͢Δ • ΦʔιϥΠβʔΛઃఆ͢Δ
• API୯ҐͰೝՄ݅Λઃఆ͢Δ આ໌ࡁΈ
ΦʔιϥΠβʔͷઃఆ $PHOJUPΛબ ࡞ͨ͠ϢʔβʔϓʔϧΛબ )551ϔομʹ༩͢Δ τʔΫϯͷ໊শ
APIʹ࡞ͨ͠ΦʔιϥΠβʔΛઃఆ͢Δ "1*୯ҐͰ੍ޚ͕Մೳɻ (&50, 1045/(ͳͲͰ͖Δ
Πϝʔδ αΠϯΠϯ 5PLFOฦ٫ "1*ݺͼग़͠ 5PLFO༩ "1*Ϩεϙϯε 5PLFOݕূ
ิ "1*(BUFXBZΦʔιϥΠβʔҎ֎ʹ*".ʹΑΔೝ ՄΛαϙʔτ͍ͯ͠Δ
LambdaΛར༻ͯ͠ΧελϚΠζՄೳ
͜͜·ͰCognito UserPoolͷ͓
Amazon Cognito ID ϓʔϧ (ϑΣσϨʔςΟουΞΠσϯςΟςΟ) Λར༻ͯ͠ग़དྷΔ͜ͱ
• AWSϦιʔεΞΫηε༻ͷTemporary CredentialsΛ ͍ग़͢ɻ • ೝূ֎෦Identity ProviderʹҠৡՄೳɻ • Ұਓͷਓ͕ؒ࣋ͭෳͷIdentity ProviderͷΞΧϯ
τใΛIdentityͱͯ͠·ͱΊΔɻ
• AWSϦιʔεΞΫηε༻ͷTemporary CredentialsΛ͍ग़͢ɻ • ೝূ֎෦Identity ProviderʹҠৡՄೳɻ • Ұਓͷਓ͕ؒ࣋ͭෳͷIdentity ProviderͷΞΧϯτใΛ Identityͱͯ͠·ͱΊΔɻ
Ұ࣌తͳݖݶΛ͍ग़͢͜ͱʹΑΓΞϓϦ͔Β"84αʔϏε ΞΫηεՄೳʹ
• AWSϦιʔεΞΫηε༻ͷTemporary CredentialsΛ͍ग़͢ɻ • ೝূ֎෦Identity ProviderʹҠৡՄೳɻ • Ұਓͷਓ͕ؒ࣋ͭෳͷIdentity ProviderͷΞΧϯτใΛ Identityͱͯ͠·ͱΊΔɻ
Ұ࣌తͳݖݶΛ͍ग़͢͜ͱʹΑΓΞϓϦ͔Β"84αʔϏε ΞΫηεՄೳʹ 'BDFCPPL (PPHMFͳͲ$PHOJUPҎ֎ͷ*E1Λར༻Մೳɻ "VUIͱ͔ݴͬͱ͚ࠓਖ਼ղʁ
• AWSϦιʔεΞΫηε༻ͷTemporary CredentialsΛ͍ग़͢ɻ • ೝূ֎෦Identity ProviderʹҠৡՄೳɻ • Ұਓͷਓ͕ؒ࣋ͭෳͷIdentity ProviderͷΞΧϯτใΛ Identityͱͯ͠·ͱΊΔɻ
Ұ࣌తͳݖݶΛ͍ग़͢͜ͱʹΑΓΞϓϦ͔Β"84αʔϏε ΞΫηεՄೳʹ 'BDFCPPL (PPHMFͳͲ$PHOJUPҎ֎ͷ*E1Λར༻Մೳɻ "VUIͱ͔ݴͬͱ͚ࠓਖ਼ղʁ J1IPOFΞϓϦͱBOESPJEΞϓϦͷΞΧϯτΛ ෦Ͱಉ͡ਓͱͯ͠ೝࣝͰ͖Δ
Πϝʔδ
Πϝʔδ
۩ମྫ • ೝূࡁΈϢʔβʔࣗઐ༻ͷόέοτྖҬ ϑΝΠϧΛΞοϓϩʔυͰ͖Δɻ • ೝূ͞Ε͍ͯͳ͍Ϣʔβʔɺࢀরݖݶ͚ͩ༩͑Β Ε͓ͯΓσʔλΛӾཡ͚ͩͰ͖Δɻ ͳͲ੍͕ޚՄೳɻ
AWS Amplify 8&#ͰΞϓϦ࡞ΓࠐΉͱ͖"84"NQMJGZ͓͢͢Ίɻ $PHOJUPपลΛطଘϥΠϒϥϦ͕͍Ζ͍ΖରԠͯ͘͠Ε·͢ɻ
ଓ͖࠙ձͰʂʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠