2025๋…„ 12์›” 31์ผยท5๋ถ„ ์ฝ๊ธฐ

๊ณ ๊ฐ ํ‹ฐ์–ด ๊ถŒํ•œ ๋ชจ๋ธ: ํ”Œ๋žœ, ํ•œ๋„, ํ”Œ๋ž˜๊ทธ

ํ”Œ๋žœ, ํ•œ๋„, ํ”Œ๋ž˜๊ทธ์— ๋Œ€ํ•œ ๋ช…ํ™•ํ•œ ์Šคํ‚ค๋งˆ๋กœ ๊ถŒํ•œ ๋ชจ๋ธ์„ ์„ค๊ณ„ํ•ด ์„œํฌํŠธ์™€ ๊ด€๋ฆฌ์ž๊ฐ€ ์—”์ง€๋‹ˆ์–ด๋ง ์—†์ด ์•ˆ์ „ํ•˜๊ฒŒ ๊ณ ๊ฐ ์ ‘๊ทผ์„ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜์„ธ์š”.

๊ณ ๊ฐ ํ‹ฐ์–ด ๊ถŒํ•œ ๋ชจ๋ธ: ํ”Œ๋žœ, ํ•œ๋„, ํ”Œ๋ž˜๊ทธ

ํŒ€์— ๊ถŒํ•œ ๋ชจ๋ธ์ด ํ•„์š”ํ•œ ์ด์œ 

์—ฌ๋Ÿฌ ํ‹ฐ์–ด๋ฅผ ํŒ๋งคํ•˜๋ฉด ๊ฒฐ๊ตญ ๊ฐ™์€ ์„œํฌํŠธ ํ‹ฐ์ผ“์„ ๋ฐ›๊ฒŒ ๋ฉ๋‹ˆ๋‹ค: โ€œ๊ณ ๊ฐ X๊ฐ€ Pro๋ฅผ ๊ฒฐ์ œํ–ˆ๋Š”๋ฐ ๊ธฐ๋Šฅ Y์— ์ ‘๊ทผํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.โ€ ๋ช…ํ™•ํ•œ ์‹œ์Šคํ…œ์ด ์—†์œผ๋ฉด ์„œํฌํŠธ๋Š” ์ง์ ‘ ๊ณ ์น  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋‹จ์ˆœํ•œ ์ ‘๊ทผ ๋ณ€๊ฒฝ์ด ์—”์ง€๋‹ˆ์–ด๋ง ์ž‘์—…์œผ๋กœ ๋ฐ”๋€๋‹ˆ๋‹ค.

๋” ํฐ ๋ฌธ์ œ๋Š” ์ผ๊ด€์„ฑ ๊ฒฐ์—ฌ์ž…๋‹ˆ๋‹ค. ์ ‘๊ทผ ๊ทœ์น™์ด ์ œํ’ˆ ์ „๋ฐ˜์— ํฉ์–ด์ง‘๋‹ˆ๋‹ค: ๊ด€๋ฆฌ์ž ํ™”๋ฉด์˜ ์ฒดํฌ๋ฐ•์Šค, API์˜ ํ•˜๋“œ์ฝ”๋”ฉ ๊ฒ€์‚ฌ, ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ์˜ ๋ฉ”๋ชจ, ์ง€๋‚œ ๋ถ„๊ธฐ์— ์ ์šฉํ•œ ์ผํšŒ์„ฑ DB ์—…๋ฐ์ดํŠธ ๋“ฑ. ๊ณ ๊ฐ์€ ๊ณณ๊ณณ์—์„œ ๋‹ค๋ฅธ ๋™์ž‘์„ ๋ณด๊ณ , ์–ด๋–ค ๊ทœ์น™์ด ์ง„์งœ์ธ์ง€ ์•„๋ฌด๋„ ํ™•์‹ ํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ชจ๋ธ์€ ํ”Œ๋žœ๊ณผ ์Šน์ธ๋œ ์˜ˆ์™ธ์— ๊ธฐ๋ฐ˜ํ•ด ๋ˆ„๊ฐ€ ๋ฌด์—‡์„ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ๋‹จ์ผ ์ถœ์ฒ˜์˜ ์ง„์‹ค์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ํ‹ฐ์–ด๋ฅผ ์˜ˆ์ธก ๊ฐ€๋Šฅํ•˜๊ฒŒ ์œ ์ง€ํ•ด(๊ทธ๋ž˜์„œ ๊ฐ€๊ฒฉ์ด ์‹ ๋ขฐ๋ฐ›์„ ์ˆ˜ ์žˆ๊ฒŒ) ํ˜„์‹ค์ ์ธ ์ƒํ™ฉ๋„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค: ์ž„์‹œ ์—…๊ทธ๋ ˆ์ด๋“œ, ์ฟผํ„ฐ ์ƒํ–ฅ, ํŠน์ • ๊ณ„์ •์— ๋Œ€ํ•œ ํŒŒ์ผ๋Ÿฟ ๊ธฐ๋Šฅ ๋“ฑ.

โ€œ์—”์ง€๋‹ˆ์–ด๋ง ์—†์ด ์กฐ์ •โ€์€ ๊ตฌ์ฒด์ ์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

  • ์„œํฌํŠธ๋Š” ๋ฐฐํฌ๋ฅผ ์š”์ฒญํ•˜์ง€ ์•Š๊ณ  ๊ด€๋ฆฌ ๋„๊ตฌ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ํŽธ์ง‘ํ•ด ์ ‘๊ทผ์„ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.
  • ์ œํ’ˆ์˜ ๋ชจ๋“  ๋ถ€๋ถ„(๋ฐฑ์—”๋“œ, ์›น์•ฑ, ๋ชจ๋ฐ”์ผ)์€ ๋™์ผํ•œ ๊ถŒํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์Šต๋‹ˆ๋‹ค.
  • ์˜ˆ์™ธ๋Š” ์‹œ๊ฐ„ ์ œํ•œ์ด ์žˆ๊ณ  ๋˜๋Œ๋ฆด ์ˆ˜ ์žˆ์œผ๋ฉฐ ์˜๊ตฌ์ ์ธ ํ•ดํ‚น์ด ์•„๋‹™๋‹ˆ๋‹ค.
  • ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ๋ˆ„๊ฐ€, ์–ธ์ œ, ์™œ ํ–ˆ๋Š”์ง€ ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ๋น„์ฆˆ๋‹ˆ์Šค ํ‹ฐ์–ด์˜ ๊ณ ๊ฐ์ด ๋ฐ”์œ ์‹œ์ฆŒ์— ํ™œ์„ฑ ์‚ฌ์šฉ์ž ์ˆ˜ ํ•œ๋„์— ๊ฑธ๋ ธ๋‹ค๋ฉด ์„œํฌํŠธ๋Š” 14์ผ ๋™์•ˆ ์ขŒ์„์„ 10์„ ์ถ”๊ฐ€๋กœ ๋ถ€์—ฌํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•˜๋ฉฐ, ์‹œ์Šคํ…œ์€ ๊ธฐ๊ฐ„์ด ๋๋‚˜๋ฉด ์ž๋™์œผ๋กœ ๋˜๋Œ๋ ค์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์—”์ง€๋‹ˆ์–ด๋ง์ด ๊ด€์—ฌํ•˜๋Š” ๊ฒฝ์šฐ๋Š” ์™„์ „ํžˆ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ๋•Œ๋กœ ํ•œ์ •๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ ๊ตฌ์„ฑ ์š”์†Œ: ๊ณ ๊ฐ, ํ”Œ๋žœ, ๊ถŒํ•œ

์ข‹์€ ๊ถŒํ•œ ๋ชจ๋ธ์€ ๋ช‡ ๊ฐ€์ง€ ๋ช…ํ™•ํ•œ ๊ฐ์ฒด์™€ ๋ช…ํ™•ํ•œ ์†Œ์œ ๊ถŒ์œผ๋กœ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ๋ณธ์ด ๋ชจํ˜ธํ•˜๋ฉด ์„œํฌํŠธ๋Š” ๋งค์ฃผ ์—”์ง€๋‹ˆ์–ด๋ง์— โ€œํ•œ ๊ฐ€์ง€ ์˜ˆ์™ธ๋งŒโ€ ์š”์ฒญํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๊ฐ„๋‹จํ•œ ๋นŒ๋”ฉ ๋ธ”๋ก์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

  • Customer (account/tenant): ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๋Š” ํšŒ์‚ฌ๋‚˜ ๊ฐœ์ธ.
  • Subscription: ์ƒ์—…์  ๊ด€๊ณ„(์ฒดํ—˜, ํ™œ์„ฑ, ์ทจ์†Œ)๋กœ ๋ณดํ†ต ๊ฒฐ์ œ ์‹œ์Šคํ…œ๊ณผ ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค.
  • Plan: ๊ธฐ๋ณธ ์ ‘๊ทผ์„ ์ •์˜ํ•˜๋Š” ๋ช…๋ช…๋œ ํ‹ฐ์–ด(Free, Pro, Enterprise).
  • Entitlement: ํ”Œ๋žœ๊ณผ ์˜ค๋ฒ„๋ผ์ด๋“œ์—์„œ ๋„์ถœ๋œ ์‹ค์ œ ํ—ˆ์šฉ ํ–‰๋™.

๊ถŒํ•œ ํ‰๊ฐ€๋Š” ์ฒญ๊ตฌ์™€ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ์ฒญ๊ตฌ๋Š” โ€œ๋ฌด์—‡์„ ์–ธ์ œ ์ฒญ๊ตฌํ• ์ง€โ€์— ๋‹ตํ•˜๊ณ , ๊ถŒํ•œ์€ โ€œ์ด ๊ณ ๊ฐ์ด ์ง€๊ธˆ ๋ฌด์—‡์„ ํ•  ์ˆ˜ ์žˆ๋Š”๊ฐ€โ€์— ๋‹ตํ•ฉ๋‹ˆ๋‹ค. ๊ณ ๊ฐ์ด ๋ฏธ๋‚ฉ์ด์ง€๋งŒ ์œ ์˜ˆ ๊ธฐ๊ฐ„์— ์žˆ์„ ์ˆ˜ ์žˆ๊ณ , ์™„๋‚ฉ์ด์ง€๋งŒ ์ปดํ”Œ๋ผ์ด์–ธ์Šค ๋•Œ๋ฌธ์— ์ผ์‹œ ์ฐจ๋‹จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ฒฐ์ •๋“ค์„ ๋ถ„๋ฆฌํ•ด ์žฌ๋ฌด๊ฐ€ ์†ก์žฅ์„ ๊ณ ์น˜๋”๋ผ๋„ ์ œํ’ˆ ์ ‘๊ทผ์ด ์‹ค์ˆ˜๋กœ ๋ฐ”๋€Œ์ง€ ์•Š๋„๋ก ํ•˜์„ธ์š”.

