DBMS/MongoDB

[MONGO] ๐Ÿ“š ์‚ฌ์šฉ์ž ๊ณ„์ • ๊ด€๋ฆฌ ํ•˜๊ธฐ (์ถ”๊ฐ€/์‚ญ์ œ)

์ธํŒŒ_ 2022. 7. 15. 10:27

์‚ฌ์šฉ์ž๊ณ„์ •๊ด€๋ฆฌ

๋ชฝ๊ณ ๋””๋น„ ๊ณ„์ • ๊ด€๋ฆฌ

๋‹ค์Œ์€ ๋ชฝ๊ณ ๋””๋น„์—์„œ ๊ณ„์ • ๊ด€๋ฆฌํ• ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ๋ช…๋ น์–ด์ด๋‹ค.

๋ช…๋ น์–ด ์„ค๋ช…
db.auth() ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์‚ฌ์šฉ์ž ์ธ์ฆ
db.createUser() Creates a new user.
db.updateUser() Updates user data.
db.changeUserPassword() ์‚ฌ์šฉ์ž ํŒจ์Šค์›Œ๋“œ ๋ณ€๊ฒฝ
db.dropAllUsers() ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๊ด€๋ จ๋œ ๋ชจ๋“  ์‚ฌ์šฉ์ž๋ฅผ ์‚ญ์ œํ•œ๋‹ค.
db.dropUser() ํ•œ ์‚ฌ์šฉ์ž๋ฅผ ์‚ญ์ œํ•œ๋‹ค
db.grantRolesToUser() ๋กค๊ณผ ๊ถŒํ•œ์„ ์‚ฌ์šฉ์ž์— ํ—ˆ์šฉํ•œ๋‹ค
db.revokeRolesFromUser() ์‚ฌ์šฉ์ž์— ๋ถ€์—ฌํ•œ ๋กค์„ ์‚ญ์ œํ•œ๋‹ค
db.getUser() ์ง€์ •ํ•œ ์‚ฌ์šฉ์ž์˜ ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค
db.getUsers() ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๊ด€๋ จ๋œ ๋ชจ๋“  ์‚ฌ์šฉ์ž์˜ ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค

์‚ฌ์šฉ์ž ๋ชฉ๋ก ์ถœ๋ ฅ

์‚ฌ์šฉ์ž ๊ณ„์ •์€ ๊ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ db.system.users ์ปฌ๋ ‰์…˜์— ์ €์žฅ๋œ๋‹ค.

> use admin
> show users

or

> db.getUsers();

 

์‚ฌ์šฉ์ž ๊ณ„์ • ์ƒ์„ฑ

db.createUser({ 
    user: '์ด๋ฆ„'. 
    pwd: '๋น„๋ฐ€๋ฒˆํ˜ธ', 
    roles: ['root'] // ๊ณ„์ •์ด ๊ฐ€์งˆ ๊ถŒํ•œ
});
// read ๊ถŒํ•œ๋งŒ ๊ฐ–๊ณ  ์žˆ๋Š” ๋™์ผํ•œ ์‚ฌ์šฉ์ž๋ฅผ admin ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ถ”๊ฐ€ํ•˜๊ณ  
// testDB2 ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ readWrite๊ถŒํ•œ ๋ถ€์—ฌ
db.createUser( { 
    user: "testUser" ,
    userSource: "test",
    roles: ["read"], 
    otherDBRoles : { testDB2: ["readWrite"] } 
} )

 

์‚ฌ์šฉ์ž ํ™•์ธ (๋กœ๊ทธ์ธ)

๋ฆฌํ„ด๊ฐ’์œผ๋กœ 1์ด ์ถœ๋ ฅ๋˜๋ฉด ๋กœ๊ทธ์ธ ์„ฑ๊ณต์ด๋‹ค.

db.auth("์•„์ด๋””", "๋น„๋ฐ€๋ฒˆํ˜ธ")

์‚ฌ์šฉ์ž๊ณ„์ •๊ด€๋ฆฌ

 

์‚ฌ์šฉ์ž ์‚ญ์ œ

db.dropUser("์œ ์ €์ด๋ฆ„")

์‚ฌ์šฉ์ž๊ณ„์ •๊ด€๋ฆฌ