Docs Menu

์ž์ฒด ๊ด€๋ฆฌํ˜• ๋ฐฐํฌ์„œ๋ฒ„์˜ ์—ญํ•  ๊ธฐ๋ฐ˜ ์•ก์„ธ์Šค ์ œ์–ด

MongoDB๋Š” RBAC(์—ญํ•  ๊ธฐ๋ฐ˜ ์•ก์„ธ์Šค ์ œ์–ด)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ MongoDB ์‹œ์Šคํ…œ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž์—๊ฒŒ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฆฌ์†Œ์Šค ๋ฐ ์—ฐ์‚ฐ์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž์˜ ์•ก์„ธ์Šค๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ์—ญํ• ์ด ํ•˜๋‚˜ ์ด์ƒ ๋ถ€์—ฌ๋ฉ๋‹ˆ๋‹ค. ์—ญํ• ์ด ํ• ๋‹น๋˜์ง€ ์•Š์€ ์‚ฌ์šฉ์ž๋Š” ์‹œ์Šคํ…œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

MongoDB๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์•ก์„ธ์Šค ์ œ์–ด๋ฅผ ํ™œ์„ฑํ™”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. --auth ๋˜๋Š” security.authorization ์„ค์ •์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ถŒํ•œ ๋ถ€์—ฌ์„ ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด๋ถ€ ์ธ์ฆ์„ ํ™œ์„ฑํ™”ํ•˜๋ฉด ํด๋ผ์ด์–ธํŠธ ๊ถŒํ•œ ๋ถ€์—ฌ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์•ก์„ธ์Šค ์ œ์–ด๊ฐ€ ํ™œ์„ฑํ™”๋˜๋ฉด ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์„ ์ธ์ฆํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

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

์—ญํ• ์€ ๊ถŒํ•œ์„ ์ œํ•œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž์—๊ฒŒ ๋‘ ๊ฐ€์ง€ ์—ญํ• ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ๋” ํฐ ์—ญํ• ์ด ์šฐ์„ ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ์ด๋ฏธ readWriteAnyDatabase ์—ญํ• ์ด ์žˆ๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ์˜ read ์—ญํ• ์„ ๋ถ€์—ฌํ•˜๋Š” ๊ฒฝ์šฐ read ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ด๋„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ์˜ ์“ฐ๊ธฐ ์•ก์„ธ์Šค๋ฅผ ์ทจ์†Œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž์˜ ์—ญํ• ์„ ์ทจ์†Œํ•˜๋ ค๋ฉด revokeRolesFromUser ๋ช…๋ น์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์—ญํ• ์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ธ์ฆ ์ œํ•œ์„ ๋ถ€๊ณผํ•˜์—ฌ ์ง€์ •๋œ ์†Œ์Šค ๋ฐ ๋Œ€์ƒ IP ์ฃผ์†Œ ๋ฒ”์œ„์—์„œ ์—ฐ๊ฒฐํ•˜๋„๋ก ์š”๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ธ์ฆ ์ œํ•œ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

๊ถŒํ•œ์€ ์ง€์ •๋œ ๋ฆฌ์†Œ์Šค์™€ ํ•ด๋‹น ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•ด ํ—ˆ์šฉ๋œ ์กฐ์น˜๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

๋ฆฌ์†Œ์Šค ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค, ์ปฌ๋ ‰์…˜, collection ์„ค์ •ํ•˜๋‹ค ๋˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ ์ž…๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ ์ธ ๊ฒฝ์šฐ ๊ด€๋ จ ์ž‘์—…์€ ํŠน์ • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚˜ ์ปฌ๋ ‰์…˜ ์ด ์•„๋‹Œ ์‹œ์Šคํ…œ ์ƒํƒœ ์— ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฌธ์„œ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ ์€ ์ž์ฒด ๊ด€๋ฆฌ ๋ฐฐํฌ์„œ๋ฒ„์—๋Œ€ํ•œ ๋ฆฌ์†Œ์Šค ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์กฐ์น˜ ์€ ๋ฆฌ์†Œ์Šค ์— ํ—ˆ์šฉ๋˜๋Š” ์ž‘์—…์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ž‘์—…์€ ์ž์ฒด ๊ด€๋ฆฌ ๋ฐฐํฌ์„œ๋ฒ„์— ๋Œ€ํ•œ ๊ถŒํ•œ ์ž‘์—…์„ ์ฐธ์กฐํ•˜์„ธ์š”.

์—ญํ• ์€ ์ •์˜์— ๊ธฐ์กด ์—ญํ• ์„ ํ•˜๋‚˜ ์ด์ƒ ํฌํ•จํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด ๊ฒฝ์šฐ ์—ญํ• ์€ ํฌํ•จ๋œ ์—ญํ• ์˜ ๋ชจ๋“  ๊ถŒํ•œ์„ ์ƒ์†ํ•ฉ๋‹ˆ๋‹ค.