์—ฌ๋Ÿฌ ํŒ€์ด ์ด ์„ค์ •์— ์˜์กดํ•ฉ๋‹ˆ๋‹ค:

  • ์ œํ’ˆํŒ€์€ ํ”Œ๋žœ์˜ ์˜๋ฏธ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
  • ์„œํฌํŠธ๋Š” ์ ‘๊ทผ์„ ์•ˆ์ „ํ•˜๊ฒŒ ๋ถ€์—ฌํ•˜๊ฑฐ๋‚˜ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ๋Š” ๋„๊ตฌ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ์„ธ์ผ์ฆˆ ์šด์˜์€ ๋”œ๊ณผ ๊ฐฑ์‹ ์— ๋Œ€ํ•ด ์ผ๊ด€๋œ ๊ทœ์น™์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ์žฌ๋ฌด๋Š” ํŒ๋งค๋œ ๊ฒƒ๊ณผ ์ œ๊ณต๋œ ์ ‘๊ทผ ๊ฐ„์˜ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ๋งคํ•‘์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

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

ํ”Œ๋ž˜๊ทธ, ํ•œ๋„, ์ฟผํ„ฐ: ์ ์ ˆํ•œ ์œ ํ˜• ์„ ํƒํ•˜๊ธฐ

๋Œ€๋ถ€๋ถ„์˜ ํ‹ฐ์–ด๋ง ๋ฌธ์ œ๋Š” ๊ถŒํ•œ์— ์ œ๋Œ€๋กœ ์ด๋ฆ„์„ ๋ถ™์ด๋ฉด ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค. ์„ธ ๊ฐ€์ง€ ์ผ๋ฐ˜ ํƒ€์ž…์ด ์žˆ๊ณ  ๊ฐ๊ฐ ๋‹ค๋ฅธ ์งˆ๋ฌธ์— ๋‹ตํ•ฉ๋‹ˆ๋‹ค:

  • Boolean flags: ์ผœ์ ธ ์žˆ๋‚˜ ๊บผ์ ธ ์žˆ๋‚˜? ์˜ˆ: export_enabled = true.
  • Numeric limits: ํ•œ ๋ฒˆ์— ์–ผ๋งˆ๊ฐ€ ํ—ˆ์šฉ๋˜๋‚˜? ์˜ˆ: max_seats = 10.
  • Quotas: ์‹œ๊ฐ„ ๊ฒฝ๊ณผ์— ๋”ฐ๋ผ ์–ผ๋งˆ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‚˜? ์˜ˆ: api_calls_per_month = 100000.

๊ธฐ๋Šฅ์ด ๋ถ€๋ถ„์ ์œผ๋กœ ๋™์ž‘ํ•˜๋ฉด ์•ˆ ๋˜๋Š” ๊ฒฝ์šฐ ํ”Œ๋ž˜๊ทธ๊ฐ€ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. export๊ฐ€ ๊บผ์ ธ ์žˆ์œผ๋ฉด ๋ฒ„ํŠผ์„ ์ˆจ๊ธฐ๊ณ  ์—”๋“œํฌ์ธํŠธ๋„ ์ฐจ๋‹จํ•˜์„ธ์š”. ํ•œ๋„๋Š” ์ขŒ์„, ํ”„๋กœ์ ํŠธ, ์ €์žฅ๋œ ๋ทฐ์ฒ˜๋Ÿผ ๋ฆฌ์…‹๋˜์ง€ ์•Š๋Š” ์šฉ๋Ÿ‰์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผํ„ฐ๋Š” ์‹œ๊ฐ„์ด ์ค‘์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ถ”๊ฐ€ ์ฃผ์˜๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋ฆฌ์…‹ ๊ทœ์น™์ด ๊ด€๋ฆฌ์ž UI์— ๋ช…ํ™•ํžˆ ๊ธฐ๋ก๋˜์–ด ์žˆ์œผ๋ฉด ์„œํฌํŠธ ํ‹ฐ์ผ“์ด ๊ธ‰๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋ฒ”์œ„(scope)๋„ ํ˜ผ๋ž€์„ ๋ง‰๋Š” ๋˜ ๋‹ค๋ฅธ ๊ฒฐ์ •์ž…๋‹ˆ๋‹ค. โ€œSAML SSO enabledโ€ ๊ฐ™์€ ํ”Œ๋ž˜๊ทธ๋Š” ๋ณดํ†ต ๊ณ„์ • ์ˆ˜์ค€์ž…๋‹ˆ๋‹ค. โ€œMax projectsโ€๋Š” ์›Œํฌ์ŠคํŽ˜์ด์Šค ์ˆ˜์ค€์ผ ์ˆ˜ ์žˆ๊ณ , โ€œCan run reportsโ€๋Š” ์—ญํ•  ๊ธฐ๋ฐ˜ ์• ๋“œ์˜จ์„ ํŒ๋งคํ•˜๋ฉด ์‚ฌ์šฉ์ž ์ˆ˜์ค€์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฟผํ„ฐ์˜ ๊ฒฝ์šฐ ํ•˜๋‚˜์˜ ๋ฆฌ์…‹ ๊ทœ์น™์„ ์„ ํƒํ•˜๊ณ  ์ง€ํ‚ค์„ธ์š”:

  • Never (ํ‰์ƒ ํฌ๋ ˆ๋”ง)
  • Monthly (๋‹ฌ๋ ฅ์›”)
  • Rolling window (์ตœ๊ทผ 30์ผ)
  • Per billing period (์ฒญ๊ตฌ ์ฃผ๊ธฐ์™€ ์ผ์น˜)

๋ฆฌ์…‹ ๊ทœ์น™์ด ํ”Œ๋žœ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง„๋‹ค๋ฉด ๊ทธ ๊ทœ์น™ ์ž์ฒด๋ฅผ ๊ถŒํ•œ์˜ ์ผ๋ถ€๋กœ ์ทจ๊ธ‰ํ•˜์„ธ์š”. ์•”๋ฌต์  ์ง€์‹์œผ๋กœ ๋‘์ง€ ๋งˆ์„ธ์š”.

๊ถŒํ•œ์„ ์œ„ํ•œ ์‹ค์šฉ์  DB ์Šคํ‚ค๋งˆ

์„œํฌํŠธ ์นœํ™”์  ๊ถŒํ•œ ๋ชจ๋ธ์€ ๋ณดํ†ต ๋‹จ์ˆœํ•œ ํ˜•ํƒœ๊ฐ€ ๊ฐ€์žฅ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค: ๋ช‡ ๊ฐœ์˜ ํ…Œ์ด๋ธ”, ๋ช…ํ™•ํ•œ ํ‚ค, ๊ฐ์‚ฌ ๊ฐ€๋Šฅํ•œ ์‹œ๊ฐ„ ๊ธฐ๋ฐ˜ ๋ ˆ์ฝ”๋“œ. ๋ชฉํ‘œ๋Š” ๊ด€๋ฆฌ์ž๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ํŽธ์ง‘ํ•ด ์ ‘๊ทผ์„ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๊ณ  ์ฝ”๋“œ ๋ฐฐํฌ๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋„ค ๊ฐ€์ง€ ํ•ต์‹ฌ ํ…Œ์ด๋ธ”๋กœ ์‹œ์ž‘ํ•˜์„ธ์š”: plans, plan_entitlements, customers, customer_overrides.

  • Plans๋Š” ํ‹ฐ์–ด(Free, Pro, Enterprise)๋ฅผ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.
  • Plan entitlements๋Š” ๊ฐ ํ”Œ๋žœ์ด ํฌํ•จํ•˜๋Š” ํ•ญ๋ชฉ์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.
  • Customers๋Š” ํ”Œ๋žœ์„ ๊ฐ€๋ฆฌํ‚ต๋‹ˆ๋‹ค.
  • Overrides๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ํ”Œ๋žœ์„ ๋ฐ”๊พธ์ง€ ์•Š๊ณ  ๋‹จ์ผ ๊ณ ๊ฐ์— ๋Œ€ํ•œ ์˜ˆ์™ธ๋ฅผ ๋‹ค๋ฃน๋‹ˆ๋‹ค.

์ž˜ ์ž‘๋™ํ•˜๋Š” ๊ฐ„๊ฒฐํ•œ ๊ด€๊ณ„ํ˜• ๊ตฌ์กฐ ์˜ˆ์‹œ:

  • plans: id, name, description, is_active
  • plan_entitlements: id, plan_id, key, type, value, unit, reset_policy, effective_from, effective_to, created_by
  • customers: id, name, plan_id, status, created_at
  • customer_overrides: id, customer_id, key, type, value, unit, reset_policy, effective_from, effective_to, created_by

๊ถŒํ•œ ํ•„๋“œ๋Š” ํ…Œ์ด๋ธ” ๊ฐ„์— ์ผ๊ด€๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. seats, api_calls, sso_enabled ๊ฐ™์€ ์•ˆ์ •์ ์ธ key๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”. type์€ ํ‰๊ฐ€๋ฅผ ๋‹จ์ˆœํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ: flag, limit, quota). unit์„ ๋ช…์‹œ์ ์œผ๋กœ ์ €์žฅํ•˜์„ธ์š”(์˜ˆ: users, requests, GB). ์ฟผํ„ฐ์˜ ๊ฒฝ์šฐ reset_policy๋ฅผ ๋ช…ํ™•ํžˆ(monthly, daily, never) ํ•˜์„ธ์š”.

์˜ค๋ฒ„๋ผ์ด๋“œ๋Š” ๋‚ ์งœ๊ฐ€ ์žˆ๋Š” ํ—ˆ์šฉ ๋ชฉ๋ก(allowlist)์ฒ˜๋Ÿผ ๋™์ž‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ณ ๊ฐ์—๊ฒŒ ํ™œ์„ฑ ์˜ค๋ฒ„๋ผ์ด๋“œ๋กœ sso_enabled=true๊ฐ€ ์žˆ์œผ๋ฉด ํ”Œ๋žœ ๊ฐ’๋ณด๋‹ค ์šฐ์„ ํ•˜๋ฉฐ effective_from๊ณผ effective_to ๋ฒ”์œ„ ๋‚ด์—์„œ๋งŒ ์ ์šฉ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด โ€œ14์ผ ๋™์•ˆ 10์„ ์ถ”๊ฐ€โ€๊ฐ€ ํ•œ ์ค„์˜ ๋ณ€๊ฒฝ์œผ๋กœ ์ž๋™ ๋งŒ๋ฃŒ๋˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ํ‰๊ฐ€(Entitlement evaluation) ๋ฐฉ์‹

