Slide 1

Slide 1 text

"84ࣄۀຊ෦ίϯαϧςΟϯά෦๺໺༎Ұ 41"ͱ8FCΞϓϦέʔγϣϯͰ $PHOJUPͷ࢖͍ํ͸Ͳ͏มΘΔͷ͔ʁ

Slide 2

Slide 2 text

ࣗݾ঺հ • ๺໺༎Ұʢ,*5"/0:VJDIJʣ • Ϋϥεϝιουגࣜձࣾ • "84ࣄۀຊ෦ίϯαϧςΟϯά෦ • "1/"--"84$FSUJGJDBUJPOT&OHJOFFST • ޷͖ͳ"84αʔϏε • "84$-* • $PHOJUP

Slide 3

Slide 3 text

CognitoͬͯͲ͏͍͏ ΠϝʔδͰ͔͢ʁ🤔

Slide 4

Slide 4 text

$PHOJUPͰΑ͘ฉ͘࿩ w Կ͔ೝূʹ࢖͏αʔϏε w ೝূʹ࢖͏ͷ͸Θ͔Δ͚Ͳɺ࣮ࡍͲ͏΍ͬͯࣗ෼ୡͷ ΞϓϦέʔγϣϯʹ૊ΈࠐΜͩΒྑ͍ͷ͔Θ͔Βͳ͍ w (PPHMFϩάΠϯͱ͔΋Ͱ͖ΔΒ͍͚͠Ͳɺ 
 Ͳ͏΍ͬͯ࢖ͬͨΒ͍͍ͷ͔Θ͔Βͳ͍

Slide 5

Slide 5 text

ࠓճͷ໨త CognitoΛ WebαʔϏεͷೝূͱͯ͠࢖͏ʹ͸ Ͳ͏͍͏ߏ੒͕ඞཁ͔ཧղ͢Δ

Slide 6

Slide 6 text

ຊ೔͓࿩͢Δ͜ͱ w 8FCΞϓϦέʔγϣϯͰ$PHOJUPΛ࢖༻͢Δํ๏ w 41"Ͱ$PHOJUPར༻࣌ͷೝূͷྲྀΕ w ैདྷܕ8FCαΠτͰ$PHOJUPར༻࣌ͷೝূͷྲྀΕ ʲ࿩͞ͳ͍͜ͱʳ w $PHOJUPΛ࢖͏ͨΊͷ۩ମతͳઃఆ஋

Slide 7

Slide 7 text

$PHOJUPͷར༻ํ๏ w େ͖͘Θ͚ͯ̎௨Γͷ࢖͍ํ͕͋Γ·͢ w 41"ʢ4JOHMF1BHF"QQMJDBUJPOʣʴόοΫΤϯυ"1* w ैདྷܕ8FCαΠτ

Slide 8

Slide 8 text

41"ͱ͸ w ୯ҰͷϖʔδͰ8FCΞϓϦέʔγϣϯΛ 
 ߏ੒͢ΔγεςϜ w ௨ৗKBWBTDSJQUʢ3FBDU 7VFʣΛར༻ͯ͠ಈతʹ 
 දࣔɺϖʔδભҠΛ੍ޚ͢ΔɻϩάΠϯϢʔβʔͷ 
 ݸผσʔλ͸όοΫΤϯυ"1*͔Βಈతʹऔಘ͢Δɻ

Slide 9

Slide 9 text

41"ͷ"84ߏ੒ྫ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB 41"༻ͷ ੩తϖʔδऔಘ ೝূτʔΫϯ όοΫΤϯυ"1*΁ ಈతΞΫηε ʢ*".ೝՄʣ $PHOJUP *%ϓʔϧ "84Ұ࣌ ΫϨσϯγϟϧΩʔऔಘ

Slide 10

Slide 10 text

41"ͷ$PHOJUPͰͷೝূσϞ

Slide 11

Slide 11 text

41"ͷೝূͷྲྀΕᶃ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB $PHOJUP *%ϓʔϧ 41"༻ͷ ੩తϖʔδऔಘ ϩάΠϯը໘ͷදࣔ

Slide 12

Slide 12 text

41"ͷೝূͷྲྀΕᶄ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB $PHOJUP *%ϓʔϧ KBWBTDSJQUͰಈతʹ Ϣʔβʔ*%ύεϫʔυʹ ج͍ͮͨೝূϑϩʔͷ࣮ߦ ֤छτʔΫϯΛऔಘͯ͠อଘ

Slide 13

Slide 13 text

41"ͷೝূͷྲྀΕᶅ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB $PHOJUP *%ϓʔϧ KBWBTDSJQUͰಈతʹ *%τʔΫϯ͔Β"84Ұ࣌ ΫϨσϯγϟϧΩʔͷऔಘ

Slide 14

Slide 14 text

41"ͷೝূͷྲྀΕᶆ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB $PHOJUP *%ϓʔϧ KBWBTDSJQUͰಈతʹ "84Ұ࣌ΫϨσϯγϟϧΩʔ͔Β 4JH7ॺ໊Λ࡞੒ όοΫΤϯυ"1*΁ϦΫΤετ

Slide 15

Slide 15 text

41"ͷ$PHOJUPͷ)PTUFE6*ͰͷೝূσϞ

Slide 16

Slide 16 text

RVJ w 0"VUIΛ࢖ͬͨαʔυύʔςΟΞϓϦʢ(PPHMF 'BDFCPPL౳ʣͰϩάΠϯͰ͖ΔΑ͏ʹͳΔ ͍ΘΏΔ(PPHMFͰϩάΠϯ͕ ࢖͑ΔΑ͏ʹͳΔ )PTUFE6*ͷ(PPHMFϩάΠϯϘλϯΛ ΫϦοΫͨ࣌͠ͱಉ༷ͷಈ࡞Λ͢Δ )PTUFE6*Λར༻͢Δͱ͖ͱಉ༷ͷઃఆ͕ඞཁ

Slide 17

Slide 17 text

41"ͷ)PTUFE6*ͷೝূͷྲྀΕᶃ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB $PHOJUP *%ϓʔϧ 41"༻ͷ ੩తϖʔδऔಘ ϩάΠϯը໘ϦμΠϨΫτ Ϙλϯͷදࣔ

Slide 18

Slide 18 text

41"ͷ)PTUFE6*ͷೝূͷྲྀΕᶄ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ ʢ)PTUFE6*ʣ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB $PHOJUP *%ϓʔϧ 0"VUIೝূϑϩʔͷ։࢝ )PTUFE6*΁ϦμΠϨΫτ Ϣʔβʔ*%ύεϫʔυΑΔϩάΠϯޙ ೝՄίʔυͱ͋Θͤͯݩͷը໘΁ϦμΠϨΫτ

