๐ ์ค๋์ ํ์ต ํค์๋
- Json Web Token
๐ฅ JWT
JWT(Json Web Token)๋ JSON ํฌ๋งท์ ์ด์ฉํ์ฌ ์ฌ์ฉ์์ ๋ํ ์์ฑ์ ์ ์ฅํ๋ Claim ๊ธฐ๋ฐ์ Web Token ์ ๋๋ค. ์ฆ, ํ ํฐ์ ํ ์ข ๋ฅ๋ผ๊ณ ์๊ฐํ๋ฉด ๋ฉ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ฟ ํค ์ ์ฅ์๋ฅผ ์ฌ์ฉํ์ฌ JWT๋ฅผ ์ ์ฅํฉ๋๋ค.
๐ฅ JWT ๊ตฌ์ฑ์์
JWT ๋ header, payload, signature ์ธ ํํธ๋ก ๋๋์ด์ ธ ์์ต๋๋ค.
๐ ํค๋ (Header)
- ์ด๋ ํ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ํธํ ํ ๊ฒ์ธ์ง, ์ด๋ ํ ํ ํฐ์ ์ฌ์ฉํ ๊ฒ์ ๋ํ ์ ๋ณด๊ฐ ๋ค์ด์์ต๋๋ค.
๐ ์ ๋ณด (Payload)
- ์ ๋ฌํ๋ ค๋ ์ ๋ณด(์ฌ์ฉ์ id๋ ๋ค๋ฅธ ๋ฐ์ดํฐ๋ค)๊ฐ ๋ค์ด์๋ค.
- payload ์ ์๋ ๋ด์ฉ์ ์์ ์ด ๊ฐ๋ฅํ๋ฉฐ ์ ๋ณด๋ฅผ ์ถ๊ฐํ ์ ์์ต๋๋ค.
- ๊ทธ๋ฌ๋ ๋ ธ์ถ๊ณผ ์์ ์ด ๊ฐ๋ฅํ ์ง์ ์ด๊ธฐ ๋๋ฌธ์ ์ธ์ฆ์ด ํ์ํ ์ต์ํ์ ์ ๋ณด๋ง์ ๋ด์์ผ ํฉ๋๋ค.
๐ ์๋ช (Signature)
- ๊ฐ์ฅ ์ค์ํ ๋ถ๋ถ์ผ๋ก ํค๋์ ์ ๋ณด๋ฅผ ํฉ์น ํ ๋ฐ๊ธํด ์ค ์๋ฒ๊ฐ ์ง์ ํ secret key ๋ก ์ํธํ์์ผ ํ ํฐ์ ๋ณ์กฐํ๊ธฐ ์ด๋ ต๊ฒ ๋ง๋ญ๋๋ค.
๐ฅ JWT ์ฅ/๋จ์
1. ์ฅ์
- ๋์ ์ ์์๊ฐ ๋ง์ ๋ ์๋ฒ ์ธก ๋ถํ ๋ฎ์ถค
2. ๋จ์
- ๊ตฌํ์ ๋ณต์ก๋ ์ฆ๊ฐ
- JWT ์ ๋ด๋ ๋ด์ฉ์ด ์ปค์ง์๋ก ๋คํธ์ํฌ ๋น์ฉ ์ฆ๊ฐ
- ๊ธฐ ์์ฑ๋ JWT ๋ฅผ ์ผ๋ถ๋ง ๋ง๋ฃ์ํฌ ๋ฐฉ๋ฒ์ด ์์
- Secret key ์ ์ถ ์ JWT ์กฐ์ ๊ฐ๋ฅ
๐ ์ค๋์ ํ๊ณ
๋ด์ผ์ ๋ ์ด์ฌํ..