ํ‹ฐ์–ด๋ฅผ ์•ˆ์ •์ ์ธ ํ‚ค๋กœ ์ „ํ™˜ํ•˜์„ธ์š”
ํ”Œ๋ž˜๊ทธ, ํ•œ๋„, ์ฟผํ„ฐ๋ฅผ ํ•˜๋‚˜์˜ ๊ณตํ†ต ๊ถŒํ•œ ์นดํƒˆ๋กœ๊ทธ๋กœ ๊ตฌํ˜„ํ•˜์„ธ์š”.
์•ฑ ๋งŒ๋“ค๊ธฐ

๊ถŒํ•œ ํ‰๊ฐ€๋Š” โ€œ์ด ๊ณ ๊ฐ์ด ์ง€๊ธˆ ์ด๊ฑธ ํ•  ์ˆ˜ ์žˆ๋‚˜?โ€๋ผ๋Š” ์งˆ๋ฌธ์— ๋‹ตํ•˜๋Š” ์ž‘์€ ์ฝ”๋“œ ์กฐ๊ฐ(๋˜๋Š” ์„œ๋น„์Šค)์ž…๋‹ˆ๋‹ค. ์ด ๋ถ€๋ถ„์ด ์˜ˆ์ธก ๊ฐ€๋Šฅํ•˜๋ฉด ๋‚˜๋จธ์ง€ ์šด์˜์ด ํ›จ์”ฌ ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค.

๋ช…ํ™•ํ•œ ์šฐ์„ ์ˆœ์œ„๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ๋ฒ—์–ด๋‚˜์ง€ ๋งˆ์„ธ์š”: ๊ณ ๊ฐ ์˜ค๋ฒ„๋ผ์ด๋“œ \u003e ํ”Œ๋žœ ๊ฐ’ \u003e ์‹œ์Šคํ…œ ๊ธฐ๋ณธ๊ฐ’. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์„œํฌํŠธ๊ฐ€ ํ”Œ๋žœ์„ ๊ฑด๋“œ๋ฆฌ์ง€ ์•Š๊ณ  ์ž„์‹œ ์˜ˆ์™ธ๋ฅผ ๋ถ€์—ฌํ•  ์ˆ˜ ์žˆ๊ณ , ์•„๋ฌด๊ฒƒ๋„ ์„ค์ •๋˜์ง€ ์•Š์•˜์„ ๋•Œ ์—”์ง€๋‹ˆ์–ด๋ง์€ ์•ˆ์ „ํ•œ ๊ธฐ๋ณธ๊ฐ’์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹ค์šฉ์ ์ธ ํ‰๊ฐ€ ํ๋ฆ„:

  • ์ธ์ฆ๋œ ์„ธ์…˜์—์„œ ๊ณ ๊ฐ/๊ณ„์ •์„ ์‹๋ณ„ํ•˜์„ธ์š”(์š”์ฒญ ๋ณธ๋ฌธ์—์„œ ๊ฐ€์ ธ์˜ค์ง€ ๋งˆ์„ธ์š”).
  • ๊ณ ๊ฐ์˜ ํ™œ์„ฑ ํ”Œ๋žœ๊ณผ ํ™œ์„ฑ ์˜ค๋ฒ„๋ผ์ด๋“œ๋ฅผ ๋กœ๋“œํ•˜์„ธ์š”.
  • ์ฃผ์–ด์ง„ ํ‚ค์— ๋Œ€ํ•ด ์˜ค๋ฒ„๋ผ์ด๋“œ๊ฐ€ ์žˆ์œผ๋ฉด ๋ฐ˜ํ™˜ํ•˜๊ณ , ์—†์œผ๋ฉด ํ”Œ๋žœ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๊ณ , ๊ทธ๋ž˜๋„ ์—†์œผ๋ฉด ์‹œ์Šคํ…œ ๊ธฐ๋ณธ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜์„ธ์š”.
  • ํ‚ค๊ฐ€ ์–ด๋””์—๋„ ์—†์œผ๋ฉด ์ ‘๊ทผ ๊ฒ€์‚ฌ์—์„œ๋Š” ๋‹ซํžŒ ์‹คํŒจ(fail closed)๋กœ ์ฒ˜๋ฆฌํ•˜๊ณ (โ€œํ—ˆ์šฉ๋˜์ง€ ์•Š์Œโ€), ํ‘œ์‹œ์šฉ UI์—๋Š” ํ•ฉ๋ฆฌ์  ๊ธฐ๋ณธ๊ฐ’์„ ์‚ฌ์šฉํ•˜์„ธ์š”.
  • ํ‚ค๊ฐ€ ๋“ฑ๋ก๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฉด ๊ตฌ์„ฑ ์˜ค๋ฅ˜๋กœ ์ฒ˜๋ฆฌํ•˜๊ณ  ๋‹ซํžŒ ์‹คํŒจ๋กœ ์ฒ˜๋ฆฌํ•œ ๋’ค ํ›„์† ์กฐ์น˜๋ฅผ ์œ„ํ•ด ๋กœ๊น…ํ•˜์„ธ์š”.

๊ถŒํ•œ์€ ์ž์ฃผ ํ™•์ธ๋˜๋ฏ€๋กœ ์บ์‹ฑ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ณ ๊ฐ๋ณ„๋กœ ํ•ด์„๋œ ๊ถŒํ•œ์„ ์งง์€ TTL๊ณผ ๋ช…์‹œ์  ๋ฒ„์ „ ๋ฒˆํ˜ธ๋กœ ์บ์‹œํ•˜์„ธ์š”. ๋‹ค์Œ์ด ๋ณ€๊ฒฝ๋  ๋•Œ ๋ฌดํšจํ™”ํ•˜์„ธ์š”: ํ”Œ๋žœ ํ• ๋‹น, ํ”Œ๋žœ ์ •์˜, ๊ณ ๊ฐ ์˜ค๋ฒ„๋ผ์ด๋“œ, ๊ณ ๊ฐ ์ƒํƒœ(์ฒดํ—˜, ์œ ์˜ˆ, ์ฐจ๋‹จ). ๊ฐ„๋‹จํ•œ ํŒจํ„ด์€ โ€œcustomer_id + entitlements_version์œผ๋กœ ์บ์‹œโ€ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์„œํฌํŠธ ํŽธ์ง‘์ด ๋ฒ„์ „์„ ์˜ฌ๋ฆฌ๋ฉด ๋ณ€๊ฒฝ์ด ๋น ๋ฅด๊ฒŒ ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค.

๋ฉ€ํ‹ฐํ…Œ๋„Œ์‹œ ์•ˆ์ „์„ฑ์€ ํ•„์ˆ˜์ž…๋‹ˆ๋‹ค. ๋ชจ๋“  ์ฟผ๋ฆฌ๋Š” ํ˜„์žฌ ๊ณ ๊ฐ/๊ณ„์ • id๋กœ ํ•„ํ„ฐ๋ง๋˜์–ด์•ผ ํ•˜๊ณ , ๋ชจ๋“  ์บ์‹œ ํ•ญ๋ชฉ์€ ํ•ด๋‹น id๋กœ ํ‚ค๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฉ”์ผ, ๋„๋ฉ”์ธ, ํ”Œ๋žœ ์ด๋ฆ„๋งŒ์œผ๋กœ ๊ถŒํ•œ์„ ์กฐํšŒํ•˜์ง€ ๋งˆ์„ธ์š”.

๋‹จ๊ณ„๋ณ„: ์„œํฌํŠธ๊ฐ€ ์ ‘๊ทผ์„ ์กฐ์ •ํ•˜๊ธฐ ์‰ฌ์šด ์›Œํฌํ”Œ๋กœ

ํ•ดํ‚น ์—†์ด ์˜ˆ์™ธ ์ฒ˜๋ฆฌํ•˜๊ธฐ
์ž๋™์œผ๋กœ ๋งŒ๋ฃŒ๋˜๋Š” ์ถ”๊ฐ€ ์ขŒ์„ ๊ฐ™์€ ๊ธฐ๊ฐ„ํ•œ์ • ์˜ˆ์™ธ๋ฅผ ์ถ”๊ฐ€ํ•˜์„ธ์š”.
์ง€๊ธˆ ๊ตฌ์ถ•ํ•˜๊ธฐ

์„œํฌํŠธ ์นœํ™”์  ์›Œํฌํ”Œ๋กœ๋Š” ๋ชจ๋ธ์„ ์œ ์—ฐํ•˜๊ฒŒ ์œ ์ง€ํ•˜๋˜ ๋ชจ๋“  ์˜ˆ์™ธ๊ฐ€ ์—”์ง€๋‹ˆ์–ด๋ง ๋ฌธ์ œ๋กœ ๋ฐ”๋€Œ์ง€ ์•Š๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ๋ชฉํ‘œ๋Š” ๋ณ€๊ฒฝ์„ ์•ˆ์ „ํ•˜๊ฒŒ ์ˆ˜ํ–‰ํ•˜๊ณ  ํ”์ ์„ ๋‚จ๊ธฐ๋ฉฐ ๊ณ ๊ฐ ๊ฒฝํ—˜์„ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์•ˆ์ „ํ•œ ์„œํฌํŠธ ํ๋ฆ„

๋จผ์ € ์˜ฌ๋ฐ”๋ฅธ ๊ณ ๊ฐ ๋ ˆ์ฝ”๋“œ๋ฅผ ์ฐพ๊ณ  ๊ทธ๋“ค์ด ๋ฌด์—‡์„ ์š”์ฒญํ•˜๋Š”์ง€, ์™œ ์š”์ฒญํ•˜๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”. โ€œ์ผ์ฃผ์ผ ๋™์•ˆ ์ขŒ์„ 2๊ฐœ ๋” ํ•„์š”โ€๋Š” โ€œ์šฐ๋ฆฌ๊ฐ€ ์ƒ์œ„ ํ‹ฐ์–ด๋กœ ๊ณ„์•ฝ์„ ๋ณ€๊ฒฝํ–ˆ๋‹คโ€์™€ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ์ข‹์€ ๊ด€๋ฆฌ์ž UI๋Š” ํ˜„์žฌ ํ”Œ๋žœ, ๊ณ ๊ฐ ์ƒํƒœ, ํ™œ์„ฑ ์˜ค๋ฒ„๋ผ์ด๋“œ๋ฅผ ํ•œ ํ™”๋ฉด์—์„œ ์‰ฝ๊ฒŒ ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ฌด์–ธ๊ฐ€๋ฅผ ๋ณ€๊ฒฝํ•˜๊ธฐ ์ „์— ํ˜„์žฌ ์‚ฌ์šฉ๋Ÿ‰์„ ๊ด€๋ จ ํ•œ๋„๋‚˜ ์ฟผํ„ฐ์™€ ๋น„๊ตํ•ด ํ™•์ธํ•˜์„ธ์š”. ๋งŽ์€ ์š”์ฒญ์€ ๊ณ„์ •์ด ์‹ค์ œ๋กœ ํ•œ๋„์— ๋„๋‹ฌํ•˜์ง€ ์•Š์•˜๊ฑฐ๋‚˜(์˜ˆ: ์‚ฌ์šฉ ์ถ”์ ์ด ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์Œ) ๋ฌธ์ œ์˜ ์›์ธ์ด ๋‹ค๋ฅธ ๊ณณ์ž„์„ ํ™•์ธํ•˜๋ฉด ์‚ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