Slide 19

Slide 19 text

41"ͷ)PTUFE6*ͷೝূͷྲྀΕᶅ $MPVE'SPOU 4 "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB $PHOJUP *%ϓʔϧ KBWBTDSJQUͰಈతʹ ϦμΠϨΫτʹΑΓड͚औͬͨೝՄίʔυΛݩʹ ֤छτʔΫϯΛ$PHOJUP͔Βऔಘͯ͠อଘ $PHOJUP Ϣʔβʔϓʔϧ

Slide 20

Slide 20 text

41"ͷ)PTUFE6*ͷೝূͷྲྀΕᶆ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB $PHOJUP *%ϓʔϧ KBWBTDSJQUͰಈతʹ *%τʔΫϯ͔Β"84Ұ࣌ ΫϨσϯγϟϧΩʔͷऔಘ

Slide 21

Slide 21 text

41"ͷ)PTUFE6*ͷೝূͷྲྀΕᶇ $MPVE'SPOU 4 $PHOJUP Ϣʔβʔϓʔϧ "1*(BUFXBZ BNQMJGZKT 64&3 -BNCEB $PHOJUP *%ϓʔϧ KBWBTDSJQUͰಈతʹ "84Ұ࣌ΫϨσϯγϟϧΩʔ͔Β 4JH7ॺ໊Λ࡞੒ όοΫΤϯυ"1*΁ϦΫΤετ

Slide 22

Slide 22 text

41"Ͱ$PHOJUPͷೝূ·ͱΊ w BNQMJGZKTͰ6*࡞Δɺ·ͨ͸)PTUFE6*Λར༻͢Δ w (PPHMFϩάΠϯ౳Λ͍ͨ͠৔߹͸ɺ 
 )PTUFE6*Λར༻͢ΔͨΊͷઃఆ͕ඞਢ w ͦΕͧΕೝূϑϩʔ͸ҟͳΔ͕BNQMJGZKTΛ࢖͑͹ 
 ͦͷೝূϑϩʔΛ͍͍ײ͡ʹղܾͯ͘͠ΕΔ

Slide 23

Slide 23 text

ʲ༨ஊᶃʳ)PTUFE6*Λར༻ͨ͠ೝূϑϩʔͷৄࡉ w IUUQTEFWDMBTTNFUIPEKQBSUJDMFTMFBSOBVUIFOUJDBUJPOVTJOH DPHOJUPTIPTUFEVJXJUIBNQMJGZ ͪ͜Βͷϒϩά ղઆ͍ͯ͠·͢

