๐ Cookie์ Session์ ๋ฑ์ฅ ๋ฐฐ๊ฒฝ?
HTTP(Hyper Text Transfer Protocol)๋ ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ์๋ก ํต์ ํ๋ ๋ฐฉ๋ฒ์ ํ์คํํ๋ TCP/IP ๊ธฐ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ๊ณ์ธต ํต์ ํ๋กํ ์ฝ๋ก, ์์ฒญ๊ณผ ์๋ต์ ๊ธฐ๋ฐ์ผ๋ก ์๋ํ๋ค. ๊ทธ๋ฌ๋ ์ด ํ๋กํ ์ฝ์ Stateless ํน์ฑ์ ๊ฐ์ง๊ณ ์์ด, ํ ๋ฒ์ ์์ฒญ์ด ๋๋๋ฉด ์๋ฒ๋ ํด๋ผ์ด์ธํธ์ ์ด์ ์ํ๋ฅผ ์์ง ๋ชปํ๋ค. ์ด๋ฌํ ํน์ฑ ๋๋ฌธ์ ์ฌ๋ฌ ๊ฐ์ง ๋ถํธํจ์ด ๋ฐ์ํ ์ ์๋ค. ์๋ฅผ ๋ค์ด, ๋ก๊ทธ์ธํ ์ฌ์ฉ์๊ฐ ๋ค๋ฅธ ํ์ด์ง๋ก ์ด๋ํ ๋๋ง๋ค ๋งค๋ฒ ๋ก๊ทธ์ธ ์ ๋ณด๋ฅผ ๋ค์ ์ ๋ ฅํด์ผ ํ๋ค๋ฉด ๊ต์ฅํ ๋ฒ๊ฑฐ๋ก์ธ ๊ฒ์ด๋ค. ์ด์ ๊ฐ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฑ์ฅํ ๊ฐ๋ ์ด ์ฟ ํค(Cookie)์ ์ธ์ (Session)์ด๋ค.
๐ Cookie๋?
์ฟ ํค๋ HTTP ํ๋กํ ์ฝ์ ์ด์ฉํ ์น ๊ธฐ์ ์ค ํ๋๋ก, HTTP ํ๋กํ ์ฝ์ ์ฌ์ฉํ๋ ์น์ฌ์ดํธ๊ฐ ํด๋ผ์ด์ธํธ ์ธก(์ฌ์ฉ์ ์ปดํจํฐ)์ ์ ์ฅํ๋ ์์ ๋ฐ์ดํฐ ํ์ผ์ด๋ค. ์น์ฌ์ดํธ๊ฐ ํด๋ผ์ด์ธํธ์๊ฒ ์ฟ ํค๋ฅผ ์ ์กํ๋ฉด, ํด๋น ์ ๋ณด๋ ์ฌ์ฉ์์ ์ปดํจํฐ์ ์ ์ฅ๋๊ณ , ์ดํ ํด๋ผ์ด์ธํธ๊ฐ ๊ฐ์ ์น์ฌ์ดํธ์ ์ ๊ทผํ ๋๋ง๋ค ์ฟ ํค ์ ๋ณด๋ฅผ ์๋ฒ์ ์๋์ผ๋ก ์ ์กํ๊ฒ ๋๋ค. ์ด๋ฅผ ํตํด ์๋ฒ๋ ์ฌ์ฉ์์ ์ํ๋ ์ด์ ๋ฐฉ๋ฌธ ๊ธฐ๋ก ๋ฑ์ ๊ธฐ์ตํ ์ ์๋ค. Cookie๋ HTTP ์์ฒญ๊ณผ ์๋ต์์ Header๋ฅผ ํตํด ์ ๋ฌ๋๋ค.
๐ Session์ด๋?
์ธ์ ์ HTTP ํ๋กํ ์ฝ์ ์ด์ฉํ ์น ๊ธฐ์ ์ค ํ๋๋ก, ์ฌ์ฉ์์ ์ํ ์ ๋ณด๋ฅผ ์๋ฒ์ ์ ์ฅํ๊ณ ๊ด๋ฆฌํ๋ ๊ธฐ์ ์ด๋ค. ์๋ฒ๋ ์ฌ์ฉ์๊ฐ ์น์ฌ์ดํธ์ ์ ์ํ ๋ ๊ณ ์ ํ Session ID๋ฅผ ์์ฑํ๊ณ , ์์ฑํ Session ID๋ ์ผ๋ฐ์ ์ผ๋ก ์ฟ ํค์ ๋ด์ ํด๋ผ์ด์ธํธ์๊ฒ ์ ๋ฌํ๋ค. ํด๋ผ์ด์ธํธ๊ฐ ๋ค์ ์๋ฒ์ ์์ฒญ์ ๋ณด๋ผ ๋๋ง๋ค ์ธ์ ID๋ฅผ ํจ๊ป ์ ์กํ๋ฉด, ์๋ฒ๋ ์ด Session ID๋ฅผ ํตํด ์ฌ์ฉ์๊ฐ ๋๊ตฌ์ธ์ง ์๋ณํ๊ณ , ์๋ฒ์ ์ ์ฅ๋ ์ํ ์ ๋ณด๋ฅผ ๋ฐํํ๋ค. ์ด๋ ๊ฒ ์๋ฒ ์ธก์์ ์ํ๋ฅผ ๊ด๋ฆฌํ๊ธฐ ๋๋ฌธ์, ์ฟ ํค๋ณด๋ค ๋ณด์์ฑ์ด ๋ ๋๋ค๊ณ ํ ์ ์๋ค.
๐ Cookie vs Session
๐ ๊ณตํต์
• ๐ ์ฌ์ฉ์ ์ธ์ฆ๊ณผ ์ํ ์ ์ง๋ฅผ ์ํ ๊ฐ๋
~> ๋ ๋ค ์ฌ์ฉ์์ ์ธ์ฆ์ ์ ์งํ๊ณ , ์ฌ์ฉ์๊ฐ ์น์ฌ์ดํธ์์์ ํ๋ ์ํ๋ฅผ ์ถ์ ํ๋ ๋ฐ ์ฌ์ฉ
• ๐ HTTP ํ๋กํ ์ฝ ์ฌ์ฉ
~> ๋ ๋ค HTTP ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ ์๋ฒ์ ํด๋ผ์ด์ธํธ ๊ฐ์ ์ ๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๋ฐฉ์
• ๐ช ์ฟ ํค ์ฌ์ฉ
~> ๋ ๋ค ์ฟ ํค๋ฅผ ์ฌ์ฉํ์ง๋ง, ์ฟ ํค ๋ด๋ถ์ ์ ์ฅ๋๋ ์ ๋ณด๊ฐ ๋ค๋ฆ
~> ์ธ์ ์ Session ID๋ง ์ฟ ํค์ ์ ์ฅํ๊ณ , ์ฟ ํค๋ ์ฌ์ฉ์ ์ ๋ณด ์ ๋ถ๋ฅผ ์ฟ ํค์ ์ ์ฅ
• ๐ก ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ ๋ฐ์ดํฐ ์ ์ก
~> ์ฌ์ฉ์์ ์ ๋ณด๋ฅผ ์ ์ฅํ๊ณ ์ด๋ฅผ ์๋ฒ์ ์ ๋ฌํ๋ ์ญํ
๐ ์ฐจ์ด์
1. ์ ์ฅ ์์น
• ๐ช ์ฟ ํค (์ฌ์ฉ์์ PC์ ์ ์ฅ / ์ ์ฅ ์์น๋ ๋ธ๋ผ์ฐ์ ๋ง๋ค ๋ค๋ฆ)
• ๐พ ์ธ์ (์๋ฒ์ ์ ์ฅ / ํด๋ผ์ด์ธํธ๋ ์ธ์ ID๋ง์ ๊ฐ์ง๋ฉฐ, ์ค์ ์ธ์ ์ ๋ณด๋ ์๋ฒ์์ ๊ด๋ฆฌ)
2. ๋ง๋ฃ์ผ
• ๐ช ์ฟ ํค (์ค์ ๋ ๋ง๋ฃ ์๊ฐ๊น์ง ์ ์ง ๊ฐ๋ฅ / ์ฌ์ฉ์๊ฐ ์ง์ ์ญ์ ๋ ๊ฐ๋ฅ)
• ๐พ ์ธ์ (๊ธฐ๋ณธ์ ์ผ๋ก ๋ธ๋ผ์ฐ์ ์ข ๋ฃ ์ ์ญ์ / ์๋ฒ ์ค์ ์ ํตํด ์ธ์ ์ ์ง ์๊ฐ ์ฐ์ฅ ๊ฐ๋ฅ)
3. ๋ณด์์ฑ
• ๐ช ์ฟ ํค (์ฌ์ฉ์ PC์ ์ ์ฅ๋๋ฏ๋ก ํ์ทจ ์ํ์ด ํผ(์: XSS ๊ณต๊ฒฉ, ์ฟ ํค ๋ณ์กฐ ๋ฑ))
• ๐พ ์ธ์ (์๋ฒ์์ ๊ด๋ฆฌ๋๋ฏ๋ก ์ฟ ํค๋ณด๋ค ๋ณด์์ฑ์ด ๋ ๋์)
4. ์ฉ๋ ์ ํ
• ๐ช ์ฟ ํค (์ผ๋ฐ์ ์ผ๋ก 4KB๋ก ์ ํ)
• ๐พ ์ธ์ (์๋ฒ ์ ์ฅ ๋ฐฉ์์ ๋ฐ๋ผ ์ฉ๋ ์ ํ์ด ๋ค๋ฆ / ์ฟ ํค๋ณด๋ค ์ฉ๋ ์ ํ์ ๋ํ์ง๋ง, ๊ทธ๋งํผ ์๋ฒ์ ๋ฆฌ์์ค๋ฅผ ์ฌ์ฉ)
+ ์ถ์ฒ
https://dev-coco.tistory.com/61
'๐ Computer Science' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Process์ Thread์ ๋ํ์ฌ (0) | 2025.02.18 |
---|---|
๋ฉ๋ชจ๋ฆฌ ๊ณ์ธต ๊ตฌ์กฐ์ ๋ํ์ฌ (0) | 2025.02.17 |
VM, Container, Hypervisor, Docker, Kubernetes์ ๋ํ์ฌ (0) | 2025.02.14 |
API (Application Programming Interface)์ ๋ํ์ฌ (0) | 2025.02.03 |
CI/CD ํ์ดํ๋ผ์ธ์ ๋ํ์ฌ (0) | 2025.01.31 |