์กฐ์ •์ด ํ•„์š”ํ•  ๋•Œ๋Š” ํ”Œ๋žœ์„ ํŽธ์ง‘ํ•˜๊ธฐ๋ณด๋‹ค ๋ช…์‹œ์  ์˜ค๋ฒ„๋ผ์ด๋“œ๋ฅผ ์„ ํ˜ธํ•˜์„ธ์š”. ์˜ค๋ฒ„๋ผ์ด๋“œ๋Š” ์ข๊ฒŒ(ํ•œ ๊ฐ€์ง€ ํ”Œ๋ž˜๊ทธ ๋˜๋Š” ํ•œ๋„), ์†Œ์œ ์ž์™€ ์ด์œ ๋ฅผ ํฌํ•จํ•˜๊ณ  ๋งŒ๋ฃŒ์ผ์„ ๊ธฐ๋ณธ์œผ๋กœ ํ•˜์„ธ์š”. ์ž„์‹œ ์˜ˆ์™ธ๋Š” ํ”ํ•˜๊ณ  ์žŠ๊ธฐ ์‰ฝ๊ธฐ ๋•Œ๋ฌธ์— ๋งŒ๋ฃŒ์ผ์„ ํ•„์ˆ˜๋กœ ๋‘์„ธ์š”.

๊ด€๋ฆฌ ๋„๊ตฌ ๋‚ด์˜ ๊ฐ„๋‹จํ•œ ์ฒดํฌ๋ฆฌ์ŠคํŠธ๋Š” ๋ณดํ†ต ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค:

  • ๊ณ ๊ฐ ์‹ ์›, ํ˜„์žฌ ํ”Œ๋žœ, ์š”์ฒญ ์‚ฌ์œ  ํ™•์ธ.
  • ๊ด€๋ จ ์ƒํ•œ์„  ๋Œ€๋น„ ํ˜„์žฌ ์‚ฌ์šฉ๋Ÿ‰ ๊ฒ€ํ† .
  • ๋ฒ”์œ„๊ฐ€ ์ข์€ ์˜ค๋ฒ„๋ผ์ด๋“œ๋ฅผ ์ ์šฉํ•˜๊ณ  ๋งŒ๋ฃŒ์ผ ์„ค์ •.
  • ๋ฉ”๋ชจ์™€ ํ‹ฐ์ผ“/์‚ฌ๋ก€ ์ฐธ์กฐ ์ถ”๊ฐ€.
  • ์ž„์‹œ ๊ณ„์ •์ด๋‚˜ ์ž„ํ”„์Šจ๋„ค์ด์…˜์œผ๋กœ ์ œํ’ˆ UI์—์„œ ๊ฒฐ๊ณผ ํ™•์ธ.

ํ•ญ์ƒ ๊ณ ๊ฐ์ด ๊ฒฝํ—˜ํ•  ๋ฐฉ์‹์œผ๋กœ ๋ณ€๊ฒฝ์„ ๊ฒ€์ฆํ•˜์„ธ์š”. ์ž„ํ”„์Šจ๋„ค์ด์…˜ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋ฉด ํ™œ์„ฑํ™” ์—ฌ๋ถ€๋ฅผ ๋ช…ํ™•ํžˆ ํ‘œ์‹œํ•˜๊ณ  ๋กœ๊น…ํ•˜์„ธ์š”.

์—…๊ทธ๋ ˆ์ด๋“œ, ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ, ์ฒดํ—˜, ์œ ์˜ˆ ๊ธฐ๊ฐ„

๋Œ€๋ถ€๋ถ„์˜ ๊ถŒํ•œ ๋ฌธ์ œ๋Š” ๋ณ€๊ฒฝ ์‹œ์— ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค: ๊ณ ๊ฐ์ด ์‚ฌ์ดํด ์ค‘๊ฐ„์— ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๊ฑฐ๋‚˜ ์นด๋“œ ๊ฒฐ์ œ๊ฐ€ ์‹คํŒจํ•˜๊ฑฐ๋‚˜ ์ฒดํ—˜์ด ์ฃผ๋ง์— ๋๋‚˜๋Š” ๊ฒฝ์šฐ ๋“ฑ. ๊ทœ์น™์ด ๋ชจํ˜ธํ•˜๋ฉด ์„œํฌํŠธ๋Š” ์ถ”์ธกํ•˜๊ฒŒ ๋˜๊ณ  ์—”์ง€๋‹ˆ์–ด๋ง์ด ํ˜ธ์ถœ๋ฉ๋‹ˆ๋‹ค.

์—…๊ทธ๋ ˆ์ด๋“œ๋Š” ๋‹จ์ˆœํ•˜๊ฒŒ ์œ ์ง€ํ•˜์„ธ์š”: ์ ‘๊ทผ์€ ๋ณดํ†ต ์ฆ‰์‹œ ๋ณ€๊ฒฝ๋˜๊ณ  ๊ธˆ์ „ ์„ธ๋ถ€์‚ฌํ•ญ์€ ์ฒญ๊ตฌ์— ๋‚จ๊น๋‹ˆ๋‹ค. ๊ถŒํ•œ ๋ชจ๋ธ์€ โ€œํ”Œ๋žœ ๋ณ€๊ฒฝโ€ ๊ฐ™์€ ์ฒญ๊ตฌ ์ด๋ฒคํŠธ๋ฅผ ๋“ฃ๊ณ  ์ƒˆ ํ”Œ๋žœ ๊ถŒํ•œ์„ ์ฆ‰์‹œ ์ ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฒญ๊ตฌ๊ฐ€ ์ •์‚ฐ(proration)์„ ์ฒ˜๋ฆฌํ•œ๋‹ค๋ฉด ์ข‹์ง€๋งŒ, ๊ถŒํ•œ์— ์ •์‚ฐ ์ˆ˜ํ•™์„ ์ง‘์–ด๋„ฃ์ง€ ๋งˆ์„ธ์š”.

๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ๋Š” ๋†€๋ผ์›€์ด ์ƒ๊ธฐ๊ธฐ ์‰ฌ์šด ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. ๋ช…ํ™•ํ•œ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ ๋™์ž‘์„ ์„ ํƒํ•˜๊ณ  ์„œํฌํŠธ์—๊ฒŒ ๋ณด์ด๊ฒŒ ํ•˜์„ธ์š”:

  • ์œ ์˜ˆ ๊ธฐ๊ฐ„(Grace): ์œ ๋ฃŒ ๊ธฐ๊ฐ„ ์ข…๋ฃŒ๊นŒ์ง€ ์ƒ์œ„ ์ ‘๊ทผ ์œ ์ง€.
  • ์ฝ๊ธฐ ์ „์šฉ(Read-only): ๋ฐ์ดํ„ฐ ์กฐํšŒ/๋‚ด๋ณด๋‚ด๊ธฐ ํ—ˆ์šฉํ•˜๋˜ ์ƒˆ ์“ฐ๊ธฐ ์ฐจ๋‹จ.
  • ์ฆ‰์‹œ ์ฐจ๋‹จ(Hard stop): ๊ธฐ๋Šฅ์„ ์ฆ‰์‹œ ์ฐจ๋‹จ(์œ„ํ—˜ํ•œ ๊ธฐ๋Šฅ์— ๊ถŒ์žฅ).
  • ํ•œ๋„ ์ดˆ๊ณผ ํ–‰๋™: ์‚ฌ์šฉ์€ ํ—ˆ์šฉํ•˜์ง€๋งŒ ์ƒ์„ฑ์€ ์ฐจ๋‹จ.
  • ๋ฐ์ดํ„ฐ ๋ณด์กด: ๋ฐ์ดํ„ฐ๋Š” ๋ณด๊ด€ํ•˜๋˜ ์ ‘๊ทผ์„ ๋น„ํ™œ์„ฑํ™”.

์ฒดํ—˜์€ ๊ณ ๊ฐ์˜ ๋ถˆ๋ฆฌํ•œ ์˜ํ–ฅ์„ ์ค„์ด๋ ค๋ฉด ๋‹จ์ˆœํ•œ ํ”Œ๋žœ์œผ๋กœ ์ทจ๊ธ‰ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ฒดํ—˜ ํ”Œ๋žœ์— ๋ช…ํ™•ํ•œ ํ”Œ๋ž˜๊ทธ์™€ ํ•œ๋„, ์ž๋™ ๋งŒ๋ฃŒ ๊ทœ์น™์„ ๋‘๊ณ  ์ฒดํ—˜ ์ข…๋ฃŒ ์‹œ ๊ธฐ๋ณธ ํ”Œ๋žœ(๋ณดํ†ต โ€œFreeโ€)์œผ๋กœ ์ด๋™์‹œํ‚ค๋ฉฐ ์ •์˜ํ•œ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ ๋™์ž‘์„ ์ ์šฉํ•˜์„ธ์š”.

์ฒญ๊ตฌ ์‹คํŒจ์— ๋Œ€ํ•œ ์œ ์˜ˆ ๊ธฐ๊ฐ„๋„ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ์งง์€ โ€œ์—ฐ์ฒดโ€ ์ฐฝ(์˜ˆ: 3~7์ผ)์€ ๊ฒฐ์ œ๋ฅผ ์ˆ˜์ •ํ•  ์‹œ๊ฐ„์„ ์ฃผ์–ด ์ž‘์—… ์ค‘ ์ ‘๊ทผ์„ ์žƒ์ง€ ์•Š๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ์œ ์˜ˆ ๊ธฐ๊ฐ„์€ ์‹œ๊ฐ„ ๊ธฐ๋ฐ˜ ์˜ค๋ฒ„๋ผ์ด๋“œ๋กœ ์ฒ˜๋ฆฌํ•˜์„ธ์š”, ์ปค์Šคํ…€ ํ”Œ๋žœ ์ด๋ฆ„์œผ๋กœ ์ฒ˜๋ฆฌํ•˜์ง€ ๋งˆ์„ธ์š”.