Slide 24

Slide 24 text

ैདྷܕ8FCαΠτͱ͸ w ΞΫηε͢ΔͱαʔόʔଆͰಈతʹ8FCαΠτͷද ࣔ)5.-Λੜ੒͠ɺϒϥ΢βʹϨεϙϯε͢Δैདྷܕ ͷ8FCαΠτɻ w ௨ৗ8FCϑϨʔϜϫʔΫʢ3VCZPO3BJMT %KBOHP ʜFUDʣΛ༻͍ͯ։ൃ͢Δ

Slide 25

Slide 25 text

Public subnet ैདྷܕ8FCαΠτͷ"84ߏ੒ྫ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ηογϣϯͰ ϢʔβʔΛࣝผ ೝূτʔΫϯ ηογϣϯ%#

Slide 26

Slide 26 text

ैདྷܕ8FCαΠτͷ$PHOJUPͰͷೝূσϞ

Slide 27

Slide 27 text

Public subnet ैདྷܕ8FCαΠτͷೝূͷྲྀΕᶃ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ αʔόʔଆͰϩάΠϯը໘ͷੜ੒ ϩάΠϯը໘ͷදࣔ

Slide 28

Slide 28 text

Public subnet ैདྷܕ8FCαΠτͷೝূͷྲྀΕᶄ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ Ϣʔβʔ*%ύεϫʔυͷೖྗ 'PSNͰαʔόʔ΁1PTU

Slide 29

Slide 29 text

Public subnet ैདྷܕ8FCαΠτͷೝূͷྲྀΕᶅ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ Ϣʔβʔ*%ύεϫʔυʹ ج͍ͮͨೝূϑϩʔͷ࣮ߦ ֤छτʔΫϯΛऔಘ

Slide 30

Slide 30 text

Public subnet ैདྷܕ8FCαΠτͷೝূͷྲྀΕᶆ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ औಘ֤ͨ͠छτʔΫϯΛ ηογϣϯ৘ใͱඥ෇͚ͯ ηογϣϯ%#΁อଘ

Slide 31

Slide 31 text

Public subnet ैདྷܕ8FCαΠτͷೝূͷྲྀΕᶇ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ϩάΠϯޙը໘ͷදࣔ ηογϣϯͰϢʔβʔࣝผ

Slide 32

Slide 32 text

Public subnet ʲ࠶ܝʳैདྷܕ8FCαΠτͷೝূͷྲྀΕᶅ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ Ϣʔβʔ*%ύεϫʔυʹ ج͍ͮͨೝূϑϩʔͷ࣮ߦ ֤छτʔΫϯΛऔಘ 41"Ͱ͸BNQMJGZKT͕ೝূϑϩʔΛ ͏·͍͜ͱ࣮ߦͯ͘͠Ε·ͨ͠ɻ ैདྷܕ8FCαΠτͰ͸ೝূϑϩʔΛཧղ͠ɺ ೝূϑϩʔʹԊͬͯࣗ෼Ͱ࣮૷͢Δ ඞཁ͕͋Γ·͢ɻ

Slide 33

Slide 33 text

$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ϑΝϯΫγϣϯ͕τϦΨʔ͞Εɺࣗ෼ͰೝূϑϩʔΛࣗ༝ʹ ઃఆͰ͖Δೝূϑϩʔɻ

Slide 34

Slide 34 text

$PHOJUPͷೝূϑϩʔͱઃఆ w લड़ͷೝূϑϩʔΛ࢖͏৔߹͸ɺ$PHOJUPͷઃఆͰ ࢖༻ΛڐՄ͢Δඞཁ͕͋Δɻ

Slide 35

Slide 35 text

"%.*/@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ʜ ^ ʜ ^ ֤छτʔΫϯ

Slide 36

Slide 36 text

۩ମతͳ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 <<ϩάΠϯϢʔβʔ໊>> <> <> secret_hash.py

Slide 37

Slide 37 text

ʲ༨ஊᶄʳ"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

Slide 38

Slide 38 text

ैདྷܕ8FCαΠτͷ$PHOJUPͷ)PTUFE6*ͰͷೝূσϞ

Slide 39

Slide 39 text

Public subnet ैདྷܕ8FCαΠτͷ)PTUFE6*ͷೝূͷྲྀΕᶃ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ αʔόʔଆͰϩάΠϯը໘ͷੜ੒ ϩάΠϯը໘ϦμΠϨΫτϘλϯͷදࣔ

Slide 40

Slide 40 text

