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
600
2
Share
Cognito User Poolsと仲良くなるための話 / cognito-user-pools
Cognitoと仲良くなるためにAmplifyはいいぞ!という話をしました。
Takahiro Tsuchiya
May 28, 2019
More Decks by Takahiro Tsuchiya
See All by Takahiro Tsuchiya
PicoRubyでLチカ
corocn
0
170
Kaigi on Rails 2024 - Rails APIモードのためのシンプルで効果的なCSRF対策 / kaigionrails-2024-csrf
corocn
13
7.9k
現場のエンジニアから見た採用担当との協働
corocn
7
3.2k
シリーズAをリファラル採用中心に走り抜ける / leaner-referral-engineer-2024
corocn
4
2.4k
捨てて加速するプロダクト開発 / sutete-speedup-product-development
corocn
4
780
リファラル採用にフルベットしてみた
corocn
4
4k
エンジニアとプロダクトマネージャーを兼任した1年間を振り返る / pdm-furikaeri
corocn
17
8.3k
育休のすゝめ #devsumi 2023
corocn
3
5.4k
GCPでRubyを動かしている話 / ruby on gcp
corocn
0
1k
Other Decks in Programming
See All in Programming
GitHubCopilotCLIをはじめよう.pdf
htkym
0
330
AlarmKitで明後日起きれるアラームアプリを作る
trickart
0
130
【26新卒研修資料】TDD実装演習
dip_tech
PRO
0
180
AIを導入する前にやるべきこと
negima
2
340
How We Practice Exploratory Testing in Iterative Development( #scrumniigata ) / 反復開発の中で、探索的テストをどう実施しているか
teyamagu
PRO
3
760
Building on Bluesky's AT Protocol with Ruby
mackuba
0
110
Kingdom of the Machine
yui_knk
2
1.5k
(Re)make Regexp in Ruby: Democratizing internals for the JIT
makenowjust
3
1k
tRPCの概要と少しだけパフォーマンス
misoton665
2
270
空間オーディオの活用
objectiveaudio
0
140
cloudnative conference 2026 flyle
azihsoyn
0
150
2026年のソフトウェア開発を考える(2026/05版) / Software Engineering Scrum Fest Niigata 2026 Edition
twada
PRO
22
12k
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
sira's awesome portfolio website redesign presentation
elsirapls
0
230
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
43k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
220
Mind Mapping
helmedeiros
PRO
1
190
The agentic SEO stack - context over prompts
schlessera
0
770
The browser strikes back
jonoalderson
0
1k
Optimizing for Happiness
mojombo
378
71k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
280
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.9k
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 ࠓޙͷΞοϓσʔτͰԽ͚ͦ͏