์‹ค์šฉ์ ์ธ ํŒ: ๊ถŒํ•œ์„ ๋งˆ์ผ€ํŒ… ํ‹ฐ์–ด ์ด๋ฆ„(์˜ˆ: โ€œProโ€, โ€œEnterpriseโ€)์— ์ง์ ‘ ๋ฌถ์ง€ ๋งˆ์„ธ์š”. ๋‚ด๋ถ€์ ์œผ๋กœ ์•ˆ์ •์ ์ธ ํ”Œ๋žœ ID(์˜ˆ: plan_basic_v2)๋ฅผ ์‚ฌ์šฉํ•ด ํ‹ฐ์–ด ์ด๋ฆ„์„ ๋ฐ”๊ฟ”๋„ ๊ทœ์น™์ด ๊นจ์ง€์ง€ ์•Š๊ฒŒ ํ•˜์„ธ์š”.

๊ฐ์‚ฌ์™€ ์•ˆ์ „ ํ†ต์ œ

์„œํฌํŠธ ํ๋ฆ„์„ ๋น ๋ฅด๊ฒŒ ํ…Œ์ŠคํŠธํ•˜์„ธ์š”
๊ถŒํ•œ ์›Œํฌํ”Œ๋กœ๋ฅผ ์—”๋“œํˆฌ์—”๋“œ๋กœ ํ”„๋กœํ† ํƒ€์ž…ํ•˜๊ณ  ์žฌ์ž‘์„ฑ ์—†์ด ๋ฐ˜๋ณตํ•˜์„ธ์š”.
ํ”„๋กœํ† ํƒ€์ž… ๋งŒ๋“ค๊ธฐ

์„œํฌํŠธ๊ฐ€ ์—”์ง€๋‹ˆ์–ด๋ง ์—†์ด ์ ‘๊ทผ์„ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋‹ค๋ฉด ๋ณ€๊ฒฝ ํ”์ ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ข‹์€ ๊ถŒํ•œ ๋ชจ๋ธ์€ ๋ชจ๋“  ๋ณ€๊ฒฝ์„ ๊ธฐ๋ก๋œ ๊ฒฐ์ •์œผ๋กœ ์ทจ๊ธ‰ํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  ์˜ค๋ฒ„๋ผ์ด๋“œ์— ๋Œ€ํ•ด ํ–‰์œ„์ž(actor), ๋น„์ฆˆ๋‹ˆ์Šค ์ด์œ , ํƒ€์ž„์Šคํƒฌํ”„๋ฅผ ์บก์ฒ˜ํ•˜์„ธ์š”. ์กฐ์ง์ด ํ•„์š”ํ•˜๋ฉด ๋ฏผ๊ฐํ•œ ๋ณ€๊ฒฝ์— ์Šน์ธ ๋‹จ๊ณ„๋ฅผ ์ถ”๊ฐ€ํ•˜์„ธ์š”.

๋ณ€๊ฒฝ ์‹œ ๊ธฐ๋กํ•  ํ•ญ๋ชฉ

๊ธฐ๋ก์€ ์‹ค๋ฌด์—์„œ ์‹ค์ œ๋กœ ์‚ฌ์šฉ๋˜๋„๋ก ๋‹จ์ˆœํ•˜๊ฒŒ ์œ ์ง€ํ•˜์„ธ์š”:

  • created_by์™€ created_at
  • approved_by์™€ approved_at(์„ ํƒ ์‚ฌํ•ญ)
  • reason(์งง์€ ํ…์ŠคํŠธ, ์˜ˆ: โ€œpaid add-onโ€ ๋˜๋Š” โ€œincident creditโ€)
  • previous_value์™€ new_value
  • expires_at

์•ˆ์ „ ํ†ต์ œ๋Š” ์‹ค์ˆ˜๋ฅผ ํ”„๋กœ๋•์…˜์— ๋„๋‹ฌํ•˜๊ธฐ ์ „์— ๋ง‰์Šต๋‹ˆ๋‹ค. ๊ด€๋ฆฌ์ž UI์™€ DB์— ๊ฐ€๋“œ๋ ˆ์ผ์„ ๋‘์„ธ์š”: ์ตœ๋Œ€๊ฐ’ ์ œํ•œ, ์Œ์ˆ˜ ๊ฐ’ ์ฐจ๋‹จ, ํฐ ๋ณ€๊ฒฝ ์‹œ ๋งŒ๋ฃŒ์ผ ์š”๊ตฌ(์˜ˆ: API ํ˜ธ์ถœ์„ 10๋ฐฐ๋กœ ์˜ฌ๋ฆด ๋•Œ) ๋“ฑ.

๋กค๋ฐฑ ๋ฐ ๊ฐ์‚ฌ ์ค€๋น„

์„œํฌํŠธ๋Š” ์‹ค์ˆ˜๋ฅผ ํ•ฉ๋‹ˆ๋‹ค. ๊ณ ๊ฐ ์ˆ˜์ค€ ์˜ค๋ฒ„๋ผ์ด๋“œ๋ฅผ ์ง€์šฐ๊ณ  ํ• ๋‹น๋œ ํ”Œ๋žœ์œผ๋กœ ๊ณ„์ •์„ ๋˜๋Œ๋ฆฌ๋Š” ๋‹จ์ผ โ€œํ”Œ๋žœ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ๋˜๋Œ๋ฆฌ๊ธฐโ€ ๋™์ž‘์„ ์ œ๊ณตํ•˜์„ธ์š”.

๊ฐ์‚ฌ๋ฅผ ์œ„ํ•ด ๊ณ ๊ฐ๊ณผ ๋‚ ์งœ ๋ฒ”์œ„๋ณ„๋กœ ๊ธฐ๋ก์„ ๋‚ด๋ณด๋‚ด๊ธฐ ์‰ฝ๊ฒŒ ํ•˜์„ธ์š”. ์ด์œ ์™€ ์Šน์ธ์ž๋ฅผ ํฌํ•จํ•œ ๊ธฐ๋ณธ CSV ๋‚ด๋ณด๋‚ด๊ธฐ๊ฐ€ ๋Œ€๋ถ€๋ถ„์˜ ์งˆ๋ฌธ์— ๋‹ตํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ: Pro ๊ณ ๊ฐ์ด ์ผ์ฃผ์ผ ํ–‰์‚ฌ๋กœ 30์„์„ ์ถ”๊ฐ€๋กœ ํ•„์š”๋กœ ํ•˜๋ฉด ์„œํฌํŠธ๋Š” seats_override=60๊ณผ expires_at์„ ๋‹ค์Œ ๊ธˆ์š”์ผ๋กœ ์„ค์ •ํ•˜๊ณ  ์ด์œ ์— โ€œeventโ€๋ฅผ ์ ๊ณ  ๊ด€๋ฆฌ์ž ์Šน์ธ์„ ๋ฐ›์Šต๋‹ˆ๋‹ค. ๋งŒ๋ฃŒ ํ›„ ์‹œ์Šคํ…œ์€ ์ž๋™์œผ๋กœ 30์œผ๋กœ ๋Œ์•„๊ฐ€๋ฉฐ ์ฒญ๊ตฌ ๋ถ„์Ÿ ์‹œ ํ•„์š”ํ•œ ์ „์ฒด ๊ธฐ๋ก์ด ๋‚จ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ์„ ์–ด๋ ต๊ฒŒ ๋งŒ๋“œ๋Š” ํ”ํ•œ ์‹ค์ˆ˜๋“ค

๊ถŒํ•œ ๋ชจ๋ธ์„ ๋ง์น˜๋Š” ๊ฐ€์žฅ ๋น ๋ฅธ ๋ฐฉ๋ฒ•์€ ์˜๋„์น˜ ์•Š๊ฒŒ ์„ฑ์žฅ์„ ํ—ˆ์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ดˆ๊ธฐ์˜ ๋ช‡ ๊ฐ€์ง€ ํŽธ๋ฒ•์€ ์ˆ˜๊ฐœ์›”๊ฐ„์˜ ์„œํฌํŠธ ํ‹ฐ์ผ“๊ณผ โ€œ์™œ ์ด ๊ณ ๊ฐ์ด ์ € ๊ธฐ๋Šฅ์„ ์“ธ ์ˆ˜ ์žˆ์ง€?โ€๋ผ๋Š” ์†Œ๋ฐฉ์ „์œผ๋กœ ์ด์–ด์ง‘๋‹ˆ๋‹ค.

ํ•œ ๊ฐ€์ง€ ํ”ํ•œ ๋ฌธ์ œ๋Š” ๊ธฐ๋Šฅ ๊ฒ€์‚ฌ๋ฅผ ์—ฌ๋Ÿฌ ๊ณณ์— ํฉํŠธ๋ฆฌ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์•ฑ์˜ ๋‹ค๋ฅธ ๋ถ€๋ถ„์ด ์„œ๋กœ ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผ์„ ๊ฒฐ์ •ํ•˜๋ฉด ๋ชจ์ˆœ์ด ์ƒ๊น๋‹ˆ๋‹ค. ๊ถŒํ•œ ํ‰๊ฐ€๋Š” ํ•˜๋‚˜์˜ ํ•จ์ˆ˜๋‚˜ ์„œ๋น„์Šค๋กœ ์ค‘์•™ํ™”ํ•˜๊ณ  ๋ชจ๋“  UI์™€ API๊ฐ€ ์ด๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ํ•˜์„ธ์š”.

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

๋‹จ์ผ ํ‹ฐ์–ด ๋ฌธ์ž์—ด(์˜ˆ: โ€œbasicโ€, โ€œproโ€)๋งŒ์„ ์ง„์‹ค์˜ ์›์ฒœ์œผ๋กœ ์‚ผ์ง€ ๋งˆ์„ธ์š”. ํ‹ฐ์–ด๋Š” ์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉฐ ๋ณ€๊ฒฝ๋˜๊ณ  ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋ช…์‹œ์  ํ”Œ๋ž˜๊ทธ์™€ ํ•œ๋„๋ฅผ ์ €์žฅํ•ด ์„œํฌํŠธ๊ฐ€ ํ•œ ๊ธฐ๋Šฅ๋งŒ ๋ถ€์—ฌํ•ด๋„ ํ•ด๋‹น ํ‹ฐ์–ด์˜ ๋ชจ๋“  ๊ฒƒ์„ ์‹ค์ˆ˜๋กœ ๋ถ€์—ฌํ•˜์ง€ ์•Š๊ฒŒ ํ•˜์„ธ์š”.

