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
SPAとWebアプリケーションでCognitoの使い方はどう変わるのか? / How do w...
Search
Kitano Yuichi
July 29, 2022
Technology
7k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SPAとWebアプリケーションでCognitoの使い方はどう変わるのか? / How do we use cognito with SPA and web applications?
Kitano Yuichi
July 29, 2022
More Decks by Kitano Yuichi
See All by Kitano Yuichi
CognitoでWebアプリケーション(not SPA)に ログインさせたい時、何を作らなくてはならないのか? / What do I create when I want to log in to a web application with Amazon Cognito?
kitano_yuichi
1
3.8k
AWS Glueを使ってRDSからS3+Athena環境を作ってみよう / Let's create Athena from RDS using AWS Glue
kitano_yuichi
1
9k
オンプレとVPCをつなぐ環境のUpdate/re:Cap connecting on-premises and vpc
kitano_yuichi
0
1.6k
Other Decks in Technology
See All in Technology
Kiroで書いた 設計書 が AI レビューの 採点基準 になる
ezaki
0
110
中期計画、2回作ってみた ~業務委託と正社員、両方の視点から~
demaecan
1
750
Socrates × Looker 〜セマンティックレイヤーで進化するデータ分析エージェント〜
hanon52_
3
2.3k
2026TECHFRESH畢業分享會 - 原生還是跨平台? App 開發踩坑實錄
line_developers_tw
PRO
0
1k
ACE-Step-1.5で見る 音楽生成AIのしくみと“破綻だけ直す”Retake機能の開発【zennfes spring 2026 登壇資料】
personabb
1
460
やさしいA2A入門
minorun365
PRO
12
1.9k
MCP Appsを作ってみよう
iwamot
PRO
4
640
小さくはじめるSLI/SLO ~育てながら組織に定着させる実践知~ / Starting Small with SLI/SLOs: Building Adoption Through Continuous Growth
nari_ex
7
1.9k
AI駆動開発を通して感じた、 AI時代のデザイナーの役割変化
whisaiyo
3
2.1k
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.9k
人材育成分科会.pdf
_awache
4
250
社内 AI エージェント Synapse と セマンティックレイヤーの育て方
hiroakis
3
1.9k
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
580
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
480
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
200
Utilizing Notion as your number one productivity tool
mfonobong
4
320
Game over? The fight for quality and originality in the time of robots
wayneb77
1
200
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
30 Presentation Tips
portentint
PRO
1
320
The Pragmatic Product Professional
lauravandoore
37
7.3k
Exploring anti-patterns in Rails
aemeredith
3
410
Transcript
"84ࣄۀຊ෦ίϯαϧςΟϯά෦༎Ұ 41"ͱ8FCΞϓϦέʔγϣϯͰ $PHOJUPͷ͍ํͲ͏มΘΔͷ͔ʁ
ࣗݾհ • ༎Ұʢ,*5"/0:VJDIJʣ • Ϋϥεϝιουגࣜձࣾ • "84ࣄۀຊ෦ίϯαϧςΟϯά෦ • "1/"--"84$FSUJGJDBUJPOT&OHJOFFST
• ͖ͳ"84αʔϏε • "84$-* • $PHOJUP
CognitoͬͯͲ͏͍͏ ΠϝʔδͰ͔͢ʁ🤔
$PHOJUPͰΑ͘ฉ͘ w Կ͔ೝূʹ͏αʔϏε w ೝূʹ͏ͷΘ͔Δ͚Ͳɺ࣮ࡍͲ͏ͬͯࣗୡͷ ΞϓϦέʔγϣϯʹΈࠐΜͩΒྑ͍ͷ͔Θ͔Βͳ͍ w (PPHMFϩάΠϯͱ͔Ͱ͖ΔΒ͍͚͠Ͳɺ
Ͳ͏ͬͯͬͨΒ͍͍ͷ͔Θ͔Βͳ͍
ࠓճͷత CognitoΛ WebαʔϏεͷೝূͱͯ͠͏ʹ Ͳ͏͍͏ߏ͕ඞཁ͔ཧղ͢Δ
ຊ͓͢Δ͜ͱ w 8FCΞϓϦέʔγϣϯͰ$PHOJUPΛ༻͢Δํ๏ w 41"Ͱ$PHOJUPར༻࣌ͷೝূͷྲྀΕ w ैདྷܕ8FCαΠτͰ$PHOJUPར༻࣌ͷೝূͷྲྀΕ ʲ͞ͳ͍͜ͱʳ w
$PHOJUPΛ͏ͨΊͷ۩ମతͳઃఆ
$PHOJUPͷར༻ํ๏ w େ͖͘Θ͚ͯ̎௨Γͷ͍ํ͕͋Γ·͢ w 41"ʢ4JOHMF1BHF"QQMJDBUJPOʣʴόοΫΤϯυ"1* w ैདྷܕ8FCαΠτ
41"ͱ w ୯ҰͷϖʔδͰ8FCΞϓϦέʔγϣϯΛ ߏ͢ΔγεςϜ w ௨ৗKBWBTDSJQUʢ3FBDU 7VFʣΛར༻ͯ͠ಈతʹ
දࣔɺϖʔδભҠΛ੍ޚ͢ΔɻϩάΠϯϢʔβʔͷ ݸผσʔλόοΫΤϯυ"1*͔Βಈతʹऔಘ͢Δɻ
41"ͷ"84ߏྫ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB
41"༻ͷ ੩తϖʔδऔಘ ೝূτʔΫϯ όοΫΤϯυ"1* ಈతΞΫηε ʢ*".ೝՄʣ $PHOJUP *%ϓʔϧ "84Ұ࣌ ΫϨσϯγϟϧΩʔऔಘ
41"ͷ$PHOJUPͰͷೝূσϞ
41"ͷೝূͷྲྀΕᶃ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB
$PHOJUP *%ϓʔϧ 41"༻ͷ ੩తϖʔδऔಘ ϩάΠϯը໘ͷදࣔ
41"ͷೝূͷྲྀΕᶄ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB
$PHOJUP *%ϓʔϧ KBWBTDSJQUͰಈతʹ Ϣʔβʔ*%ύεϫʔυʹ ج͍ͮͨೝূϑϩʔͷ࣮ߦ ֤छτʔΫϯΛऔಘͯ͠อଘ
41"ͷೝূͷྲྀΕᶅ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB
$PHOJUP *%ϓʔϧ KBWBTDSJQUͰಈతʹ *%τʔΫϯ͔Β"84Ұ࣌ ΫϨσϯγϟϧΩʔͷऔಘ
41"ͷೝূͷྲྀΕᶆ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB
$PHOJUP *%ϓʔϧ KBWBTDSJQUͰಈతʹ "84Ұ࣌ΫϨσϯγϟϧΩʔ͔Β 4JH7ॺ໊Λ࡞ όοΫΤϯυ"1*ϦΫΤετ
41"ͷ$PHOJUPͷ)PTUFE6*ͰͷೝূσϞ
RVJ w 0"VUIΛͬͨαʔυύʔςΟΞϓϦʢ(PPHMF 'BDFCPPLʣͰϩάΠϯͰ͖ΔΑ͏ʹͳΔ ͍ΘΏΔ(PPHMFͰϩάΠϯ͕ ͑ΔΑ͏ʹͳΔ )PTUFE6*ͷ(PPHMFϩάΠϯϘλϯΛ ΫϦοΫͨ࣌͠ͱಉ༷ͷಈ࡞Λ͢Δ
)PTUFE6*Λར༻͢Δͱ͖ͱಉ༷ͷઃఆ͕ඞཁ
41"ͷ)PTUFE6*ͷೝূͷྲྀΕᶃ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB
$PHOJUP *%ϓʔϧ 41"༻ͷ ੩తϖʔδऔಘ ϩάΠϯը໘ϦμΠϨΫτ Ϙλϯͷදࣔ
41"ͷ)PTUFE6*ͷೝূͷྲྀΕᶄ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ ʢ)PTUFE6*ʣ "1*(BUFXBZ BNQMJGZKT 64&3
-BNCEB $PHOJUP *%ϓʔϧ 0"VUIೝূϑϩʔͷ։࢝ )PTUFE6*ϦμΠϨΫτ Ϣʔβʔ*%ύεϫʔυΑΔϩάΠϯޙ ೝՄίʔυͱ͋Θͤͯݩͷը໘ϦμΠϨΫτ
41"ͷ)PTUFE6*ͷೝূͷྲྀΕᶅ $MPVE'SPOU 4 "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB $PHOJUP *%ϓʔϧ
KBWBTDSJQUͰಈతʹ ϦμΠϨΫτʹΑΓड͚औͬͨೝՄίʔυΛݩʹ ֤छτʔΫϯΛ$PHOJUP͔Βऔಘͯ͠อଘ $PHOJUP Ϣʔβʔϓʔϧ
41"ͷ)PTUFE6*ͷೝূͷྲྀΕᶆ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB
$PHOJUP *%ϓʔϧ KBWBTDSJQUͰಈతʹ *%τʔΫϯ͔Β"84Ұ࣌ ΫϨσϯγϟϧΩʔͷऔಘ
41"ͷ)PTUFE6*ͷೝূͷྲྀΕᶇ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB
$PHOJUP *%ϓʔϧ KBWBTDSJQUͰಈతʹ "84Ұ࣌ΫϨσϯγϟϧΩʔ͔Β 4JH7ॺ໊Λ࡞ όοΫΤϯυ"1*ϦΫΤετ
41"Ͱ$PHOJUPͷೝূ·ͱΊ w BNQMJGZKTͰ6*࡞Δɺ·ͨ)PTUFE6*Λར༻͢Δ w (PPHMFϩάΠϯΛ͍ͨ͠߹ɺ )PTUFE6*Λར༻͢ΔͨΊͷઃఆ͕ඞਢ w ͦΕͧΕೝূϑϩʔҟͳΔ͕BNQMJGZKTΛ͑
ͦͷೝূϑϩʔΛ͍͍ײ͡ʹղܾͯ͘͠ΕΔ
ʲ༨ஊᶃʳ)PTUFE6*Λར༻ͨ͠ೝূϑϩʔͷৄࡉ w IUUQTEFWDMBTTNFUIPEKQBSUJDMFTMFBSOBVUIFOUJDBUJPOVTJOH DPHOJUPTIPTUFEVJXJUIBNQMJGZ ͪ͜Βͷϒϩά ղઆ͍ͯ͠·͢
ैདྷܕ8FCαΠτͱ w ΞΫηε͢ΔͱαʔόʔଆͰಈతʹ8FCαΠτͷද ࣔ)5.-Λੜ͠ɺϒϥβʹϨεϙϯε͢Δैདྷܕ ͷ8FCαΠτɻ w ௨ৗ8FCϑϨʔϜϫʔΫʢ3VCZPO3BJMT %KBOHP
ʜFUDʣΛ༻͍ͯ։ൃ͢Δ
Public subnet ैདྷܕ8FCαΠτͷ"84ߏྫ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ηογϣϯͰ ϢʔβʔΛࣝผ ೝূτʔΫϯ ηογϣϯ%#
ैདྷܕ8FCαΠτͷ$PHOJUPͰͷೝূσϞ
Public subnet ैདྷܕ8FCαΠτͷೝূͷྲྀΕᶃ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ αʔόʔଆͰϩάΠϯը໘ͷੜ ϩάΠϯը໘ͷදࣔ
Public subnet ैདྷܕ8FCαΠτͷೝূͷྲྀΕᶄ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ Ϣʔβʔ*%ύεϫʔυͷೖྗ 'PSNͰαʔόʔ1PTU
Public subnet ैདྷܕ8FCαΠτͷೝূͷྲྀΕᶅ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ Ϣʔβʔ*%ύεϫʔυʹ ج͍ͮͨೝূϑϩʔͷ࣮ߦ ֤छτʔΫϯΛऔಘ
Public subnet ैདྷܕ8FCαΠτͷೝূͷྲྀΕᶆ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ औಘ֤ͨ͠छτʔΫϯΛ ηογϣϯใͱඥ͚ͯ ηογϣϯ%#อଘ
Public subnet ैདྷܕ8FCαΠτͷೝূͷྲྀΕᶇ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ϩάΠϯޙը໘ͷදࣔ ηογϣϯͰϢʔβʔࣝผ
Public subnet ʲ࠶ܝʳैདྷܕ8FCαΠτͷೝূͷྲྀΕᶅ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ Ϣʔβʔ*%ύεϫʔυʹ ج͍ͮͨೝূϑϩʔͷ࣮ߦ ֤छτʔΫϯΛऔಘ 41"ͰBNQMJGZKT͕ೝূϑϩʔΛ ͏·͍͜ͱ࣮ߦͯ͘͠Ε·ͨ͠ɻ ैདྷܕ8FCαΠτͰೝূϑϩʔΛཧղ͠ɺ ೝূϑϩʔʹԊͬͯࣗͰ࣮͢Δ ඞཁ͕͋Γ·͢ɻ
$PHOJUPͷೝূϑϩʔൈਮ ೝূϑϩʔ໊ આ໌ "%.*/@64&3@1"44803%@"65) ʢچশɿ"%.*/@/0@431@"65)ʣ αʔόʔ͔Β࣮ߦ͢Δ͜ͱΛఆͨ͠ύεϫʔυΛૹͬͯೝূ͢Δೝূϑϩʔɻ ௨ৗΫϥΠΞϯτγʔΫϨοτΛ༻͢Δɻ 64&3@431@"65) ΫϥΠΞϯτʢ41"ʣ͔Β࣮ߦ͢Δ͜ͱΛఆͨ͠431ϓϩτίϧͰύεϫ
ʔυΛجʹͨ͠νϟϨϯδϨεϙϯεΛૹΓ͍͋ೝূ͢Δೝূϑϩʔɻ BNQMJGZKT͕σϑΥϧτͰ༻͢Δɻ 64&3@1"44803%@"65) ΫϥΠΞϯτʢ41"ʣ͔Β࣮ߦ͢Δ͜ͱΛఆͨ͠ύεϫʔυΛૹͬͯೝূ͢ Δೝূϑϩʔɻ ΫϥΠΞϯτʢ41"ʣ͔Βͷ࣮ߦ643@431@"65)ͷར༻͕ਪ͞ΕΔɻ $6450.@"65) ೝূ࣌ʹ-BNCEBϑΝϯΫγϣϯ͕τϦΨʔ͞ΕɺࣗͰೝূϑϩʔΛࣗ༝ʹ ઃఆͰ͖Δೝূϑϩʔɻ
$PHOJUPͷೝূϑϩʔͱઃఆ w લड़ͷೝূϑϩʔΛ͏߹ɺ$PHOJUPͷઃఆͰ ༻ΛڐՄ͢Δඞཁ͕͋Δɻ
"%.*/@64&3@1"44803%@"65)ϑϩʔ &$ $PHOJUP Ϣʔβʔϓʔϧ "ENJO*OJUJBUF"VUI TFDSFU@IBTI#BTF )."$@4)" $PHOJUP ϢʔβʔϓʔϧͷγʔΫϨοτΩʔ
ϩάΠϯϢʔβʔ໊ $PHOJUPϢʔβʔϓʔϧͷΫϥΠΞϯτ*% DPHOJUPBENJO*OJUJBUF"VUI \ "VUI'MPXb"%.*/@64&3@1"44803%@"65)` 6TFS1PPM*E$PHOJUPϢʔβʔϓʔϧͷϢʔβʔϓʔϧ*% $MJFOU*E$PHOJUPϢʔβʔϓʔϧͷΫϥΠΞϯτ*% "VUI1BSBNFUFST\ 64&3/".&ϩάΠϯϢʔβʔ໊ 1"44803%ύεϫʔυ 4&$3&5@)"4)TFDSFU@IBTI ^ ^ \ "VUIFOUJDBUJPO3FTVMU\ "DDFTT5PLFOʜ &YQJSFT*Oʜ 5PLFO5ZQFb#FBSFS` 3FGSFTI5PLFOʜ *E5PLFOʜ ^ ʜ ^ ֤छτʔΫϯ
۩ମతͳ4&$3&5@)"4)ͷܭࢉํ๏ʢQZUIPOʣ ʲҾ༻ʳ"NB[PO$PHOJUPͷʮΫϥΠΞϯτͷγʔΫϨοτͷϋογϡΛݕূͰ͖·ͤΜʯͱ͍͏ΤϥʔΛղܾ͢Δ IUUQTBXTBNB[PODPNKQQSFNJVNTVQQPSULOPXMFEHFDFOUFSDPHOJUPVOBCMFUPWFSJGZTFDSFUIBTI import sys import hmac, hashlib, base64
username = sys.argv[1] app_client_id = sys.argv[2] key = sys.argv[3] message = bytes(sys.argv[1]+sys.argv[2],'utf-8') key = bytes(sys.argv[3],'utf-8') secret_hash = base64.b64encode(hmac.new(key, message, digestmod=hashlib.sha256).digest()).decode() print("SECRET HASH:",secret_hash) python3 secret_hash.py <<ϩάΠϯϢʔβʔ໊>> <<CognitoϢʔβʔϓʔϧͷΫϥΠΞϯτ ID>> <<CognitoϢʔβʔϓʔϧͷΫϥΠΞϯτγʔΫϨοτ>> secret_hash.py
ʲ༨ஊᶄʳ"ENJO"1*ͱඇ"ENJO"1* w $PHOJUPͷ"1*ಛघ w "ENJO"1*ଞͷαʔϏεͱಉ༷*".3PMFͷΫϨσϯγϟϧͰ࣮ߦ w ྫɿ"ENJO*OJUJBUF"VUI "ENJO(FU6FTS w
ඇ"ENJO"1*$PHOJUPϢʔβʔͷΞΫηετʔΫϯͰ࣮ߦͯ͠ɺ ͦͷϢʔβʔͷΈૢ࡞Ͱ͖Δ w ৽نϢʔβʔΛ࡞͢Δ4JHO6Qɺ ೝূͯ͠τʔΫϯΛऔಘ͢Δ*OJUJBUF"VUIྫ֎ͰΞΫηετʔΫϯෆཁ w ྫɿ(FU6TFS
ैདྷܕ8FCαΠτͷ$PHOJUPͷ)PTUFE6*ͰͷೝূσϞ
Public subnet ैདྷܕ8FCαΠτͷ)PTUFE6*ͷೝূͷྲྀΕᶃ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ αʔόʔଆͰϩάΠϯը໘ͷੜ ϩάΠϯը໘ϦμΠϨΫτϘλϯͷදࣔ
Public subnet ैདྷܕ8FCαΠτͷ)PTUFE6*ͷೝূͷྲྀΕᶄ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUPϢʔβʔϓʔϧ ʢ)PTUFE6*ʣ 0"VUIೝূϑϩʔͷ։࢝ )PTUFE6*ϦμΠϨΫτ Ϣʔβʔ*%ύεϫʔυΑΔϩάΠϯޙ ೝՄίʔυͱ͋Θͤͯ$BMMCBDL63-ϦμΠϨΫτ
Public subnet ैདྷܕ8FCαΠτͷ)PTUFE6*ͷೝূͷྲྀΕᶅ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ $BMMCBDL63-ͷϦμΠϨΫτʹΑΓ ೝՄίʔυΛαʔόʔ͢ DBMMCBDL
Public subnet ैདྷܕ8FCαΠτͷ)PTUFE6*ͷೝূͷྲྀΕᶆ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ೝՄίʔυΛݩʹ ֤छτʔΫϯΛऔಘ
Public subnet ैདྷܕ8FCαΠτͷ)PTUFE6*ͷೝূͷྲྀΕᶇ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ औಘ֤ͨ͠छτʔΫϯΛ ηογϣϯใͱඥ͚ͯ ηογϣϯ%#อଘ
Public subnet ैདྷܕ8FCαΠτͷ)PTUFE6*ͷೝূͷྲྀΕᶈ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ϩάΠϯޙը໘ϦμΠϨΫτͯ͠දࣔ ηογϣϯͰϢʔβʔࣝผ IFMMP
Public subnet ʲ࠶ܝʳैདྷܕ8FCαΠτͷ)PTUFE6*ͷೝূͷྲྀΕᶄ 64&3 VPC Private subnet Private subnet
"VSPSB &MBTUJ$BDIF &$ "-# $PHOJUPϢʔβʔϓʔϧ ʢ)PTUFE6*ʣ 0"VUIೝূϑϩʔͷ։࢝ )PTUFE6*ϦμΠϨΫτ Ϣʔβʔ*%ύεϫʔυΑΔϩάΠϯޙ ೝՄίʔυͱ͋Θͤͯ$BMMCBDL63-ϦμΠϨΫτ 41"ͰBNQMJGZKT͕0"VUIೝূϑϩʔΛ ͍͍ײ͡ʹ࣮ߦͯ͘͠Ε·ͨ͠ɻ ैདྷܕ8FCαΠτͰ0"VUIೝূϑϩʔΛཧղ͠ɺ 0"VUIೝূϑϩʔʹԊͬͯࣗͰ࣮͢Δ ඞཁ͕͋Γ·͢ɻ
$PHOJUPͷ0"VUIೝূϑϩʔ 0"VUIೝূϑϩʔ໊ આ໌ "VUIPSJ[BUJPODPEFHSBOU ʢೝՄίʔυͷڐՄʣ جຊతʹ༻͕ਪ͞ΕΔϑϩʔɻ ैདྷܕ8FCαΠτͷΑ͏ʹαʔόʔΛհͯ͠τʔΫϯΛऔಘ͢Δ߹ɺ ௨ৗΫϥΠΞϯτγʔΫϨοτΛઃఆͯ͠ར༻͢Δɻ 41"ͷΑ͏ʹϢʔβʔ͕τʔΫϯΛऔಘ͢Δ߹1,$&Λซ༻͢Δ͜
ͱ͕ਪ͞ΕΔɻ *NQMJDJUHSBOU ʢ҉తͳڐՄʣ "VUIPSJ[BUJPODPEFHSBOUͷ༻͕ෆՄೳͳ߹બ͢Δɻ 1,$&Λซ༻ͨ͠"VUIPSJ[BUJPODPEFHSBOUͷ༻͕ਪ͞ΕΔɻ $MJFOUDSFEFOUJBMHSBOU ʢΫϥΠΞϯτೝূใͷڐՄʣ ϚγϯؒͷτʔΫϯަ͢Δࡍʹ༻͢Δೝূϑϩʔɻ ࠓճͷΑ͏ͳΤϯυϢʔβʔ͕ೝূʹ͏ϑϩʔͰͳ͍ɻ
$PHOJUPͷ0"VUIೝূϑϩʔͱઃఆ w લड़ͷ0"VUIೝূϑϩʔΛ͏߹ɺ$PHOJUPͷ ઃఆͰ༻ΛڐՄ͢Δඞཁ͕͋Δɻ ʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙ • ೝূίʔυ༩ =
Authorization code grant • ҉తͳ༩ =Implicit grant
ैདྷܕ8FCαΠτͰ$PHOJUPͷೝূ·ͱΊ w ϩάΠϯ6*ΛࣗͰ࡞Δɺ·ͨ)PTUFE6*Λར༻ ͢Δ w (PPHMFϩάΠϯΛ͍ͨ͠߹ɺ )PTUFE6*Λར༻͢ΔͨΊͷઃఆ͕ඞਢ w
$PHOJUPͷೝূϑϩʔΛཧղͯ͠ɺࣗͰ࣮͢Δඞ ཁ͕͋ΓɺBNQMJGZKT͕͑Δ41"ΑΓқ͕ߴ ͍
Public subnet ʲ൪֎ʳ"-# $PHOJUPೝূͷ"84ߏྫ 64&3 VPC Private subnet Private
subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ೝূ࿈ܞ ηογϣϯ%#
"-# $PHOJUPೝূͰͷೝূσϞ
Public subnet "-# $PHOJUPೝূͷೝূͷྲྀΕᶃ 64&3 VPC Private subnet Private
subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ "-#ΞΫηε 0"VUIೝূϑϩʔͷ։࢝ )PTUFE6*ϦμΠϨΫτ
Public subnet "-# $PHOJUPೝূͷೝূͷྲྀΕᶄ 64&3 VPC Private subnet Private
subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ Ϣʔβʔ*%ύεϫʔυΑΔϩάΠϯޙ ೝՄίʔυͱ͋Θͤͯ "-#ͷ$BMMCBDL63-ϦμΠϨΫτ
Public subnet "-# $PHOJUPೝূͷೝূͷྲྀΕᶅ 64&3 VPC Private subnet Private
subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ $BMMCBDL63-ͷϦμΠϨΫτʹΑΓ ೝՄίʔυΛ"-#͢
Public subnet "-# $PHOJUPೝূͷೝূͷྲྀΕᶆ 64&3 VPC Private subnet Private
subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ೝՄίʔυΛݩʹ֤छτʔΫϯΛऔಘ
Public subnet "-# $PHOJUPೝূͷೝূͷྲྀΕᶇ 64&3 VPC Private subnet Private
subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ औಘ֤ͨ͠छτʔΫϯΛ ηογϣϯใͱඥ͚ͯอଘ "-#ͷηογϣϯ%# ͷ༷ͳͷ
Public subnet "-# $PHOJUPೝূͷೝূͷྲྀΕᶈ 64&3 VPC Private subnet Private
subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ΞΫηετʔΫϯɺϢʔβʔใʢTVCΫϨʔϜʣΛ )551ϔομʔʹՃͯ͠&$ΞΫηε "-#ͷηογϣϯ%# ͷ༷ͳͷ
Public subnet "-# $PHOJUPೝূͷೝূͷྲྀΕᶉ 64&3 VPC Private subnet Private
subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ αʔόʔ͕ը໘Λੜ ϩάΠϯޙը໘Λදࣔ "-#ͷηογϣϯ%# ͷ༷ͳͷ
w "-#ͱ$PHOJUPͷઃఆ͓͚͑ͯ͞͠ɺ "-#͕0"VUIೝূϑϩʔΛ͍͍ײ͡ʹͬͯ͘Ε·͢ "-# $PHOJUPೝূͷ0"VUIೝূϑϩʔ w IUUQTEFWDMBTTNFUIPEKQBSUJDMFTBMCDPHOJUPVTFSQPPM ઃఆͷํ
ͪ͜ΒͷϒϩάΛ ͝ࢀর͍ͩ͘͞
"-# $PHOJUPೝূͰ&$ଆ͢ใ w IUUQTEFWDMBTTNFUIPEKQBSUJDMFTIUUQIFBEFSTBEEFECZBMC BOEDPHOJUPBSFFYQMBJOFE ͪ͜Βͷϒϩά ղઆ͍ͯ͠·͢ w Ϣʔβʔใ"-#͕)551ϔομʔՃͯ͠
͍ͯ͠·͢
·ͱΊ w $PHOJUPΛ8FCΞϓϦͷೝূͰ͏ʹʜ w 41"ͷ߹ɺBNQMJGZKTΛར༻͢Δ w ैདྷܕ8FCαΠτͷ߹ɺೝূϑϩʔΛཧղࣗ͠Ͱ࣮ w (PPHMFϩάΠϯ͍͍ͨ߹ɺ)PTUFE6*Λར༻