email, password, ...๋ฅผ ์ ๋ฌ ๋ฐ ์๋ฒ์์ ์ํ๋ ์ถ๊ฐ ์ ๋ณด๋ฅผ ์ ๋ฌํ๊ฒ ๋๋ค.
const ์ดํํ = {
email : 'spdhsrnvl123@naver.com',
password : "dlxogud12",
contury : 'korea',
job : 'developer',
}
๋ก๊ทธ์ธ ํ ๋ ์๋ฒ๋ ํ ํฐ์ ๊ฐ์ง๊ณ ์ ์ ๋ฅผ ๊ธฐ์ตํ๋ค.
โ ์๋ฒ๋ ์ ์ ์๊ฒ ํ ํฐ์ ์ฃผ๋ฉด์ ์ ์ ์ผ ์ด ํ ํฐ์ ๊ฐ์ง๊ณ ์์ผ๋ก ์์ฒญ์ ํด๋ผ
ํ ํฐ
- ์๋ฒ๊ฐ, ๊ฐ๊ฐ์ ํด๋ผ์ด์ธํธ๋ฅผ ๋๊ตฐ์ง ์ ํํ ๊ตฌ๋ณํ ์ ์๋๋ก, ์ ๋ํฌํ ์ ๋ณด๋ฅผ ๋ด์ ์ํธํ ๋ฐ์ดํฐ.
- ์ ์ ๊ตฌ๋ณ์ด ๊ฐ๋ฅํด์ผ, ์ ์ ์ ๊ถํ์ ๋ง๋ ์ ํํ ๊ธฐ๋ฅ์ ์๋ตํ ์ ์๋ค.
( ์ฌ์ฉ์ ๊ตฌ๋ถ ๋ฐ ์ ๋ณด ์ ์ถ๋ฐฉ์ง )
eamil, password
๋ฅผ ์
๋ ฅํ์ฌ ์๋ฒ์๊ฒ ๋ณด๋ด๋ฉด ํ์๊ฐ์
ํ์ ๋์ ๋ณด๋ธ ์ด๋ฉ์ผ์ธ 'spdhsrnvl123@naver.com'
๊ณผ ๋น๋ฐ๋ฒํธ์ธ'reset123'
๋ฐ์ดํฐ๋ฅผ ๋ ์ค๋ฅด๊ฒ ๋๋ค.
header์ ํ ํฐ์ ๋ฃ๊ณ ์์ฒญ์ ํ๋ค.
์์) ์ ํ๋ธ์์ ๋ก๊ทธ์ธ ํ ์ํ์์ ๊ฒ์์ฐฝ์ '์กฐ์ฝ๋ฉ'์ด๋ผ ๊ฒ์ํ๋ฉด ํ ํฐ์ ํฌํจํด์ ๋ณด๋ด์ค๋ค.
ํด๋น ํ ํฐ์ ์์ฒญํค๋ ์ฟ ํค์์ ์์ผ๋ฉฐ ์์ ๋ณผ ์ ์๋ ์ํธํ๋ ๋ฌธ์์ด๋ก ์ด๋ฃจ์ด์ ์๋ค.
ํ ํฐ์ด๋ค.
JWT๊ฐ ํ ํฐ์ด ๋ง๋๋ฐ ๋ญํ๋ ๊ธฐ์ ์ธ๊ฐ?
RSP ๊ธฐ์ ํ์ค ๊ท๊ฒฉ์์ ์ ์๋์ด์๋ค.
RSP - ๊ธฐ์ ํ์ค ๊ท๊ฒฉ์ด๋ค.
HEADER.PAYLOAD.SIGNATURE
ํํ)
"alg" : "HS256",
"typ" : "JWT"
"sub" : "1234567890",
"name" : "John Doe",
"iat" : 1516239022
ํํ)
HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
MY_SECRET_KEY_1234!@#
) secret base64 encoded