Notice
Recent Posts
Recent Comments
Link
| ์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
Tags
- js
- javascript ๊ฒ์
- ํ์ดํผ๋ ์
- Javascript
- ๊ด๊ณํ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ํ์ด์ฌ ์๊ณ ๋ฆฌ์ฆ
- vs code
- nodejs
- ์ํ์ฝ๋ฉ
- SQL
- Blockmonkey
- ์ ๋ก์ด
- javascript ์ด๊ธ
- algorithum
- ๋ธ๋ก๋ชฝํค
- ์ํ์ฝ๋ฉ nodejs
- hyperledger fabric
- javascirpt
- ํ๋ก๊ทธ๋๋ฐ
- ๋ธ๋ก์ฒด์ธ
- ๋ธ๋ก์ฒด์ธ๊ฐ๋ก
- Nodejs ํ๋ก์ ํธ
- hyperledger
- ์๋ฐ์คํฌ๋ฆฝํธ
- ์ปดํจํฐ๊ณตํ๊ฐ๋ก
- DataStructure
- mysql
- ๊น
- al
- ์ปดํจํฐ์ฌ์ด์ธ์ค
Archives
- Today
- Total
Blockmonkey
์ธ์ฆ ์ธ๊ฐ ๋ฐฉ์ ๋น๊ต ๋ณธ๋ฌธ
๐ ์๋ฒ๊ธฐ๋ฐ ์ธ์ฆ(session)
- ์๋ฒ์ ์ธ์ ์ ๋ง๋ค์ด ์ฌ์ฉ์์ ๋ํ ์ ๋ณด๋ฅผ ์ ์ฅ, ๊ด๋ฆฌ ํ๋ค.
- ์ฌ์ฉ์ ๋ธ๋ผ์ฐ์ (ํด๋ผ์ด์ธํธ)์๋ ์ธ์ ID ๋ฅผ ์ ์ฅํ๋ ์ฟ ํค๊ฐ ์์ฑ๋๋ค. ์๋ฒ๋ ์ด ์ธ์ ID๋ฅผ ํตํด ์ฌ์ฉ์๋ฅผ ์๋ณํ๋ค.
- ํด๋ผ์ด์ธํธ๊ฐ ์ด๋ค ์์ฒญ์ ๋ณด๋ผ ๋๋ง๋ค ํค๋์ cookie์ ๋ํ ์ธ์ id๋ฅผ ๋ด์ ์ ์ก
- ์๋ฒ๋ ํด๋ผ์ด์ธํธ ์์ ๋ณด๋ธ ์ธ์ id๋ฅผ ๋์กฐํด ์ธ์ฆ ์ํ๋ฅผ ํ์ธํจ.
์ฅ์
- ์ฟ ํค๊ฐ ๋ ธ์ถ๋๋๋ผ๋ ์ฟ ํค ์์ฒด(์ธ์ ID)๋ ์ ์๋ฏธํ ๊ฐ์ ๊ฐ์ง๊ณ ์์ง ์๋ค.
- ์ฌ์ฉ์๋ค์ ๊ฐ๊ฐ ๊ณ ์ ์ ์ธ์ ID๊ฐ์ ๋ฐ๊ธ๋ฐ๊ฒ ๋์ด, ์๋ฒ์์ ์ฟ ํค ๊ฐ์ ๋ฐ์์ ๋ ํ์์ ๋ณด๋ฅผ ํ๋ํ๋ ํ์ธํ ํ์์๋ค.
๋จ์
- ์ฟ ํค๊ฐ ํ์ทจ๋์ด ์๋ฒ์ ์์ฒญ์ ๋ณด๋ธ๋ค๋ฉด ์๋ฒ๋ ์ธ์ฆ๋ ์ฌ์ฉ์์ธ์ง, ํด์ปค์ธ์ง ๊ตฌ๋ณํ ๋ฐฉ๋ฒ์ด ์๋ค.
๐ ํ ํฐ๊ธฐ๋ฐ ์ธ์ฆ(JWT)
- JSON Web Token ์ ์ฝ์๋ก ์ธ์ฆ์ ํ์ํ ์ ๋ณด๋ค์ ์ํธํ์ํจ ํ ํฐ์ ๋ปํ๋ค.
- ์ฌ์ฉ์๋ Access Token ์ ํค๋์ ์ค์ด ์๋ฒ๋ก ๋ณด๋ธ๋ค.
- JWT์ ๊ตฌ์กฐ
- ํค๋(Header) - ์ผ๋ฐ์ ์ผ๋ก ํ ํฐ์ ์ ํ๊ณผ ์ํธํ ์๊ณ ๋ฆฌ์ฆ ๋๊ฐ์ง ์ ๋ณด๋ฅผ JSON ํํ๋ก ๋ด๊ณ ์๋ค.
- ํ์ด๋ก๋(Payload) - ์ฌ์ฉ์์ ์ ๋ณด ํน์ ๋ฐ์ดํฐ ์์ฑ ๋ฑ์ ๋ํ๋ด๋ ํด๋ ์ ์ด๋ผ๋ ์ ๋ณด ๋จ์๋ก ๊ตฌ์ฑ๋๋ค. ํด๋ ์์ ๊ฐ๊ฐ ๋ฑ๋ก๋ ํด๋ ์, ๊ณต๊ฐ ํด๋ ์, ๋น๊ณต๊ฐ ํด๋ ์ ์ผ๋ก ๊ตฌ์ฑ๋์ด ์๋ค.
- ์๋ช (Signature) - ํน์ ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ์ฌ, Base64 ์ธ์ฝ๋ฉ๋ ํค๋์, ํ์ด๋ก๋, ๋น๋ฐํค๋ฅผ ์ด์ฉํ์ฌ ์ํธํํ๋ค.
์ฅ์
- ์๋ฒ๊ธฐ๋ฐ ์ธ์ฆ ๋ฐฉ์์ ๊ฒฝ์ฐ ๋ณ๋์ ์ ์ฅ์ ๊ด๋ฆฌ๊ฐ ํ์ํ๋ค. ํ์ง๋ง JWT๋ ๋ฐ๊ธํ ํ ๊ฒ์ฆ๋ง ํ๋ฉด ๋๊ธฐ ๋๋ฌธ์ ์ถ๊ฐ ์ ์ฅ์๊ฐ ํ์์๋ค. ( ์๋ฒ์ ํ์ฅ๊ณผ ์ ์ง/๋ณด์ ์ ์ ๋ฆฌํ ๊ฑฐ๋ผ ์๊ฐ๋๋ค)
๋จ์
- ์ด๋ฏธ ๋ฐ๊ธ๋ JWT์ ๋ํด์๋ ์ ํจ๊ธฐ๊ฐ์ด ์ง๋ ๋๊น์ง ๊ด๋ฆฌ๊ฐ ๋ถ๊ฐ๋ฅํ๋ค.
- Payload์ ์ ๋ณด๊ฐ ์ ํ์ ์ด๋ค.(๋๊ตฌ๋ ๋ณผ ์ ์๊ธฐ ๋๋ฌธ์ ์ค์ํ ์ ๋ณด๋ฅผ ๋ฃ์ ์ ์๋ค)
- JWT์ ๊ธธ์ด๊ฐ ๊ธธ์ด ์๋ฒ์ ์์ ๋ญ๋น๊ฐ ๋ฐ์ํ ๊ฐ๋ฅ์ฑ์ด ๋๋ค. ← ์๋ฒ์ธ์ฆ๋ฐฉ์์ ๋นํด ์์๋ญ๋น๊ฐ ์๋์ ์ผ๋ก ๋๋ค
Refresh Token
- ํ ํฐ ๊ธฐ๋ฐ ์ธ์ฆ ๋ฐฉ์์ ๋ณด์์ฑ์ ๋์ด๊ธฐ ์ํด ํ์
- ์ฒ์ ๋ก๊ทธ์ธ ์ Refresh Token๊ณผ Access Token ์ ๋์์ ๋ฐ๊ธํ๋ค
- AT ํ ํฐ์ ๊ฒฝ์ฐ ๋ง๋ฃ์๊ฐ (5๋ถ์์ 15๋ถ์ฌ์ด) ์ ์ ๊ฒ ์ฃผ๋๋์ RTํ ํฐ์ ๋ง๋ฃ์๊ฐ์ ๊ธธ๊ฒ ์ค๋ค.
- AT ํ ํฐ์ด ๋ง๋ฃ๋ ๊ฒฝ์ฐ RTํ ํฐ์ ์ฌ์ฉํด ATํ ํฐ์ ์ฌ๋ฐ๊ธ ๋ฐ์ ์ ์๋ค.
๐ Reference
'Web Development > Back-end' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| Nestjs ํ๋์ ๊ธฐ๋ณธ ์ ๋ฆฌ (0) | 2023.05.01 |
|---|---|
| HTTP & HTTPS & SSL ์ดํดํ๊ธฐ (0) | 2023.05.01 |
| Nestjs & Docker & Github Action ํ์ฉ ์๋ ๋ฐฐํฌ ๊ตฌ์ถํ๊ธฐ (2) | 2023.05.01 |
| [CICD] Github Action (CI) + CodeDeploy (CD) (0) | 2022.10.10 |
| Ubuntu nvm & nodejs ์ต์ ๋ฒ์ ์ค์น (0) | 2022.08.18 |