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 User Poolsと仲良くなるための話 / cognito-user-pools
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Takahiro Tsuchiya
May 28, 2019
Programming
2
590
Cognito User Poolsと仲良くなるための話 / cognito-user-pools
Cognitoと仲良くなるためにAmplifyはいいぞ!という話をしました。
Takahiro Tsuchiya
May 28, 2019
Tweet
Share
More Decks by Takahiro Tsuchiya
See All by Takahiro Tsuchiya
PicoRubyでLチカ
corocn
0
160
Kaigi on Rails 2024 - Rails APIモードのためのシンプルで効果的なCSRF対策 / kaigionrails-2024-csrf
corocn
12
7.7k
現場のエンジニアから見た採用担当との協働
corocn
7
3.1k
シリーズAをリファラル採用中心に走り抜ける / leaner-referral-engineer-2024
corocn
4
2.3k
捨てて加速するプロダクト開発 / sutete-speedup-product-development
corocn
3
750
リファラル採用にフルベットしてみた
corocn
3
4k
エンジニアとプロダクトマネージャーを兼任した1年間を振り返る / pdm-furikaeri
corocn
17
8.2k
育休のすゝめ #devsumi 2023
corocn
3
5.3k
GCPでRubyを動かしている話 / ruby on gcp
corocn
0
1k
Other Decks in Programming
See All in Programming
Cyrius ーLinux非依存にコンテナをネイティブ実行する専用OSー
n4mlz
0
110
SourceGeneratorのマーカー属性問題について
htkym
0
180
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
170
Fundamentals of Software Engineering In the Age of AI
therealdanvega
1
230
手戻りゼロ? Spec Driven Developmentとは@KAG AI week
tmhirai
1
180
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
310
Go Conference mini in Sendai 2026 : Goに新機能を提案し実装されるまでのフロー徹底解説
yamatoya
0
540
社内規程RAGの精度を73.3% → 100%に改善した話
oharu121
13
7.8k
今更考える「単一責任原則」 / Thinking about the Single Responsibility Principle
tooppoo
3
1.6k
CSC307 Lecture 12
javiergs
PRO
0
470
守る「だけ」の優しいEMを抜けて、 事業とチームを両方見る視点を身につけた話
maroon8021
3
490
今、アーキテクトとして 品質保証にどう関わるか
nealle
0
210
Featured
See All Featured
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
150
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
120
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.4k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
150
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Context Engineering - Making Every Token Count
addyosmani
9
740
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
110
Transcript
$PHOJUP6TFS1PPMT ͱྑ͘ͳΔͨΊͷ +"846(໊ݹೝূษڧձ ʢՐʣ 5BLBIJSP5TVDIJZB!DPSPDO
5BLBIJSP5TVDIJZB ͜ΖͪΌΜ !DPSPDO $PEFࢠ%FW0QTܥαʔϏε͕͖Ͱ͢
ࣗݾհ w ذෞݝࡏॅͷϑϧϦϞʔτϫʔΧʔ w גࣜձࣾΩϟελʔͰCPTZVΛ։ൃ w 3VCZPO3BJMTɺ7VFKTɺ"84ɺೝূٕज़ w ίϛϡχςΟɾษڧձొஃ w
/BHPZB'SPOUFOE6TFS(SPVQ w +"846(໊ݹ w "VUI"NCBTTBEPS$PNNVOJUZ-FBEFST w *EFOUJUZ%BODF4DIPPMʢٕज़ॻయͷʣ w ໊ݹ3VCZձٞʢύεϫʔυϨεೝূͷʣ
$PHOJUPͱͷग़ձ͍ w αʔϏε։ൃͰαοͱ͑Δ*%BB4Λ୳͍ͯͨ͠ w "NQMJGZ͕ൃද͞Εͨ͜Ζʢޙʁʣ w ͪΐΖͬͱΞΫηε੍ޚ͔͚ͨͬͨͩ͠ w ߏෳࡶͰཧղͰ͖ͣϋʔυϧ͕ߴͯ͘࠳ં w
ͦͷޙ"VUIʹग़ձ͏ w "VUIʹࠢΛചΔ w ຊۀҎ֎Ͱ$PHOJUP͏ػձ͕ʂ ?P?
$PHOJUP શʹཧղͨ͠
IUUQTUPHFUUFSDPNMJ
ͬͱৄ͘͠ͳΓ͍ͨʂ
ࠓͷ w 8FCΞϓϦ։ൃͷίϯςΩετߴΊ w "DUJWF%JSFDUPSZͷ͠·ͤΜ w $PHOJUPͷػೳΛཧ w "NQMJGZͱҰॹʹ͏ͱྑ͘ͳΕͦ͏ w
ྑ͘ͳΔͨΊͷπʔϧհ w ࣌ؒ͋Ε5JQTͱ͔
$PHOJUPͷػೳ w "84͕ఏڙ͢ΔೝূೝՄαʔϏε w $PHOJUP'FEFSBUFE*EFOUJUZʢ*%ϓʔϧʣ w *E1ʢ*EFOUJUZ1SPWJEFSʣʹରͯ͠454Λ͍ग़͢ w *E1'BDFCPPL (PPHMF
$PHOJUP6TFS1PPMTͳͲ w $PHOJUP6TFS1PPMTʢϢʔβʔϓʔϧʣ w "84͕ఏڙ͢Δ*E1ɺϢʔβʔొɾೝূɾཧ w ֎෦*E1ͱಉྻػೳʹҐஔ͢Δ w $PHOJUP4ZOD w σʔλͷσόΠεؒಉظ
https://docs.aws.amazon.com/ja_jp/cognito/latest/ developerguide/cognito-scenarios.html
ೝূํࣜ w 431ʢ4FDVSF3FNPUF1BTTXPSEʣ w ΫϥΠΞϯτͱ$PHOJUP͕௨৴͢Δ w ωοτϫʔΫܦ༝Ͱύεϫʔυ͕ૹ৴͞Εͳ ͍
ΞϓϦΫϥΠΞϯτઃఆ w ΫϥΠΞϯτೝূͷ߹ʜ ˠγʔΫϨοτෆཁͳͷͰੜͪ͠ΌͩΊ
0"VUI w 1,$&ʢ1SPPG,FZGPS$PEF&YDIBOHFCZ0"VUI1VCMJD$MJFOUTʣ ʹະର ԠͳͷͰϞόΠϧΞϓϦೝূͩͱݫ͍͠ w *NQMJDJUHSBOUઈରΘͳ͍ʢ੬ऑʣ w 431Ͱ֤छτʔΫϯ͕औಘͰ͖ΔͷͰ͋͑ͯ0"VUI ͏ඞཁͳͦ͞͏
ͦͷଞͷϢʔεέʔε w αʔόʔϕʔεͰೝূ͍ͨ͠ w "%.*/@/0@431@"65) w ΧελϜೝূ͍͍ͨʢ-BNCEBʣ w $6450.@"65)@'-08@0/-: w
ϢʔβʔҠߦ͍ͨ͠ w 64&3@1"44803%@"65)
݁ہͲΕ͍͍͑ͷʁ w 8FCϞόΠϧΞϓϦͰαʔόʔϨε͍ͨ͠ w 431ͰΫϥΠΞϯτೝূҰ w ౷తͳαʔόʔ͋Γͷ8FCγεςϜ w ϩάΠϯΤϯυϙΠϯτ࣮ͯ͠αʔόʔϕʔεೝূ w
MPHJOϢʔβʔ໊ͱύεϫʔυ͛Δ w αʔόʔܦ༝Ͱ"ENJO*OJUJBUF"VUI"1*Λୟ͍ͯೝূͯ͠ ηογϣϯΛཱ֬͢ΔΑ͏ͳύλʔϯͬͪ͜ w $PHOJUPͷྑ͕ࣦ͞ΘΕΔͷͰײ͕एׯ
"NQMJGZ
"NQMJGZ w $PHOJUPͷ+BWB4DSJQU4%,Λѻ͏ͱ ΞϓϦଆͷ࣮͕एׯ໘ w 6*ࣗͰ࡞Βͳ͖Ό͍͚ͳ͍ w "NQMJGZͷϨʔϧʹΔ͜ͱͰඇৗʹ؆୯ʹ ೝূը໘ΛߏஙͰ͖Δ w
5ZQF4DSJQUରԠࡁ w ྑ͘ͳΕͦ͏ͳ༧ײ
"NQMJGZͬͯԿ͚ͩͬ w 8FCʢ41"ʣϞόΠϧΞϓϦΛߴʹߏங͢ΔͨΊͷπʔϧ܈ w "NQMJGZKT.PCJMF༻4%,ɹˡࠓճγϯϓϧʹ͚ͩ͜͜͏ w ΫϥΠΞϯτΈࠐΈ༻ϥΠϒϥϦ w "NQMJGZ$-* w
ίϚϯυϥΠϯܦ༝Ͱ"84ͷ֤छαʔϏεͷઃఆ͕Ͱ͖Δ w $MPVE'PSNBUJPOΛར༻͍ͯ͠Δ w "NQMJGZ$POTPMF w (JUͷมߋΛτϦΨʔͱͨ͠੩తαΠτͷരެ։αʔϏε w /FUMJGZͷ"84൛ɺ(JU-BCରԠͳͲɺ͝ͱͷදࣔνΣοΫ w ೝূ͚ͩͰͳͯ͘4"QQ4ZODͳͲɺαʔόʔϨεͰҰ௨Γಈ͘ΞϓϦΛ࡞ ΔͨΊͷڥͰɺ(PPHMFͷ'JSFCBTFΛҙ͍ࣝͯ͠Δɻ
BNB[PODPHOJUPJEFOUJUZKT w $PHOJUPͷ+BWB4DSJQU4%,"NQMJGZKTͷ ϦϙδτϦԼʹҠಈͨ͠ w "84ʮΫϥΠΞϯταΠυ"NQMJGZͬͯͶʯ
"NQMJGZ ೝূΛΔ w IUUQTBXTBNQMJGZHJUIVCJPEPDT KTBVUIFOUJDBUJPO͕ࢀߟʹͳΔ w ೝূʹؔ͢Δใ͕ඇৗʹॆ࣮͍ͯ͠Δ w "NQMJGZ"VUI͕͔Εྑͦ͞͏
"NQMJGZ $PHOJUPͷ͍͍ͱ͜Ζ w 3FBDU 7VF "OHVMBSͰ͑Δ6*͖ೝূϥΠϒϥ Ϧ͕ఏڙ͞Ε͍ͯΔ w ೝূ࣌ʹඞཁͳը໘͕Ұ௨Γཏ͞Ε࣮ͯ͞Ε͍ͯΔ w
4JHO*O $POpSN4JHO*O 4JHO6Q $POpSN4JHO6Q 'PSHPU1BTTXPSE w ͍ͭ͜ΛΈࠐΊҰॠͰ࣮͕ऴΘΔ w BNQMJGZBVUIFOUJDBUPSλάΛஔ͚ͩ͘ w $PHOJUPͬͨϓϩτλΠϓ։ൃͱ͔ϝονϟૣ͍ͱࢥ͏
None
ݸਓతʹخ͍͠ͱࢥͬͨϙΠϯτʢ7VFKTʣ w &WFOU#VTʹରԠ͍ͯ͠ΔͷͰը໘ભҠͷ੍ ޚ͕ඇৗʹָ w ϢʔβʔొˠݕূίʔυೖྗͳͲͷը໘ભ Ҡͱ41"ͷϧʔςΟϯάܨ͗ࠐΈ͕͍͍ײ͡ ʹ੍ޚͰ͖Δ w ΧελϜσβΠϯʹରԠ͍ͯ͠Δ
w ͔ͳΓυΩϡϝϯτஸೡ
"NQMJGZܦ༝ͰऔಘͰ͖ΔτʔΫϯ w "NQMJGZͰೝূΛ͢ΔͱෳͷτʔΫϯΛऔಘͰ͖Δ w ೝূޙMPDBM4UPSBHFʹࣗಈͰ֨ೲ͞ΕΔʢʂʣ w JE5PLFOʢೝূτʔΫϯʣ w ࣗલͷ"1*αʔόʔΛೝূͨ͠ΓɺΧελϜΦʔιϥΠβʔ͏߹ w
BDDFTT5PLFOʢೝՄτʔΫϯʣ w *EFOUJUZ1PPMTͷΞΫηεͯ͠454Λ͍ग़ͨ͢Ί w SFGSFTI5PLFO w τʔΫϯߋ৽༻ʢBDDFTTʣ
https://docs.aws.amazon.com/ja_jp/cognito/latest/ developerguide/cognito-scenarios.html
None
τʔΫϯ+85ܗࣜ w FZ+Ͱ࢝·ΔτʔΫϯ+40/8FC5PLFO w +40/Λ#BTFΤϯίʔυͯ͠࿈݁ͨ͠ͷ w IFBEFSQBZMPBETJHOBUVSF w QBZMPBE෦ʹϢʔβʔใ͕֨ೲ͞Ε͍ͯΔ w
ॺ໊͕͋ΔͷͰվ͟Μͷ֬ೝ͕Ͱ͖Δ w IUUQTKXUJPʹషΓ͚Δͱத͕ݟ͑Δ w FZ+Λݟ͚ͭͨΒͥͻ͍ͯΈ·͠ΐ͏ w SFGSFTI5PLFO҉߸Խ͞Εͯͯதݟ͑ͳ͔ͬͨ
τʔΫϯͷܗࣜ+85 w FZ+Ͱ࢝·ΔτʔΫϯσίʔυͰ͖Δ w KXUJPͳͲͰ TVC͕DPHOJUPͷ66*%
ϩάΠϯঢ়ଶͷఆ w ΞϓϦଆͰϩάΠϯͯ͠Δ͔ఆ͍ͨ͠߹ w ϩάΠϯத༗ޮͳτʔΫϯΛอ༗͍ͯ͠Δ w ΫϥΠΞϯτ͔͠Γ͑ͳ͍ w "VUIDVSSFOU4FTTJPO Ͱఆ͢Δ
ࣗલαʔόʔͷೝূʹ͏ $PHOJUP͔Βൃߦ ͞Ε͍ͯΔެ։伴Ͱ+85 ͷॺ໊Λݕূ ֨ೲॴཁݕ౼ ݱঢ়MPDBM4UPSBHFةͳ͍ͷͰ IUUQ0OMZͳTFTTJPO͕ϕλʔ
+40/8FC,FZ w IUUQTDPHOJUPJEQBQOPSUIFBTUBNB[POBXTDPNBQ OPSUIFBTU@999999999XFMMLOPXOKXLTKTPO͔Β+85Λݕ ূ͢ΔͨΊͷެ։ݤ͕औಘͰ͖Δʢ999996TFS1PPM*Eʣ w +85ͷIFBEFSͷLJEͱରԠ͠ ͯΔ伴Λ͏
$PHOJUP7JFXFS w ݕূਐ·ͳ͍ˠ֬ೝπʔϧ࡞ͬͨ w Γͱ͔τʔΫϯͷதΛ֬ೝ͢Δͷ໘ w ΫϥΠΞϯτଆ͕ͳ͍ͱಈ͖͔ΒΜ w ઃఆ͕ؒҧͬͯΔͷ͔࣮͕ؒҧͬͯΔͷ͔ w
ϢʔβʔμογϡϘʔυͱ"EN*OJUJBUF"VUIͰ࡞ͬͨ ϢʔβʔΛೝূࡁΈʹ͢ΔػೳΛ͚͍ͭͨ w IUUQTHJUIVCDPNDPSPDODPHOJUPWJFXFS w ˞ಈ͔ͨ͢Ίʹ*EFOUJUZ1PPMͷ࡞ඞཁ
None
None
%&.0 ʢ࣌ؒͳ͚Ε࠷ޙͰʣ
"NQMJGZͰҙ͍ͨ͠ͱ͜Ζ w τʔΫϯͷ༗ޮظݶΛࢦఆͰ͖ͳ͍ w τʔΫϯͷอଘઌ͕MPDBM4UPSBHF w τʔΫϯͷߋ৽Λ੍ޚͰ͖ͳ͍ʢࣗಈߋ৽ʣ
τʔΫϯͷ༗ޮظݶΛࢦఆͰ͖ͳ͍ w JE5PLFONJO w BDDFTT5PLFONJO w SFGSFTI5PLFOEBZT w τʔΫϯ͕࿙Εͨ࣌Λߟྀͯ͠ՄೳͳݶΓ͍ ࣌ؒʹઃఆ͍ͨ͠
w ͦͦJE BDDFTT5PLFO࿙ΕΔલఏͰ ઃܭ͢Δඞཁ͕͋Δ
τʔΫϯͷอଘઌ͕MPDBM4UPSBHF w BDDFTT5PLFO·ͩ͠SFGSFTI5PLFOͷΑ͏ͳੜଘظ͕ؒ ͍τʔΫϯΛϒϥβʹอଘͯ͠͠·͍ͬͯΔ w 944ͰͿͬ͜ൈ͔ΕΔͷͰɺ֎෦+4ಡΉ࣌ҙɻಛʹࠂͱ͔ɻ w IUUQ0OMZDPPLJFະαϙʔτ w IUUQTHJUIVCDPNBXTBNQMJGZBNQMJGZKT
JTTVFT w ϞόΠϧͱҟͳΓɺ8FCηΩϡΞʹอଘͰ͖Δॴ͕ͳ͍ w ϒϥβʹอଘͤͣJONFNPSZͰΓ͍ͨ w $PHOJUPͱηογϣϯషΕΔػೳ͕͜ͳ͍ͱͦ͠͏
τʔΫϯͷߋ৽Λ੍ޚͰ͖ͳ͍ w τʔΫϯͷ༗ޮظݶ͕ΕͨޙͷॳճΞΫηεͰࣗಈͰ৽͍͠ τʔΫϯʹߋ৽͞ΕΔ w خ͍͠໘ɾɾɾ w ΫϥΠΞϯτͰτʔΫϯͷ༗ޮظݶ0,ˠϦΫΤετ࣌ࠩͰ αʔόʔଆݕূ࣌ʹ༗ޮظݶ/(ͷ߹͕ൃੜ͢Δ w
ΫϥΠΞϯτଆͰૣΊʹτʔΫϯΛߋ৽͓͖͍ͯͨ͠PSαʔ όʔଆͰ༗ޮظݶͷΏͱΓʢMFFXBZʣΛͨͤΔඞཁ͕ͰΔ w αʔόʔଆʹΏͱΓΛͨͤΔͷਪΒ͍͠ w ʢͲ͔͜ͷJTTVFͰٞ͞Ε͚ͯͨͲݟ͔ͭΒͳ͍ʣ
ॅΈ͚େࣄ w "84ͰαʔόʔϨε ˠ$PHOJUP "NQMJGZ w ($1ͰαʔόʔϨε ˠ'JSFCBTF w αʔόʔ͕͋ΔηΩϡϦςΟཁ݅ݫ͍͠
ˠ"VUI
·ͱΊ w 8FCΞϓϦ։ൃͰͷೝূͷΛͨ͠ w "NQMJGZ͏ͱ$PHOJUPͱྑ͘ͳΕ·͢ w +85ͬͨೝূͷΈΛ͓͑ͯ͘͜ͱ w ηΩϡϦςΟपΓͷཁ݅ҙʢಛʹ8FCʣ w
"84ͷαʔϏεʹݻࣥͤͣॊೈͳબΛ w ࠓޙͷΞοϓσʔτͰԽ͚ͦ͏