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

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

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

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

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

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

๋˜ํ•œ AppMaster ์ˆ˜๋™ ์ฝ”๋”ฉ ์—†์ด๋„ ๊ฐœ๋ณ„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ํŠน์ • ์š”๊ตฌ ์‚ฌํ•ญ์— ๋งž๊ฒŒ ROPC๋ฅผ ํฌํ•จํ•œ ์ธ์ฆ ํ๋ฆ„์„ ์‹œ๊ฐ์ ์œผ๋กœ ์„ค๊ณ„ํ•˜๊ณ  ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ์ง๊ด€์ ์ธ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ํ”Œ๋žซํผ์˜ drag-and-drop ์ธํ„ฐํŽ˜์ด์Šค, BP Designer ๋ฐ ๋‚ด์žฅ ํ…œํ”Œ๋ฆฟ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆ ๋…ผ๋ฆฌ, ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ API endpoints ์‹ ์†ํ•˜๊ฒŒ ๊ตฌ์ถ•ํ•˜๊ณ  ์‚ฌ์šฉ์ž ์ •์˜ํ•˜์—ฌ ๊ฐœ๋ฐœ ์‹œ๊ฐ„๊ณผ ๋…ธ๋ ฅ์„ ํฌ๊ฒŒ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒฐ๋ก ์ ์œผ๋กœ ROPC(๋ฆฌ์†Œ์Šค ์†Œ์œ ์ž ๋น„๋ฐ€๋ฒˆํ˜ธ ์ž๊ฒฉ ์ฆ๋ช…)๋Š” ๋‹ค๋ฅธ OAuth 2.0 ํ๋ฆ„์— ๋น„ํ•ด ๋ณด์•ˆ์ด ๋–จ์–ด์ง€์ง€๋งŒ ํŠน์ • ์ƒํ™ฉ์—์„œ ํšจ๊ณผ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ„๋‹จํ•˜๋ฉด์„œ๋„ ๊ฐ•๋ ฅํ•œ ์ธ์ฆ ๋ฉ”์ปค๋‹ˆ์ฆ˜์ž…๋‹ˆ๋‹ค. AppMasterno-code ํ”Œ๋žซํผ์˜ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•จ์œผ๋กœ์จ ์‚ฌ์šฉ์ž๋Š” ์›น, ๋ชจ๋ฐ”์ผ ๋ฐ ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋Œ€ํ•œ ROPC ๊ธฐ๋ฐ˜ ์ธ์ฆ์„ ์•ˆ์ „ํ•˜๊ฒŒ ๊ตฌํ˜„ ๋ฐ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๊ฐœ๋ฐœ ๋น„์šฉ๊ณผ ์‹œ๊ฐ„์„ ์ตœ์†Œํ™”ํ•˜๋Š” ๋™์‹œ์— ํƒ์›”ํ•œ ํ™•์žฅ์„ฑ๊ณผ ์„ฑ๋Šฅ์„ ๋ณด์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.