Public subnet ैདྷܕ8FCαΠτͷ)PTUFE6*ͷೝূͷྲྀΕᶄ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUPϢʔβʔϓʔϧ ʢ)PTUFE6*ʣ 0"VUIೝূϑϩʔͷ։࢝ )PTUFE6*΁ϦμΠϨΫτ Ϣʔβʔ*%ύεϫʔυΑΔϩάΠϯޙ ೝՄίʔυͱ͋Θͤͯ$BMMCBDL63-΁ϦμΠϨΫτ

Slide 41

Slide 41 text

Public subnet ैདྷܕ8FCαΠτͷ)PTUFE6*ͷೝূͷྲྀΕᶅ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ $BMMCBDL63-΁ͷϦμΠϨΫτʹΑΓ ೝՄίʔυΛαʔόʔ΁౉͢ DBMMCBDL

Slide 42

Slide 42 text

Public subnet ैདྷܕ8FCαΠτͷ)PTUFE6*ͷೝূͷྲྀΕᶆ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ೝՄίʔυΛݩʹ ֤छτʔΫϯΛऔಘ

Slide 43

Slide 43 text

Public subnet ैདྷܕ8FCαΠτͷ)PTUFE6*ͷೝূͷྲྀΕᶇ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ औಘ֤ͨ͠छτʔΫϯΛ ηογϣϯ৘ใͱඥ෇͚ͯ ηογϣϯ%#΁อଘ

Slide 44

Slide 44 text

Public subnet ैདྷܕ8FCαΠτͷ)PTUFE6*ͷೝূͷྲྀΕᶈ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ϩάΠϯޙը໘΁ϦμΠϨΫτͯ͠දࣔ ηογϣϯͰϢʔβʔࣝผ IFMMP

Slide 45

Slide 45 text

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ೝূϑϩʔʹԊͬͯࣗ෼Ͱ࣮૷͢Δ ඞཁ͕͋Γ·͢ɻ

Slide 46

Slide 46 text

$PHOJUPͷ0"VUIೝূϑϩʔ 0"VUIೝূϑϩʔ໊ આ໌ "VUIPSJ[BUJPODPEFHSBOU ʢೝՄίʔυͷڐՄʣ جຊతʹ࢖༻͕ਪ঑͞ΕΔϑϩʔɻ ैདྷܕ8FCαΠτͷΑ͏ʹαʔόʔΛ஥հͯ͠τʔΫϯΛऔಘ͢Δ৔߹͸ɺ ௨ৗΫϥΠΞϯτγʔΫϨοτΛઃఆͯ͠ར༻͢Δɻ 41"ͷΑ͏ʹϢʔβʔ͕τʔΫϯΛ௚઀औಘ͢Δ৔߹͸1,$&Λซ༻͢Δ͜ ͱ͕ਪ঑͞ΕΔɻ *NQMJDJUHSBOU ʢ҉໧తͳڐՄʣ "VUIPSJ[BUJPODPEFHSBOUͷ࢖༻͕ෆՄೳͳ৔߹બ୒͢Δɻ 
 1,$&Λซ༻ͨ͠"VUIPSJ[BUJPODPEFHSBOUͷ࢖༻͕ਪ঑͞ΕΔɻ $MJFOUDSFEFOUJBMHSBOU ʢΫϥΠΞϯτೝূ৘ใͷڐՄʣ ϚγϯؒͷτʔΫϯަ׵͢Δࡍʹ࢖༻͢Δೝূϑϩʔɻ 
 ࠓճͷΑ͏ͳΤϯυϢʔβʔ͕ೝূʹ࢖͏ϑϩʔͰ͸ͳ͍ɻ

Slide 47

Slide 47 text

$PHOJUPͷ0"VUIೝূϑϩʔͱઃఆ w લड़ͷ0"VUIೝূϑϩʔΛ࢖͏৔߹͸ɺ$PHOJUPͷ ઃఆͰ࢖༻ΛڐՄ͢Δඞཁ͕͋Δɻ ʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙʙ • ೝূίʔυ෇༩ 
 = Authorization code grant • ҉໧తͳ෇༩ 
 =Implicit grant

Slide 48

Slide 48 text

ैདྷܕ8FCαΠτͰ$PHOJUPͷೝূ·ͱΊ w ϩάΠϯ6*Λࣗ෼Ͱ࡞Δɺ·ͨ͸)PTUFE6*Λར༻ ͢Δ w (PPHMFϩάΠϯ౳Λ͍ͨ͠৔߹͸ɺ 
 )PTUFE6*Λར༻͢ΔͨΊͷઃఆ͕ඞਢ w $PHOJUPͷೝূϑϩʔΛཧղͯ͠ɺࣗ෼Ͱ࣮૷͢Δඞ ཁ͕͋ΓɺBNQMJGZKT͕࢖͑Δ41"ΑΓ೉қ౓͕ߴ ͍