์˜ค๋ฒ„๋ผ์ด๋“œ๋Š” ํ•„์š”ํ•˜์ง€๋งŒ ๊ฐ€๋“œ๋ ˆ์ผ ์—†๋Š” ๋ฌด์ œํ•œ ์˜ค๋ฒ„๋ผ์ด๋“œ๋Š” ๋ณด์ด์ง€ ์•Š๋Š” ๋ถ€์ฑ„๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ์†Œ์œ ์ž, ์ด์œ , ํ‹ฐ์ผ“ ์ฐธ์กฐ๋ฅผ ์š”๊ตฌํ•˜์„ธ์š”. ๋งŒ๋ฃŒ์ผ ๋˜๋Š” ๊ฒ€ํ† ์ผ์„ ๊ถŒ์žฅํ•˜์„ธ์š”. ์˜ค๋ฒ„๋ผ์ด๋“œ๋Š” ์ข๊ฒŒ(ํ•œ ํ‚ค์”ฉ) ์œ ์ง€ํ•˜๊ณ  ๊ฐ์‚ฌ๋ฅผ ์‰ฝ๊ฒŒ ํ•˜์„ธ์š”.

์ฟผํ„ฐ๋Š” ๋ฆฌ์…‹ ๊ทœ์น™์ด ๋ชจํ˜ธํ•  ๋•Œ๋„ ์ž˜๋ชป๋ฉ๋‹ˆ๋‹ค. โ€œ์›”๋ณ„โ€์ด ๋‹ฌ๋ ฅ์›”์ธ์ง€ ๋กค๋ง 30์ผ์ธ์ง€, ์—…๊ทธ๋ ˆ์ด๋“œ ์‹œ ์–ด๋–ป๊ฒŒ ๋˜๋Š”์ง€, ์‚ฌ์šฉํ•˜์ง€ ์•Š์€ ์ฟผํ„ฐ๊ฐ€ ์ด์›”๋˜๋Š”์ง€ ๋“ฑ์„ ์ •์˜ํ•˜์„ธ์š”. ์ด๋Ÿฌํ•œ ๊ทœ์น™์€ UI๊ฐ€ ์•„๋‹ˆ๋ผ ๋ฐฑ์—”๋“œ ๋กœ์ง์œผ๋กœ ์‹œํ–‰ํ•ด ์›น๊ณผ ๋ชจ๋ฐ”์ผ ๊ฐ„ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜์„ธ์š”.

๋ฐฐํฌ ์ „ ๋น ๋ฅธ ์ฒดํฌ๋ฆฌ์ŠคํŠธ

๊ด€๋ฆฌ ๋„๊ตฌ๋ฅผ ์›ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ฐฐํฌํ•˜์„ธ์š”
์™„์„ฑ๋œ ์•ฑ์„ ํด๋ผ์šฐ๋“œ์— ๋ฐฐํฌํ•˜๊ฑฐ๋‚˜ ํ•„์š”ํ•˜๋ฉด ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋‚ด๋ณด๋‚ด์„ธ์š”.
AppMaster ์‚ฌ์šฉํ•ด๋ณด๊ธฐ

๊ถŒํ•œ ๋ชจ๋ธ์„ ๋กค์•„์›ƒํ•˜๊ธฐ ์ „์— ๋งค์ผ ์‚ฌ์šฉํ•  ํŒ€๋“ค(์„œํฌํŠธ, CS, ์˜จ์ฝœ ๋‹ด๋‹น์ž)๊ณผ ๋งˆ์ง€๋ง‰ ์ ๊ฒ€์„ ํ•˜์„ธ์š”.

๊ฐ ๊ธฐ๋Šฅ์ด ํ•˜๋‚˜์˜ ์•ˆ์ •์ ์ธ ๊ถŒํ•œ ํ‚ค์— ๋งคํ•‘๋˜๊ณ  ๋ช…ํ™•ํ•œ ์†Œ์œ ์ž๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”. reports_enabled์™€ reporting_enabled ๊ฐ™์€ ์ค‘๋ณต ํ‚ค๋ฅผ ํ”ผํ•˜์„ธ์š”. ์ถœ์‹œํ•˜๋Š” ํ‚ค๋งˆ๋‹ค ํ”Œ๋žœ์— ๋Œ€ํ•œ ๋ช…์‹œ์  ๊ธฐ๋ณธ๊ฐ’์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”. ํ‚ค๊ฐ€ ์—†์œผ๋ฉด ์•ˆ์ „ํ•˜๊ฒŒ ์‹คํŒจ(๋ณดํ†ต ์ ‘๊ทผ ๊ฑฐ๋ถ€)ํ•˜๊ณ  ๋‚ด๋ถ€์ ์œผ๋กœ ๊ฒฝ๊ณ ํ•ด ์ˆ˜์ •๋˜๋„๋ก ํ•˜์„ธ์š”.

์šด์˜ ์ธก๋ฉด์—์„œ ์›Œํฌํ”Œ๋กœ๊ฐ€ ์‹ค์ œ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ์ง€ ํ™•์ธํ•˜์„ธ์š”:

  • ์„œํฌํŠธ๋Š” SQL ์—†์ด๋„ ์œ ํšจ ๊ถŒํ•œ(ํ”Œ๋žœ ๊ธฐ๋ณธ๊ฐ’ + ์˜ค๋ฒ„๋ผ์ด๋“œ)์„ ๋ณผ ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ์˜ค๋ฒ„๋ผ์ด๋“œ๋Š” ๋ˆ„๊ฐ€ ์–ธ์ œ ๋ฌด์—‡์„ ๋ณ€๊ฒฝํ–ˆ๋Š”์ง€, ์™œ ํ–ˆ๋Š”์ง€, ์–ธ์ œ ๋งŒ๋ฃŒ๋˜๋Š”์ง€ ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค.
  • ์ฟผํ„ฐ๋Š” ๊ฐ€์‹œ์ ์ธ ๋ฆฌ์…‹ ๊ทœ์น™๊ณผ ํ˜„์žฌ ์‚ฌ์šฉ๋Ÿ‰์„ ๋ณด์—ฌ์ฃผ๋Š” ๋ช…ํ™•ํ•œ ๋ฐฉ๋ฒ•์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ˜„์‹ค ํ…Œ์ŠคํŠธ: ์„œํฌํŠธ๊ฐ€ ๋‹จ์ผ ๊ณ ๊ฐ์—๊ฒŒ 14์ผ์งœ๋ฆฌ ์• ๋“œ์˜จ์„ ๋ถ€์—ฌํ•œ ๋’ค ์ œ๊ฑฐํ•˜๋„๋ก ํ•ด๋ณด์„ธ์š”. 2๋ถ„ ์ด๋‚ด์— ์ž์‹  ์žˆ๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๊ฑฐ์˜ ์™„๋ฃŒ๋œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์˜ˆ์‹œ ์‹œ๋‚˜๋ฆฌ์˜ค: ์ž„์‹œ ์˜ˆ์™ธ๊ฐ€ ์žˆ๋Š” ํ‹ฐ์–ด

์„œํฌํŠธ์— ์•ˆ์ „ํ•œ ์ ‘๊ทผ ์ œ์–ด ์ œ๊ณต
์—”์ง€๋‹ˆ์–ด๋ง์„ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  ์ ‘๊ทผ ๊ถŒํ•œ์„ ํŽธ์ง‘ํ•  ์ˆ˜ ์žˆ๋Š” ์„œํฌํŠธ ๊ด€๋ฆฌ ํŒจ๋„์„ ๋งŒ๋“œ์„ธ์š”.
๋นŒ๋“œ ์‹œ์ž‘ํ•˜๊ธฐ

์„ธ ๊ฐ€์ง€ ํ‹ฐ์–ด๋ฅผ ์ œ๊ณตํ•˜๊ณ  ๊ฐ ํ‹ฐ์–ด๊ฐ€ ๋ฐฑ์—”๋“œ์—์„œ ์‹œํ–‰๋˜๋Š” ๋ช‡ ๊ฐ€์ง€ ๋ช…ํ™•ํ•œ ๊ถŒํ•œ์„ ์„ค์ •ํ•œ๋‹ค๊ณ  ์ƒ์ƒํ•ด๋ณด์„ธ์š”.

  • Free: 1๊ฐœ ํ”„๋กœ์ ํŠธ, 3๋ช… ์‚ฌ์šฉ์ž, ์›” 200ํšŒ ๋‚ด๋ณด๋‚ด๊ธฐ, ๊ธฐ๋ณธ API ์†๋„ ์ œํ•œ, 7์ผ ๊ฐ์‚ฌ ๋กœ๊ทธ.
  • Team: 10๊ฐœ ํ”„๋กœ์ ํŠธ, 25๋ช… ์‚ฌ์šฉ์ž, ์›” 2,000ํšŒ ๋‚ด๋ณด๋‚ด๊ธฐ, ๋” ๋†’์€ API ์†๋„ ์ œํ•œ, 30์ผ ๊ฐ์‚ฌ ๋กœ๊ทธ.
  • Business: ๋ฌด์ œํ•œ ํ”„๋กœ์ ํŠธ, 200๋ช… ์‚ฌ์šฉ์ž, ์›” 10,000ํšŒ ๋‚ด๋ณด๋‚ด๊ธฐ, ์ตœ๊ณ  API ์†๋„ ์ œํ•œ, 180์ผ ๊ฐ์‚ฌ ๋กœ๊ทธ, SSO ํ™œ์„ฑํ™”.

์ด์ œ Team ๊ณ ๊ฐ์ด โ€œ์ด๋ฒˆ ๋‹ฌ์— 8,000๊ฑด์˜ ๋‚ด๋ณด๋‚ด๊ธฐ๋ฅผ ํ•ด์•ผ ํ•˜๋Š”๋ฐ 30์ผ ๋™์•ˆ ๋„์™€์ค„ ์ˆ˜ ์žˆ๋‚˜์š”?โ€๋ผ๊ณ  ์š”์ฒญํ•œ๋‹ค๊ณ  ํ•ฉ์‹œ๋‹ค. ์ด๋Ÿด ๋•Œ ์ž„์‹œ ์˜ค๋ฒ„๋ผ์ด๋“œ๊ฐ€ ํ”Œ๋žœ ์ด๋™๋ณด๋‹ค ๋‚ซ์Šต๋‹ˆ๋‹ค.

