
๐ To Do List
โ๏ธ ์ฝํ ๋ฌธ์ ํ์ด - ๋งํฌ๋ ๋ฆฌ์คํธ, ์ด์ง ํ์, ์ฌ๊ทํจ์
โ๏ธ ์ฌ์ด๋ ํ๋ก์ ํธ - ํ ํฐ ์ฌ๋ฐ๊ธ
๐ฉ๐ป๐ป Today I Learned ...
๐จ ๋ฌธ์ ์ฌํญ
access token๊ณผ refresh token ๋ชจ๋ ์ฌ๋ฐ๊ธ
ํ ํฐ ์ฌ๋ฐ๊ธ ๋ก์ง์ ๊ตฌํํ๋ฉด์ ์๋์ ๊ฐ์ ๊ณ ๋ฏผ์ด ์๊ฒผ๋ค.
- ๋ด๊ฐ ์ฌ์ฉํด ์จ iOS ์ฑ๋ค์ ๋ก๊ทธ์ธ ์ธ์ ์ด ๊ฑฐ์ ๋๊ธฐ์ง ์์์๋๋ฐ, ํ ํฐ ์ฌ๋ฐ๊ธ ์์ฒญ์ด ์์ฃผ ์ด๋ฃจ์ด์ง๋ ๊ฑฐ ์๋๊ฐ?
- ํ ํฐ ์ฌ๋ฐ๊ธ ์์ฒญ์ด ์์ฃผ ๋ฐ์ํ๋ ๊ตฌ์กฐ์์, access token ๋ง๋ฃ ๋ ๋๋ง๋ค refresh token๊น์ง ํจ๊ป ์ฌ๋ฐ๊ธ ๋๋ ๊ตฌ์กฐ๊ฐ ์ ์ ํ๊ฐ?
- refresh token์ DB์ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ๋ ๊ตฌ์กฐ์์ ์ฌ๋ฐ๊ธ์ด ๋ฐ๋ณต๋๋ฉด ์๋ฒ ๋ถํ๋ ๊ด๋ฆฌ ๋ณต์ก๋๊ฐ ์ฆ๊ฐํ์ง ์์๊น?
๐ค ๊ณ ๋ฏผํ๋ ์ ํ์ง
Access Token๋ง ์ฌ๋ฐ๊ธ
- Access Token ๋ง๋ฃ ์, access Token๋ง ์ฌ๋ฐ๊ธํ๋ค.
- ์๋ฒ/DB์์ refresh token ๋ง๋ฃ ์ฌ๋ถ๋ง ๊ด๋ฆฌํ๋ฉด ๋๋ค.
- ์ฌ์ฉ์์๊ฒ ๋ก๊ทธ์ธ์ด ํ๋ฆฌ์ง ์๊ฒ ๋ณด์ด๋ ค๋ฉด, refresh token ๋ง๋ฃ ์๊ฐ์ ๊ธธ๊ฒ ์ค์ ํด์ผ ํ๋ค.
Refresh token ๋ถ๋ถ์ ์ฌ๋ฐ๊ธ
- Access Token ๋ง๋ฃ ์, ์ฐ์ access Token์ ์ฌ๋ฐ๊ธํ๋ค.
- Refresh Token์ ํน์ ์กฐ๊ฑด(๋ง๋ฃ ๊ธฐ๊ฐ์ด ๋ค๊ฐ์ฌ ๋ ๋ฑ)์์๋ง ์ฌ๋ฐ๊ธ ํ๋ค.
โ ๊ฐ์ ๋ฐฉํฅ
`Access token`๋ง ์ฌ๋ฐ๊ธํ๋ ๋ฐฉ์์ด ๊ฐ์ฅ ๊ฐ๋จํ ๊ตฌํ ๋ฐฉ๋ฒ์ด๋ผ๋ ์๊ฐ์ด ๋ค์์ง๋ง,
์ด ๋ฐฉ์์ ์ฌ์ฉํ ๊ฒฝ์ฐ refresh token์ ๋ง๋ฃ ๊ธฐ๊ฐ์ ๊ธธ๊ฒ ์ค์ ํด์ผ ํ๊ณ , ํ ํฐ ํ์ทจ ๋ฑ์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ ๋ ๋์์ด ์ด๋ ต๋ค๋ ์ ์ด ์ฐ๋ ค๋์๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก `refresh token`์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ์งํ๋, ๋ง๋ฃ ์์ ์ด ์๋ฐํ ๊ฒฝ์ฐ์๋ง ์ฌ๋ฐ๊ธํ๋ ๋ฐฉ์์ผ๋ก ๊ตฌํํ์ฌ, UX๋ ๊ณ ๋ คํ๋ฉด์
๋ณด์์ฑ, DB ๊ฐฑ์ ๋น์ฉ์ ํจ๊ป ์ค์ด๋ ๋ฐฉํฅ์ผ๋ก ๊ฐ์ ํ๊ธฐ๋ก ํ๋ค.
์ฐธ๊ณ :
๐ Access Token & Refresh Token ์๋ฆฌ
Access Token & Refresh Token ์ด๋ฒ ํฌ์คํ ์์๋ ๊ธฐ๋ณธ JWT ๋ฐฉ์์ ์ธ์ฆ(๋ณด์) ๊ฐํ ๋ฐฉ์์ธ Access Token & Refresh Token ์ธ์ฆ ๋ฐฉ์์ ๋ํด ์์๋ณด๊ฒ ๋ค. ๋จผ์ JWT(Json Web Token) ์ ๋ํด ์ ๋ชจ๋ฅด๋ ๋ ์๋ค์ ๋ค์ ํฌ์ค
inpa.tistory.com
'Today I Learned ๐ง' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [TIL-20260208] Instant๋ก ํ ํฐ ๋ง๋ฃ ์๋ฐ ์ฌ๋ถ ์ฒดํฌ (0) | 2026.02.08 |
|---|---|
| [TIL-20260206] Duration์ผ๋ก ํ ํฐ ๋ง๋ฃ ์๋ฐ ์ฌ๋ถ ์ฒดํฌ (0) | 2026.02.07 |
| [TIL-20260204] ์ฝ๋ฉ ํ ์คํธ - ์ฌ๊ท ํจ์ (Recursive Function) (0) | 2026.02.04 |
| [TIL-20260203] ์ฝ๋ฉ ํ ์คํธ - Linked List , ์ด์ง ํ์(Binary Search) (0) | 2026.02.03 |
| [TIL-20260202] Kotlin data class, enum class (0) | 2026.02.02 |