Slide 49

Slide 49 text

Public subnet ʲ൪֎ʳ"-#$PHOJUPೝূͷ"84ߏ੒ྫ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ೝূ࿈ܞ ηογϣϯ%#

Slide 50

Slide 50 text

"-#$PHOJUPೝূͰͷೝূσϞ

Slide 51

Slide 51 text

Public subnet "-#$PHOJUPೝূͷೝূͷྲྀΕᶃ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ "-#΁ΞΫηε 0"VUIೝূϑϩʔͷ։࢝ )PTUFE6*΁ϦμΠϨΫτ

Slide 52

Slide 52 text

Public subnet "-#$PHOJUPೝূͷೝূͷྲྀΕᶄ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ Ϣʔβʔ*%ύεϫʔυΑΔϩάΠϯޙ ೝՄίʔυͱ͋Θͤͯ "-#ͷ$BMMCBDL63-΁ϦμΠϨΫτ

Slide 53

Slide 53 text

Public subnet "-#$PHOJUPೝূͷೝূͷྲྀΕᶅ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ $BMMCBDL63-΁ͷϦμΠϨΫτʹΑΓ ೝՄίʔυΛ"-#΁౉͢

Slide 54

Slide 54 text

Public subnet "-#$PHOJUPೝূͷೝূͷྲྀΕᶆ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ೝՄίʔυΛݩʹ֤छτʔΫϯΛऔಘ

Slide 55

Slide 55 text

Public subnet "-#$PHOJUPೝূͷೝূͷྲྀΕᶇ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ औಘ֤ͨ͠छτʔΫϯΛ ηογϣϯ৘ใͱඥ෇͚ͯอଘ "-#ͷηογϣϯ%# ͷ༷ͳ΋ͷ

Slide 56

Slide 56 text

Public subnet "-#$PHOJUPೝূͷೝূͷྲྀΕᶈ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ ΞΫηετʔΫϯɺϢʔβʔ৘ใʢTVCΫϨʔϜ౳ʣΛ )551ϔομʔʹ௥Ճͯ͠&$΁ΞΫηε "-#ͷηογϣϯ%# ͷ༷ͳ΋ͷ

Slide 57

Slide 57 text

Public subnet "-#$PHOJUPೝূͷೝূͷྲྀΕᶉ 64&3 VPC Private subnet Private subnet "VSPSB &MBTUJ$BDIF &$ "-# $PHOJUP Ϣʔβʔϓʔϧ αʔόʔ͕ը໘Λੜ੒ ϩάΠϯޙը໘Λදࣔ "-#ͷηογϣϯ%# ͷ༷ͳ΋ͷ

Slide 58

Slide 58 text

w "-#ͱ$PHOJUPͷઃఆ͓͚͑ͯ͞͠͹ɺ 
 "-#͕0"VUIೝূϑϩʔΛ͍͍ײ͡ʹ΍ͬͯ͘Ε·͢ "-#$PHOJUPೝূͷ0"VUIೝূϑϩʔ w IUUQTEFWDMBTTNFUIPEKQBSUJDMFTBMCDPHOJUPVTFSQPPM ઃఆͷ࢓ํ͸ ͪ͜ΒͷϒϩάΛ ͝ࢀর͍ͩ͘͞

Slide 59

Slide 59 text

"-#$PHOJUPೝূͰ&$ଆ΁౉͢৘ใ w IUUQTEFWDMBTTNFUIPEKQBSUJDMFTIUUQIFBEFSTBEEFECZBMC BOEDPHOJUPBSFFYQMBJOFE ͪ͜Βͷϒϩά ղઆ͍ͯ͠·͢ w Ϣʔβʔ৘ใ͸"-#͕)551ϔομʔ΁௥Ճͯ͠ 
 ౉͍ͯ͠·͢

Slide 60

Slide 60 text

·ͱΊ w $PHOJUPΛ8FCΞϓϦͷೝূͰ࢖͏ʹ͸ʜ w 41"ͷ৔߹ɺBNQMJGZKTΛར༻͢Δ w ैདྷܕ8FCαΠτͷ৔߹ɺೝূϑϩʔΛཧղࣗ͠෼Ͱ࣮૷ w (PPHMFϩάΠϯ౳࢖͍͍ͨ৔߹͸ɺ)PTUFE6*Λར༻