์„œํฌํŠธ๋Š” ๊ณ ๊ฐ ๋ ˆ์ฝ”๋“œ๋ฅผ ์—ด๊ณ  export_monthly_limit = 8000๊ณผ ๊ฐ™์€ ์˜ค๋ฒ„๋ผ์ด๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  expires_at์„ ์˜ค๋Š˜๋กœ๋ถ€ํ„ฐ 30์ผ ํ›„๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”๋ชจ์— โ€œAlex(์˜์—…) ์Šน์ธ, ๋ถ„๊ธฐ ๋ณด๊ณ ์šฉ 30์ผ ์˜ˆ์™ธโ€๋ผ๊ณ  ์ ์Šต๋‹ˆ๋‹ค.

๊ณ ๊ฐ ์ž…์žฅ์—์„œ๋Š” ๋‘ ๊ฐ€์ง€๊ฐ€ ์ผ์–ด๋‚˜์•ผ ํ•ฉ๋‹ˆ๋‹ค:

  • UI๊ฐ€ ์ƒˆ ํ•œ๋„๋ฅผ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค(์‚ฌ์šฉ๋Ÿ‰ ๋ฏธํ„ฐ์™€ โ€œ๋‚จ์€ ๋‚ด๋ณด๋‚ด๊ธฐโ€ ๋ผ๋ฒจ์ด ์—…๋ฐ์ดํŠธ๋จ).
  • ์›” 8,000๊ฑด์— ๋„๋‹ฌํ•  ๋•Œ๊นŒ์ง€ ๋‚ด๋ณด๋‚ด๊ธฐ๊ฐ€ ๊ณ„์† ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์ดˆ๊ณผํ•˜๋ฉด ๋ช…ํ™•ํ•œ ๋ฉ”์‹œ์ง€๊ฐ€ ๋ณด์ž…๋‹ˆ๋‹ค: โ€œ๋‚ด๋ณด๋‚ด๊ธฐ ํ•œ๋„ ๋„๋‹ฌ(8,000/์›”). ์ง€์›์— ๋ฌธ์˜ํ•˜๊ฑฐ๋‚˜ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์„ธ์š”.โ€

๋งŒ๋ฃŒ์ผ ํ›„์—๋Š” ์˜ค๋ฒ„๋ผ์ด๋“œ๊ฐ€ ์ž๋™์œผ๋กœ ์ค‘์ง€๋˜๊ณ  ๊ณ ๊ฐ์€ ์•„๋ฌด๋„ ์ˆ˜๋™์œผ๋กœ ๋„์ง€ ์•Š์•„๋„ Team ํ”Œ๋žœ ํ•œ๋„๋กœ ๋˜๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค.

๋‹ค์Œ ๋‹จ๊ณ„: ์„œํฌํŠธ๋ฅผ ๋Šฆ์ถ”์ง€ ์•Š๊ณ  ๊ตฌํ˜„ํ•˜๊ณ  ๋ฐ˜๋ณตํ•˜์„ธ์š”

๋จผ์ € โ€œ๊ธฐ๋Šฅโ€์„ ์ž‘์€ ๊ถŒํ•œ ์นดํƒˆ๋กœ๊ทธ๋กœ ์ „ํ™˜ํ•˜์„ธ์š”. ๊ฐ ํ•ญ๋ชฉ์— ๋ช…ํ™•ํ•œ ํ‚ค, ํƒ€์ž…(ํ”Œ๋ž˜๊ทธ vs ํ•œ๋„ vs ์ฟผํ„ฐ), ํ”Œ๋žœ๋ณ„ ๊ธฐ๋ณธ๊ฐ’์„ ๋ถ€์—ฌํ•˜์„ธ์š”. ์ด ์นดํƒˆ๋กœ๊ทธ๋Š” ์ œํ’ˆ, ์„œํฌํŠธ, ์—”์ง€๋‹ˆ์–ด๋ง ๊ฐ„์˜ ๊ณตํ†ต ์–ธ์–ด๊ฐ€ ๋˜๋ฏ€๋กœ ์ด๋ฆ„์„ ๊ตฌ์ฒด์ ์ด๊ณ  ์•ˆ์ •์ ์œผ๋กœ ์œ ์ง€ํ•˜์„ธ์š”.

์–ด๋””์—์„œ ๊ฐ•์ œํ• ์ง€ ๊ฒฐ์ •ํ•˜์„ธ์š”. ์•ˆ์ „ํ•œ ๊ทœ์น™์€: ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝ์ด๋‚˜ ๋น„์šฉ์ด ๋ฐœ์ƒํ•˜๋Š” ๋ชจ๋“  ํ•ญ๋ชฉ์€ API์—์„œ ๊ฐ•์ œํ•˜๊ณ , ํ•œ๋„๋ฅผ ์ดˆ๊ณผํ•  ๋•Œ ์žฅ๊ธฐ ์ž‘์—…์„ ์ค‘์ง€ํ•˜๋ ค๋ฉด ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ž‘์—…์„ ์‚ฌ์šฉํ•˜๋ฉฐ, UI๋Š” ์‚ฌ์šฉ์ž ์•ˆ๋‚ด(๋น„ํ™œ์„ฑํ™”๋œ ๋ฒ„ํŠผ, ๋„์›€ ๋ฉ”์‹œ์ง€)๋กœ ์ฒ˜๋ฆฌํ•˜๋˜ ์œ ์ผํ•œ ๊ด€๋ฌธ์œผ๋กœ๋Š” ์‚ผ์ง€ ์•Š๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ฒซ ๋ฒ„์ „์€ ์ž‘๊ฒŒ ์œ ์ง€ํ•˜์„ธ์š”. ๊ฐ€์žฅ ๋งŽ์€ ์งˆ๋ฌธ์„ ์ƒ์„ฑํ•˜๋Š” ๊ถŒํ•œ์— ์ง‘์ค‘ํ•˜๊ณ , ์œ„ํ—˜์ด ํฐ ๋™์ž‘์— ์ฒดํฌ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ , ๊ณ ๊ฐ, ํ”Œ๋žœ, ์˜ค๋ฒ„๋ผ์ด๋“œ, ์ด๋ ฅ์„ ํ•œ ๊ณณ์— ๋ณด์—ฌ์ฃผ๋Š” ๊ด€๋ฆฌ์ž ๋ทฐ๋ฅผ ์ถœ์‹œํ•˜์„ธ์š”.

ํ•ธ๋“œ์ฝ”๋”ฉ ์—†์ด ๊ด€๋ฆฌ์ž ํŒจ๋„๊ณผ ๊ธฐ๋ณธ ๋กœ์ง์„ ๋น ๋ฅด๊ฒŒ ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค๋ฉด AppMaster (appmaster.io)๊ฐ€ ์ด๋Ÿฌํ•œ ์ž‘์—…์— ์‹ค์šฉ์ ์ž…๋‹ˆ๋‹ค: ํ”Œ๋žœ๊ณผ ์˜ค๋ฒ„๋ผ์ด๋“œ๋ฅผ ๋ฐ์ดํ„ฐ๋กœ ๋ชจ๋ธ๋งํ•˜๊ณ , ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค๋กœ ๊ฒ€์‚ฌ๋ฅผ ๊ตฌํ˜„ํ•˜๋ฉฐ, ๋ฐฑ์—”๋“œ์™€ ์•ฑ ์ „๋ฐ˜์—์„œ ์ผ๊ด€๋œ ์„œํฌํŠธ UI๋ฅผ ๋ฐฐ์†กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ

๊ถŒํ•œ ๋ชจ๋ธ์ด๋ž€ ๋ฌด์—‡์ด๋ฉฐ ์™œ ํ•„์š”ํ•ฉ๋‹ˆ๊นŒ?

๊ถŒํ•œ ๋ชจ๋ธ์€ ํ”Œ๋žœ๊ณผ ์Šน์ธ๋œ ์˜ˆ์™ธ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ โ€œ์ง€๊ธˆ ์ด ๊ณ ๊ฐ์ด ๋ฌด์—‡์„ ํ•  ์ˆ˜ ์žˆ๋Š”๊ฐ€โ€๋ฅผ ์ผ๊ด€๋˜๊ฒŒ ๊ฒฐ์ •ํ•˜๋Š” ๋‹จ์ผ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๋ชจ๋“  ์ œํ’ˆ ๋ถ€๋ถ„์ด ๋™์ผํ•œ ๊ทœ์น™์„ ์ฝ๋„๋ก ํ•ด์„œ โ€œUI์—์„œ๋Š” ์ž‘๋™ํ•˜๋Š”๋ฐ API์—์„œ ์‹คํŒจํ•œ๋‹คโ€ ๊ฐ™์€ ์ƒํ™ฉ์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค.

๋ช…ํ™•ํ•œ ๊ถŒํ•œ ์‹œ์Šคํ…œ์ด ์—†์„ ๋•Œ ๋ฌด์—‡์ด ์ž˜๋ชป๋˜๋‚˜์š”?

๋ช…ํ™•ํ•œ ๊ถŒํ•œ ์‹œ์Šคํ…œ์ด ์—†์œผ๋ฉด ์„œํฌํŠธ๊ฐ€ ์ž‘์€ ์ ‘๊ทผ ๋ณ€๊ฒฝ๋„ ์—”์ง€๋‹ˆ์–ด๋ง ์š”์ฒญ์œผ๋กœ ์ „ํ™˜ํ•˜๊ฒŒ ๋˜๊ณ , ๊ณ ๊ฐ์€ ํ™”๋ฉด๊ณผ ์—”๋“œํฌ์ธํŠธ๋งˆ๋‹ค ์ผ๊ด€๋˜์ง€ ์•Š์€ ๋™์ž‘์„ ๋ณด๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด ๊ทœ์น™์ด ์ฝ”๋“œ, ๊ด€๋ฆฌ ์ฒดํฌ๋ฐ•์Šค, ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ, ์ผํšŒ์„ฑ DB ์—…๋ฐ์ดํŠธ ๋“ฑ ์—ฌ๊ธฐ์ €๊ธฐ์— ํฉ์–ด์ ธ์„œ ์žฅ์• ๋‚˜ ์ฒญ๊ตฌ ๋ถ„์Ÿ์ด ๋ฐœ์ƒํ•˜๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ์€ ์ฒญ๊ตฌ ์ƒํƒœ์™€ ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅธ๊ฐ€์š”?

