Skip to content

Latest commit

ย 

History

History
68 lines (36 loc) ยท 2.69 KB

README.md

File metadata and controls

68 lines (36 loc) ยท 2.69 KB

user-feature

Next.js(React + TypeScript) Base

Base

๋งค๋ฒˆ ๋กœ๊ทธ์ธ ์ ˆ์ฐจ๋ฅผ ๊ฑฐ์ณ์•ผ ํ•˜๋Š” MVP์  ํ”„๋กœ์„ธ์Šค

  • ์ง€์—ญ/์ „์—ญ ์ƒํƒœ๋งŒ ์œ ์ง€ํ•˜๋Š” ๊ฒƒ์ด ํ•œ๊ณ„์ด๋ฏ€๋กœ ์‚ฌ์ดํŠธ์—์„œ ์ดํƒˆํ•˜๊ฑฐ๋‚˜ ์ƒˆ๋กœ๊ณ ์นจ์ด ์ผ์–ด๋‚˜๋ฉด ์ธ์ฆ ์ •๋ณด ์ดˆ๊ธฐํ™”

Cookie

์ฟ ํ‚ค ๋กœ๊ทธ์ธ์€ ์›น ์‚ฌ์ดํŠธ์—์„œ ์‚ฌ์šฉ์ž๋ฅผ ์ธ์ฆํ•˜๊ณ  ์„ธ์…˜์„ ์œ ์ง€ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์ผ๋ฐ˜์ ์ธ ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜

๋ฌธ์ œ์ 

  • ๋ณด์•ˆ ์œ„ํ—˜

    • ์ฟ ํ‚ค๋Š” ํด๋ผ์ด์–ธํŠธ ์ธก์— ์ €์žฅ๋˜๊ธฐ ๋•Œ๋ฌธ์— ํ•ด์ปค๊ฐ€ ํ•ด๋‹น ์ฟ ํ‚ค๋ฅผ ํ›”์ณ์„œ ์•ก์„ธ์Šค๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ๋ณด์•ˆ ์œ„ํ—˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ฟ ํ‚ค๋Š” ์•”ํ˜ธํ™”๋˜๊ฑฐ๋‚˜ ์•ˆ์ „ํ•œ ํ”„๋กœํ† ์ฝœ์„ ํ†ตํ•ด ์ „์†ก๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ์ฟ ํ‚ค ๋ณ€์กฐ

    • ํ•ด์ปค๋Š” ์ฟ ํ‚ค๋ฅผ ์กฐ์ž‘ํ•˜์—ฌ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์˜ ๊ณ„์ •์— ๋กœ๊ทธ์ธํ•˜๊ฑฐ๋‚˜ ์„ธ์…˜์„ ์œ„์กฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์›น ์‚ฌ์ดํŠธ๋Š” ์ฟ ํ‚ค์˜ ๋ฌด๊ฒฐ์„ฑ์„ ํ™•์ธํ•˜๊ณ  ์กฐ์ž‘์ด ๊ฐ์ง€๋˜๋ฉด ์‚ฌ์šฉ์ž๋ฅผ ๋กœ๊ทธ์•„์›ƒ์‹œ์ผœ์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ์„ธ์…˜ ๊ด€๋ฆฌ

    • ์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•œ ๋กœ๊ทธ์ธ ์‹œ์Šคํ…œ์€ ์„ธ์…˜์„ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์„œ๋ฒ„ ์ธก์—์„œ ์‚ฌ์šฉ์ž ์ƒํƒœ๋ฅผ ์ถ”์ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด์— ๋Œ€ํ•œ ์ ์ ˆํ•œ ์„ธ์…˜ ๊ด€๋ฆฌ๊ฐ€ ์ด๋ฃจ์–ด์ง€์ง€ ์•Š์œผ๋ฉด ์„ธ์…˜ ๋ณ€์กฐ, ์ค‘๋ณต ๋กœ๊ทธ์ธ ๋“ฑ์˜ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ์ž ๊ฒฝํ—˜ ๋ฌธ์ œ

    • ์ฟ ํ‚ค๋Š” ํŠน์ • ๋ธŒ๋ผ์šฐ์ €์™€ ์žฅ์น˜์— ์ข…์†๋˜์–ด ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค๋ฅธ ๋ธŒ๋ผ์šฐ์ €๋‚˜ ์žฅ์น˜์—์„œ ๋กœ๊ทธ์ธํ•  ๊ฒฝ์šฐ ๋กœ๊ทธ์ธ ์ •๋ณด๋ฅผ ์žฌ์ž…๋ ฅํ•ด์•ผ ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ์ฟ ํ‚ค์˜ ๋งŒ๋ฃŒ ๊ธฐ๊ฐ„์ด ์ง€๋‚˜๋ฉด ์ž๋™์œผ๋กœ ๋กœ๊ทธ์•„์›ƒ๋˜์–ด ๋‹ค์‹œ ๋กœ๊ทธ์ธํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ฐœ์ธ์ •๋ณด ๋ฌธ์ œ

    • ์ฟ ํ‚ค๋Š” ์‚ฌ์šฉ์ž์˜ ๊ฐœ์ธ์ •๋ณด๋ฅผ ํฌํ•จํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ ์ ์ ˆํ•œ ๋ณดํ˜ธ ๋ฐ ๊ฐœ์ธ์ •๋ณด ์ฒ˜๋ฆฌ ์ •์ฑ…์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž์˜ ๋™์˜๋ฅผ ์–ป์ง€ ์•Š์€ ์ฟ ํ‚ค ์‚ฌ์šฉ์€ ๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ ๋ฒ•๊ทœ๋ฅผ ์œ„๋ฐ˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ณด์™„ํ•˜๋ ค๋ฉด?

์ถ”๊ฐ€์ ์ธ ๋ณด์•ˆ ๋ฉ”์ปค๋‹ˆ์ฆ˜(์˜ˆ: CSRF(Cross-Site Request Forgery) ๋ฐฉ์–ด, ์ฟ ํ‚ค ํ† ํฐ ์‚ฌ์šฉ ๋“ฑ)์„ ๊ตฌํ˜„ํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ์ธ์ฆ ๋ฐฉ๋ฒ•(์˜ˆ: OAuth, ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ)์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.


Session

๋ฌธ์ œ์ 

๋ณด์™„ํ•˜๋ ค๋ฉด?

์„œ๋ฒ„ ์ž‘์—…์ด ํ•„์š”ํ•œ ์ƒํ™ฉ์€ ํŒจ์Šคํ• ๊ฒŒ์š”.

JWT

Social Login

kakao, naver, google

์ฐธ์กฐ1 ์ฐธ์กฐ2

without library

with next-auth