ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ตฌ์„ฑ ํŒŒ์ผ์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ํ”Œ๋Ÿฌ๊ทธ์ธ์˜ ์„ค์ •, ์ข…์†์„ฑ, ๊ธฐ๋Šฅ ๋ฐ ๊ธฐํƒ€ ๊ด€๋ จ ์ •๋ณด๋ฅผ ์ง€์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•˜๋Š” ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ฐ ํ™•์žฅ ๊ฐœ๋ฐœ ์ปจํ…์ŠคํŠธ์—์„œ ์ค‘์š”ํ•œ ๊ตฌ์„ฑ ์š”์†Œ์ž…๋‹ˆ๋‹ค. ์ด ๊ตฌ์กฐํ™”๋œ ํŒŒ์ผ์€ ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ํ˜•์‹(์ผ๋ฐ˜์ ์œผ๋กœ JSON, XML ๋˜๋Š” YAML)์œผ๋กœ ์ƒ์„ฑ๋˜๊ณ  ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ํ•ต์‹ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ๋…๋ฆฝํ˜• ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ฐ„์˜ ์›ํ™œํ•œ ์ƒํ˜ธ ์ž‘์šฉ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉ์ž ์ •์˜, ๊ด€๋ฆฌ ๋ฐ ํ™•์žฅํ•˜๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ๋‹จ์ˆœํ™”ํ•ฉ๋‹ˆ๋‹ค.

AppMasterno-code ํ”Œ๋žซํผ์˜ ๋งฅ๋ฝ์—์„œ ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ตฌ์„ฑ ํŒŒ์ผ์€ ๊ณ ๊ฐ์˜ ๋‹ค์–‘ํ•œ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋” ์ž˜ ๋งž๋„๋ก ํ”Œ๋žซํผ ๊ธฐ๋Šฅ์„ ํ–ฅ์ƒํ•˜๊ณ  ์‚ฌ์šฉ์ž ์ •์˜ํ•˜๋Š” ๋ฐ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํŒŒ์ผ์€ AppMaster ์—์„œ ์ƒ์„ฑ๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋‚ด์—์„œ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋™์ž‘์„ ์ œ์–ดํ•˜๋Š” โ€‹โ€‹ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ, ์„ค์ • ๋ฐ ์ดˆ๊ธฐํ™” ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ •์˜ํ•˜๋Š” ๊ฐ•๋ ฅํ•œ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•˜์—ฌ ์›ํ™œํ•œ ํ†ตํ•ฉ๊ณผ ์ตœ์ ์˜ ์„ฑ๋Šฅ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

์ž˜ ์„ค๊ณ„๋œ ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ตฌ์„ฑ ํŒŒ์ผ์€ ์—ฌ๋Ÿฌ ์ฃผ์š” ๊ตฌ์„ฑ ์š”์†Œ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

1. ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ: ์ด๋ฆ„, ๋ฒ„์ „, ์ž‘์„ฑ์ž, ๋ผ์ด์„ ์Šค, ๊ฐ„๋žตํ•œ ์„ค๋ช… ๋“ฑ ํ”Œ๋Ÿฌ๊ทธ์ธ์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ์ •๋ณด๋กœ, ์‚ฌ์šฉ์ž์™€ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ํ•„์ˆ˜์ ์ธ ์ปจํ…์ŠคํŠธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. 2. ์ข…์†์„ฑ: ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ์ž‘๋™ํ•˜๊ธฐ ์œ„ํ•ด ์˜์กดํ•˜๋Š” ๊ธฐํƒ€ ํ”Œ๋Ÿฌ๊ทธ์ธ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋˜๋Š” ๋ฆฌ์†Œ์Šค ๋ชฉ๋ก์œผ๋กœ, ํ•„์š”ํ•œ ๋ชจ๋“  ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ์„ค์น˜๋˜์–ด ํ•„์š”ํ•  ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 3. ๋งค๊ฐœ๋ณ€์ˆ˜: API ํ‚ค, ๊ธฐ๋ณธ๊ฐ’ ๋˜๋Š” ๊ธฐ๋Šฅ ํ† ๊ธ€๊ณผ ๊ฐ™์€ ํŠน์ • ์š”๊ตฌ ์‚ฌํ•ญ์— ๋งž๊ฒŒ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋™์ž‘์„ ์กฐ์ •ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์šฉ์ž ์ •์˜ํ•  ์ˆ˜ ์žˆ๋Š” ๊ตฌ์„ฑ ์„ค์ •์ž…๋‹ˆ๋‹ค. 4. ๊ธฐ๋Šฅ: ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ์ œ๊ณตํ•˜๋Š” ์ถ”๊ฐ€๋œ ๊ธฐ๋Šฅ์ด๋‚˜ ํ–ฅ์ƒ๋œ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์„ค๋ช…์œผ๋กœ, ์‚ฌ์šฉ์ž๊ฐ€ ํ•ต์‹ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ธฐ๋Šฅ์„ ํ™•์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ดํ•ดํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

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

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

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

์˜ˆ๋ฅผ ๋“ค์–ด, ์ถ”๊ฐ€ ์ธ์ฆ ๋ฐ ์†๋„ ์ œํ•œ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ํ”Œ๋žซํผ์˜ ๊ธฐ๋ณธ API ๊ธฐ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๋„๋ก ์„ค๊ณ„๋œ AppMaster ํ”Œ๋Ÿฌ๊ทธ์ธ์šฉ ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ตฌ์„ฑ ํŒŒ์ผ์„ ๊ณ ๋ คํ•ด ๋ณด์„ธ์š”. ํŒŒ์ผ์—๋Š” ๋‹ค์Œ ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 { "name": "Advanced API Security Plugin", "version": "1.0.0", "author": "Plugin Developer", "description": "Enhances AppMaster-generated APIs with advanced authentication and rate limiting features.", "dependencies": ["authentication-library", "rate-limiter"], "parameters": { "authentication": { "type": "apiKey", "location": "header" }, "rateLimit": { "enabled": true, "requestsPerMinute": 100 } }, "features": ["Authentication", "Rate Limiting"] }

์ด ์˜ˆ๋Š” ์œ„์—์„œ ์„ค๋ช…ํ•œ ๋ชจ๋ฒ” ์‚ฌ๋ก€๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๊ตฌ์กฐํ™”๋˜๊ณ  ๊ตฌ์„ฑ๋œ ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ตฌ์„ฑ ํŒŒ์ผ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ ํŒŒ์ผ์€ ์‰ฝ๊ฒŒ ์ฝ๊ณ , ์ดํ•ดํ•˜๊ณ , ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํ”Œ๋Ÿฌ๊ทธ์ธ ์ž‘์„ฑ์ž์™€ AppMaster ํ”„๋กœ์ ํŠธ์—์„œ ์ด๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ชจ๋“  ์‚ฌ์šฉ์ž ๋ชจ๋‘์—๊ฒŒ ์›ํ™œํ•˜๊ณ  ํšจ์œจ์ ์ธ ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ณด์žฅ๋ฉ๋‹ˆ๋‹ค.

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