์ฟ ํค & ์ธ์ ์ ์ฌ์ฉํ ๋ก๊ทธ์ธ
์ฟ ํค
์๋ฒ์ ์๋ต์ผ๋ก ๋์ ์น ๋ธ๋ผ์ฐ์ ์ ์ ์ฅ๋๋ ์ ๋ณด.
๋ก๊ทธ์ธ ์ ์๋ฒ๋ก ๋ถํฐ ์ธ์ ID๋ฅผ ์๋ต ๋ฐ์ ์ ์ฅํ๋ค. ๋ก๊ทธ์ธ ๊ถํ์ด ํ์ํ ์์ฒญ์ ์๋ฒ๋ก ํ ๋๋ง๋ค ์ฟ ํค ์ ๋ณด๋ฅผ ๊ฐ์ด ๋ณด๋ธ๋ค.
์ธ์
client์์ server๋ก ๊ฐ๋ ๋ชจ๋ ์์ฒญ์ด ์ด์ request์ ๋ ๋ฆฝ์ ์ผ๋ก ์ด๋ฃจ์ด์ง๋ค(stateless). ๋ฐ๋ผ์ ์ฐ๋ฆฌ๊ฐ ์๋ฒ์ ์์ฒญ์ ๋ณด๋ผ ๋๋ง๋ค ๋ด๊ฐ ๋๊ตฌ์ธ์ง ์๋ ค์ฃผ์ด์ผ ํ๋ค.
client๊ฐ id, pw๋ฅผ ํ์ธํ์ฌ ๋ง์ผ๋ฉด ์ธ์ DB์ ์ ์ ๋ฅผ ์์ฑํ๋ค. ์ด ๋ ์ธ์ ID๋ ์ฟ ํค๋ฅผ ํตํด ๋์์ค๊ณ ์น ๋ธ๋ผ์ฐ์ ์ ์ ์ฅ๋๋ค. client๊ฐ ์ธ๊ฐ๊ฐ ํ์ํ ์์ฒญ์ ํ ๋๋ง๋ค server๋ ์ธ์ ID๋ฅผ ์ธ์ DB์ ์ ์ฅ๋ ๊ฐ๊ณผ ๋์กฐํ์ฌ ํ์ธ ํ client์๊ฒ ์๋ตํ๋ค.
์ฟ ํค & ์ธ์ ์ ์ฌ์ฉํ ๋ก๊ทธ์ธ์ ์ฅ๋จ์
์ฅ์
- ์ธ์ ์ ๋ณด๋ฅผ ์ฌ์ฉํ์ฌ ๋ก๊ทธ์ธํ ์ ์ ๋ฅผ ์ ์ดํ ์ ์๋ค.
- ex) ์ธ์คํ๊ทธ๋จ์ ๋๋ฐ์ด์ค ๊ฐ์ ๋ก๊ทธ์์, ๋ทํ๋ฆญ์ค ๋ก๊ทธ์ธ ์ ์ ํ.
๋จ์
- ์ฌ์ฉ์๊ฐ ๋ง์์ง ์๋ก DB๊ฐ ์ปค์ง๋ฏ๋ก ๋น์ฉ์ด ๋ง์ด ๋ ๋ค.
JWT๋ฅผ ์ฌ์ฉํ ๋ก๊ทธ์ธ
JWT
client๊ฐ ๋ณด๋ธ id, pw๊ฐ ๋ง์ผ๋ฉด ์๋ฒ๋ ์ ์ ์๋ณ์์ ์ธ์ธ๋ ์ ๋ณด์ธ JWT๋ฅผ client์๊ฒ ์ ๋ฌํ๋ค.
client๋ ์ธ๊ฐ๊ฐ ํ์ํ ์์ฒญ ์ JWT์ ํจ๊ป ์์ฒญ์ ๋ณด๋ด๊ณ ์๋ฒ๋ ํด๋น ํ ํฐ์ด ์ ํจํ์ง ํ์ธํ๊ณ ๊ถํ์ ํ๋ฝํ๋ค. ์๋ฒ๋ ํด๋น ํ ํฐ์ด ์ ํจํ์ง๋ง ํ์ธํ๊ณ ์ธ์ DB์์ ์ ๋ณด๋ฅผ ์ ์ฅํ์ง ์์๋ ๋๋ค.
JWT๋ฅผ ์ฌ์ฉํ ๋ก๊ทธ์ธ์ ์ฅ๋จ์
์ฅ์
- JWT ์ฌ์ฉ์ผ๋ก ํ ํฐ์ ์ ํจ์ฑ์ ํ๋จํ ์ ์๊ธฐ์ ๋ค๋ฅธ DB๋ฅผ ์ฌ์ง ์์๋ ๋๋ค.
๋จ์
- ํ ํฐ์ด ๋ง๋ฃ๋๊ธฐ ์ ๊น์ง๋ ์์๋ก ํ ํฐ์ ๋ฌดํจํํ ์ ์๋ค.
- ex) ๋ค๋ฅธ ๋๋ฐ์ด์ค๋ก ๋ก๊ทธ์ธ๋ ์ ๋ณด๋ฅผ ๋์ ํธ๋ํฐ, server์์ ์ ์ดํ ์ ์๋ค.