์ฒญ๊ตฌ๋Š” โ€œ๋ฌด์—‡์„ ์–ธ์ œ ์ฒญ๊ตฌํ•  ๊ฒƒ์ธ๊ฐ€โ€์— ๋‹ตํ•˜๊ณ , ๊ถŒํ•œ์€ โ€œ์ง€๊ธˆ ๋ฌด์—‡์ด ํ—ˆ์šฉ๋˜๋Š”๊ฐ€โ€์— ๋‹ตํ•ฉ๋‹ˆ๋‹ค. ๋‘˜์„ ๋ถ„๋ฆฌํ•˜๋ฉด ์žฌ๋ฌดํŒ€์ด ์†ก์žฅ์ด๋‚˜ ์žฌ์‹œ๋„ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ๋•Œ ์ œํ’ˆ ์ ‘๊ทผ์„ ์‹ค์ˆ˜๋กœ ๋ฐ”๊พธ์ง€ ์•Š๋„๋ก ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์–ธ์ œ ํ”Œ๋ž˜๊ทธ๋ฅผ ์“ฐ๊ณ , ์–ธ์ œ ํ•œ๋„๋‚˜ ์ฟผํ„ฐ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋‚˜์š”?

๊ธฐ๋Šฅ์„ ์™„์ „ํžˆ ์ผœ๊ฑฐ๋‚˜ ๊บผ์•ผ ํ•œ๋‹ค๋ฉด ํ”Œ๋ž˜๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”(์˜ˆ: SSO ํ™œ์„ฑํ™”). ๋ฆฌ์…‹๋˜์ง€ ์•Š๋Š” ์šฉ๋Ÿ‰(์˜ˆ: ์ตœ๋Œ€ ์ขŒ์„์ˆ˜, ํ”„๋กœ์ ํŠธ ์ˆ˜)์€ ํ•œ๋„๋กœ ์ฒ˜๋ฆฌํ•˜์„ธ์š”. ์›”๋ณ„ ๋‚ด์—ญ์ฒ˜๋Ÿผ ์‹œ๊ฐ„์— ๋”ฐ๋ผ ์‚ฌ์šฉ๋Ÿ‰์„ ์ธก์ •ํ•ด์•ผ ํ•œ๋‹ค๋ฉด ์ฟผํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ๋ฆฌ์…‹ ๊ทœ์น™์„ ๋ช…ํ™•ํžˆ ํ•˜์„ธ์š”.

๊ถŒํ•œ์€ ๊ณ„์ • ์ˆ˜์ค€, ์›Œํฌ์ŠคํŽ˜์ด์Šค ์ˆ˜์ค€, ์‚ฌ์šฉ์ž ์ˆ˜์ค€ ์ค‘ ์–ด๋””์— ๋‘์–ด์•ผ ํ•˜๋‚˜์š”?

ํŒ๋งค ๋ฐฉ์‹๊ณผ ์ ์šฉ ๋ฐฉ์‹์— ๋งž๋Š” ๋ฒ”์œ„๋ฅผ ์„ ํƒํ•˜์„ธ์š”: SSO ๊ฐ™์€ ํ•ญ๋ชฉ์€ ๊ณ„์ •(์–ด์นด์šดํŠธ) ์ˆ˜์ค€, ํ”„๋กœ์ ํŠธ ๊ฐ™์€ ๊ณต์œ  ์ž์›์€ ์›Œํฌ์ŠคํŽ˜์ด์Šค ์ˆ˜์ค€, ํŠน์ • ์‚ฌ์šฉ์ž์—๊ฒŒ ํŒ๋งค๋˜๋Š” ๊ถŒํ•œ์€ ์‚ฌ์šฉ์ž ์ˆ˜์ค€์œผ๋กœ ๋‘๋Š” ์‹์ž…๋‹ˆ๋‹ค. ๊ถŒํ•œ์„ ์ฒดํฌํ•  ๋•Œ ํ•ญ์ƒ ๋™์ผํ•œ ๋ฒ”์œ„๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ˜ผ๋ž€์ด ์—†์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ํ‰๊ฐ€ ์‹œ ์–ด๋–ค ์šฐ์„ ์ˆœ์œ„๋ฅผ ๋”ฐ๋ผ์•ผ ํ•˜๋‚˜์š”?

์ผ๋ฐ˜์ ์ธ ์šฐ์„ ์ˆœ์œ„๋Š” ๊ณ ๊ฐ ์˜ค๋ฒ„๋ผ์ด๋“œ(override) โ†’ ํ”Œ๋žœ ๊ฐ’ โ†’ ์‹œ์Šคํ…œ ๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค. ํ‚ค๊ฐ€ ์–ด๋””์—๋„ ์—†์œผ๋ฉด ๊ฐ•์ œ ๊ฒ€์‚ฌ์—์„œ๋Š” ์ ‘๊ทผ์„ ๊ฑฐ๋ถ€ํ•˜๊ณ , ๊ตฌ์„ฑ ์˜ค๋ฅ˜๋กœ ๋กœ๊น…ํ•˜์„ธ์š”. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์˜ˆ์™ธ๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ๋ถ€์—ฌํ•˜๋ฉด์„œ๋„ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ๋ณต๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”Œ๋žœ๊ณผ ๊ณ ๊ฐ ์˜ค๋ฒ„๋ผ์ด๋“œ์— ๋Œ€ํ•œ ์‹ค์šฉ์ ์ธ DB ์„ค๊ณ„๋Š” ์–ด๋–ค๊ฐ€์š”?

ํ”Œ๋žœ ๊ธฐ๋ณธ๊ฐ’์€ ํ•œ ํ…Œ์ด๋ธ”์—, ๊ณ ๊ฐ๋ณ„ ์˜ˆ์™ธ๋Š” ๋™์ผํ•œ ํ‚ค์™€ ํƒ€์ž…์„ ์‚ฌ์šฉํ•˜๋Š” ๋ณ„๋„ ํ…Œ์ด๋ธ”์— ์ €์žฅํ•˜์„ธ์š”. ์˜ค๋ฒ„๋ผ์ด๋“œ๋Š” ์‹œ์ž‘/์ข…๋ฃŒ ๋‚ ์งœ๋ฅผ ํฌํ•จํ•ด ์‹œ๊ฐ„ ๋ฒ”์œ„๋ฅผ ๋‘๋ฉด ์„œํฌํŠธ๊ฐ€ ์ž„์‹œ ์ ‘๊ทผ์„ ๋งŒ๋ฃŒ ์—†์ด ๋ถ€์—ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ์ฒดํฌ๋ฅผ ๋น ๋ฅด๊ฒŒ ํ•˜๋˜ ์˜ค๋ž˜๋œ ๊ทœ์น™์„ ์ œ๊ณตํ•˜์ง€ ์•Š์œผ๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•˜๋‚˜์š”?

๊ณ ๊ฐ๋ณ„๋กœ ํ•ด์„๋œ ๊ถŒํ•œ(resolved entitlements)์„ ์งง์€ TTL๊ณผ ๋ฒ„์ „ ๋ฒˆํ˜ธ๋กœ ์บ์‹œํ•˜์„ธ์š”. ์„œํฌํŠธ๊ฐ€ ํ”Œ๋žœ ํ• ๋‹น์ด๋‚˜ ์˜ค๋ฒ„๋ผ์ด๋“œ๋ฅผ ๋ณ€๊ฒฝํ•˜๋ฉด ๋ฒ„์ „์„ ์˜ฌ๋ ค ์บ์‹œ๋ฅผ ๋น ๋ฅด๊ฒŒ ๋ฌดํšจํ™”ํ•˜๋ฉด ์ง€์—ฐ ์—†์ด ๋ณ€๊ฒฝ์ด ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค.

์˜ˆ: โ€œ14์ผ ๋™์•ˆ +10 ์ขŒ์„โ€ ๊ฐ™์€ ์ž„์‹œ ์ ‘๊ทผ์„ ๋ถ€์—ฌํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•˜๋‚˜์š”?

๋ณดํ†ต ์ข์€ ์˜ค๋ฒ„๋ผ์ด๋“œ์— ๋งŒ๋ฃŒ์ผ๊ณผ ๋ช…ํ™•ํ•œ ์‚ฌ์œ ๋ฅผ ๋„ฃ์–ด ์ƒ์„ฑํ•˜์„ธ์š”. ํ”Œ๋žœ์„ ์ง์ ‘ ํŽธ์ง‘ํ•˜๋ฉด ํ•ด๋‹น ํ‹ฐ์–ด์˜ ๋ชจ๋“  ์‚ฌ์šฉ์ž์—๊ฒŒ ์˜ํ–ฅ์ด ๊ฐ€๋ฏ€๋กœ, ์ผํšŒ์„ฑ ์š”์ฒญ์€ ์˜ค๋ฒ„๋ผ์ด๋“œ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ์•ˆ์ „ํ•ฉ๋‹ˆ๋‹ค. ์ ์šฉ ๊ฒฐ๊ณผ๋Š” ๊ณ ๊ฐ์ด ๋ณด๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ฒ€์ฆํ•˜์„ธ์š”.

์„œํฌํŠธ๊ฐ€ ๊ถŒํ•œ์„ ๋ณ€๊ฒฝํ•  ๋•Œ ๋ฌด์—‡์„ ๋กœ๊น…ํ•˜๊ณ  ๊ฐ์‚ฌํ•ด์•ผ ํ•˜๋‚˜์š”?

๋ณ€๊ฒฝ์„ ๋ˆ„๊ฐ€ ํ–ˆ๋Š”์ง€, ์–ธ์ œ ํ–ˆ๋Š”์ง€, ์™œ ํ–ˆ๋Š”์ง€, ์ด์ „๊ฐ’๊ณผ ์ƒˆ๊ฐ’, ๋งŒ๋ฃŒ์ผ ๋“ฑ์„ ๊ธฐ๋กํ•˜์„ธ์š”. ์‹ค์ˆ˜์— ๋Œ€๋น„ํ•ด โ€œํ”Œ๋žœ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ๋˜๋Œ๋ฆฌ๊ธฐโ€ ๋ฒ„ํŠผ์„ ์ œ๊ณตํ•˜๋ฉด ์ˆ˜๋™ ์ •๋ฆฌ๊ฐ€ ํ•„์š” ์—†์–ด์„œ ๋น ๋ฅด๊ฒŒ ๋ณต๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‰ฌ์šด ์‹œ์ž‘
๋ฉ‹์ง„๋งŒ๋“ค๊ธฐ

๋ฌด๋ฃŒ ์š”๊ธˆ์ œ๋กœ AppMaster๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด์„ธ์š”.
์ค€๋น„๊ฐ€ ๋˜๋ฉด ์ ์ ˆํ•œ ๊ตฌ๋…์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๋‹ค
๊ณ ๊ฐ ํ‹ฐ์–ด ๊ถŒํ•œ ๋ชจ๋ธ: ํ”Œ๋žœ, ํ•œ๋„, ํ”Œ๋ž˜๊ทธ | AppMaster