์—ญํ• ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์žˆ๋Š” ๋‹ค๋ฅธ ์—ญํ• ๋กœ๋ถ€ํ„ฐ ๊ถŒํ•œ์„ ์ƒ์†๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 0} ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋งŒ๋“  ์—ญํ• ์€ ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์—ญํ• ์—์„œ ๊ถŒํ•œ์„ ์ƒ์†ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.admin

showPrivileges ๋ฐ showBuiltinRoles ํ•„๋“œ๋ฅผ ๋ชจ๋‘ true๋กœ ์„ค์ •ํ•œ ์ƒํƒœ์—์„œ rolesInfo๋ช…๋ น์„ ์‹คํ–‰ํ•˜์—ฌ ์—ญํ• ์— ๋Œ€ํ•œ ๊ถŒํ•œ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋™์•ˆ ์‚ฌ์šฉ์ž์—๊ฒŒ ์—ญํ• ์„ ํ• ๋‹นํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด ์‚ฌ์šฉ์ž๋ฅผ ์—…๋ฐ์ดํŠธํ•˜์—ฌ ์—ญํ• ์„ ๋ถ€์—ฌํ•˜๊ฑฐ๋‚˜ ์ทจ์†Œํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ๊ด€๋ฆฌ ๋ฐฉ๋ฒ•์˜ ์ „์ฒด ๋ชฉ๋ก์€ ์‚ฌ์šฉ์ž ๊ด€๋ฆฌ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์—ญํ• ์ด ํ• ๋‹น๋œ ์‚ฌ์šฉ์ž๋Š” ํ•ด๋‹น ์—ญํ• ์˜ ๋ชจ๋“  ๊ถŒํ•œ์„ ๋ฐ›์Šต๋‹ˆ๋‹ค. ํ•œ ์‚ฌ์šฉ์ž๊ฐ€ ์—ฌ๋Ÿฌ ์—ญํ• ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์‚ฌ์šฉ์ž ์—ญํ• ์„ ํ• ๋‹นํ•˜๋ฉด ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ƒ์„ฑ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฐธ๊ณ 

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—์„œ ์ฒซ ๋ฒˆ์งธ๋กœ ์ƒ์„ฑ๋˜๋Š” ์‚ฌ์šฉ์ž๋Š” ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๋ฅผ ๊ด€๋ฆฌ ์žˆ๋Š” ๊ถŒํ•œ์ด ์žˆ๋Š” ์‚ฌ์šฉ์ž ๊ด€๋ฆฌ์ž์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ž์ฒด ๊ด€๋ฆฌ ๋ฐฐํฌ์„œ๋ฒ„์—์„œ ์•ก์„ธ์Šค ์ œ์–ด ํ™œ์„ฑํ™”๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

MongoDB๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ์—์„œ ์ผ๋ฐ˜์ ์œผ๋กœ ํ•„์š”ํ•œ ์ผ๋ จ์˜ ๊ถŒํ•œ์„ ์ œ๊ณตํ•˜๋Š” ๋‚ด์žฅ๋œ ์—ญํ• ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๊ธฐ๋ณธ ์ œ๊ณต ์—ญํ• ๋กœ ์›ํ•˜๋Š” ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ์ œ๊ณตํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ, MongoDB๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ์—ญํ• ์„ ์ƒ์„ฑํ•˜๊ณ  ์ˆ˜์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ 

MongoDB 8.0 ๋ถ€ํ„ฐ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค. LDAP ์ธ์ฆ ๋ฐ ๊ถŒํ•œ ๋ถ€์—ฌ ๋Š” ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. LDAP ๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ MongoDB 8 ์˜ ์ˆ˜๋ช… ๊ธฐ๊ฐ„ ๋™์•ˆ ๋ณ€๊ฒฝ ์—†์ด ๊ณ„์† ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. LDAP ๋Š” ํ–ฅํ›„ ์ฃผ์š” ์ถœ์‹œํ•˜๋‹ค ์—์„œ ์ œ๊ฑฐ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

์ž์„ธํ•œ ๋‚ด์šฉ์€ LDAP ์‚ฌ์šฉ ์ค‘๋‹จ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

MongoDB Enterprise๋Š” ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์†ํ•œ LDAP ๊ทธ๋ฃน์— ๋Œ€ํ•œ LDAP ์„œ๋ฒ„ ์ฟผ๋ฆฌ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. MongoDB๋Š” ๋ฐ˜ํ™˜๋œ ๊ฐ ๊ทธ๋ฃน์˜ DN(๊ณ ์œ  ์ด๋ฆ„)์„ admin ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์—ญํ• ์— ๋งคํ•‘ํ•ฉ๋‹ˆ๋‹ค. MongoDB๋Š” ๋งคํ•‘๋œ ์—ญํ•  ๋ฐ ๊ด€๋ จ ๊ถŒํ•œ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์‚ฌ์šฉ์ž์—๊ฒŒ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ LDAP ๊ถŒํ•œ ๋ถ€์—ฌ ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.