JWT
JWT(Json Web Token) ์ ํต์ ์ ๋ณด๋ฅผ JSON ํ์์ ์ฌ์ฉํ์ฌ ์ ์กํ๊ธฐ ์ํด ์ฌ์ฉ๋จ. JWT ๋ ํ ํฐ ์์ฒด์ ์ ๋ณด๊ฐ ํฌํจ๋์ด ์๋ ํด๋ ์ ๊ธฐ๋ฐ ํ ํฐ์. ์ผ๋ฐ์ ์ธ ์ ํ๋ฆฌ์ผ์ด์ ์์ JWT ๋ ์ฃผ๋ก ์ธ์ฆ๊ณผ ์ธ๊ฐ๋ฅผ ๊ตฌํํ๊ธฐ ์ํด ์ฌ์ฉ๋จ. JWT ๋ ํค๋, ํ์ด๋ก๋, ์๊ทธ๋์ฒ๋ก ๊ตฌ๋ถ๋จ. ํค๋์๋ ํ ํฐ์ ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ด๋ ํ์ ์ ๊ฐ์ง๋ฉฐ, ํ์ด๋ก๋์๋ ๋ฐ์ดํฐ(๋ง๋ฃ์ผ, ์ฌ์ฉ์ ์ ๋ณด ๋ฑ) ์ ๊ฐ์ง. ์๊ทธ๋์ฒ๋ ํค๋์ ํ์ด๋ก๋๊ฐ ๋ณ์กฐ๋์ง ์์๋์ง ํ๋จํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ใท๋ค, ํค๋์ ํ์ด๋ก๋๋ฅผ ๋น๋ฐ ํค๋ฅผ ์ฌ์ฉํ์ฌ ํค๋์ ๋ช ์๋ ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ํธํ ํ์ฌ ์๊ทธ๋์ฒ๊ฐ ๋ง๋ค์ด์ง.
JWT ๋ฅผ ์ฌ์ฉํ์ฌ ์ธ๊ฐ๋ฅผ ๊ตฌํํ๋ ๊ฒฝ์ฐ, ํด๋ ์ ๊ธฐ๋ฐ ํ ํฐ์ ํน์ฑ ๋๋ถ์ ์ธ์ ๊ธฐ๋ฐ ์ธ์ฆ์ ๋นํด์ ์ฌ์ฉ์ ์ ๋ณด๋ฅผ ์กฐํํ๊ธฐ ์ํ ์ถ๊ฐ์ ์ธ ์์ ์ด ํ์ํ์ง ์์. ๋ํ, ์๋ฒ๊ฐ ์ํ๋ฅผ ๊ด๋ฆฌํ์ง ์๊ธฐ ๋๋ฌธ์ ์๋ฒ๊ฐ ์ด์คํ๋ ํ๊ฒฝ์์๋ ์ฌ์ฉ์์ ๋ก๊ทธ์ธ ์ ๋ณด๋ฅผ ์ผ๊ด์ฑ ์๊ฒ ๊ด๋ฆฌํ ์ ์์. (์ธ์ ๋ถ์ผ์น ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ง ์์)
ํ์ง๋ง JWT๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ, ๋ช ๊ฐ์ง ์ฃผ์ ์ฌํญ์ด ์กด์ฌํจ.
JWT ๋ ๋์ฝ๋ฉ์ด ์ฌ์. Base64 ๋ก ๋์ฝ๋ฉํ๋ฉด ํ์ด๋ก๋๋ฅผ ํ์ธํ ์ ์์. ๋ฏผ๊ฐํ ์ ๋ณด๋ฅผ ๋ด๋ ๊ฒ์ ์ ์ํด์ผํจ.
์ํฌ๋ฆฟ ํค์ ๋ณต์ก๋๊ฐ ๋ฎ์ ๊ฒฝ์ฐ, ๋ฌด์์ ๋์ ๊ณต๊ฒฉ(Brute force Attack) ์ ๋ ธ์ถ๋ ์ ์์. ๋ฐ๋ผ์, ๊ฐ๋ ฅํ ์ํฌ๋ฆฟ ํค๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ๊ถ์ฅ๋จ.
์ํฌ๋ฆฟ ํค๋ ์ ์ถ๋๋ฉด ์๋๊ธฐ ๋๋ฌธ์ ์์ ํ ๊ณต๊ฐ์์ ๊ด๋ฆฌํด์ผํจ.
JWT ํ์ทจ์ ์ ์ํด์ผํจ. ์ด๋ฅผ ์ํด์ JWT ์ ์ฅ ๊ณต๊ฐ, ๋ฆฌํ๋ ์ ํ ํฐ ๋์ ์ฌ๋ถ, Refresh Token Rotation, ํ์ทจ ๊ฐ์ง ๋ฐ ๋์์ ๋ํด์ ๊ณ ๋ฏผ์ด ํ์ํจ.
ํ ํฐ์ ์ฆ์ ๊ฐฑ์ ์ด ์ฌ์ฉ์ ๊ฒฝํ์ ์ ํดํ๋์ง ๊ณ ๋ คํด์ผํจ. ์๋ฅผ ๋ค์ด, ์ฌ์ฉ์๊ฐ ๊ฒ์๊ธ์ 3์๊ฐ ๋์ ์์ฑํ๊ณ ์ ์ถํ์ง๋ง JWT ๊ฐ ๋ง๋ฃ๋์ด ์ฌ์ฉ์๊ฐ ์์ฑํ ๊ธ์ ์ฌ๋ผ์ง ์ ์์. ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์ ์ฌ๋ผ์ด๋ฉ ์ธ์ ๊ณผ ๊ฐ์ ์ ๋ต์ ๊ณ ๋ฏผํด ๋ณผ ์ ์์.
JWT none ์๊ณ ๋ฆฌ์ฆ ๊ณต๊ฒฉ์ ์ ์ํด์ผํจ. ๊ณต๊ฒฉ์๊ฐ ํ ํฐ์ ํค๋์ ๋ช ์๋ ์๊ณ ๋ฆฌ์ฆ์ none ์ผ๋ก ๋ณ๊ฒฝํ์ฌ, ํ์ด๋ก๋๊ฐ ๋ณ์กฐ๋์ด๋ ์๊ทธ๋์ฒ ๊ฒ์ฆ์ ์ฐํํ ์ ์์. ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์ none ์๊ณ ๋ฆฌ์ฆ ๊ณต๊ฒฉ์ ์๋ฐฉํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๊ฑฐ๋, none ์๊ณ ๋ฆฌ์ฆ๊ณผ ๊ฐ์ด ์ฝํ ์๊ณ ๋ฆฌ์ฆ์ ๋ํด์ ํํฐ๋ง ํ๋ ๋ฑ ์ฃผ์๊ฐ ํ์ํจ.
Last updated
Was this helpful?