mongodb版本為3.2(目前最新),演示的是linux下的mongodb授權(quán)認(rèn)證 第一次登錄不啟動(dòng)授權(quán)(mongo默認(rèn)不啟動(dòng))
./mongod --dbpath=/home/db/data --logpath=/home/db/logs/mongodb.log
接著使用 ./mongo 命令連接數(shù)據(jù)庫(kù) ./mongo
切換到admin數(shù)據(jù)庫(kù) use admin 使用創(chuàng)建用戶命令:
use admin db.createUser( { user: "coderhuang", pwd: "123456", roles: [ { role: "root", db: "admin" } ] } ) 則對(duì)admin數(shù)據(jù)庫(kù)添加了名為coderhuang的用戶(注:mongo為每一個(gè)數(shù)據(jù)庫(kù)都提供了一套用戶權(quán)限) 接著關(guān)閉數(shù)據(jù)庫(kù)(注:當(dāng)啟動(dòng)了授權(quán)認(rèn)證,只有root角色有權(quán)限可以關(guān)閉數(shù)據(jù)庫(kù)) db.shutdownServer();
第二次登錄啟用授權(quán)認(rèn)證: ./mongod --auth --dbpath=/home/db/data --logpath=/home/db/logs/mongodb.log 接著切換到admin數(shù)據(jù)庫(kù),使用查看用戶命令 use admin show users 將提示未授權(quán) 這時(shí)需要做授權(quán)認(rèn)證 db.auth("coderhuang","123456"); 再調(diào)用剛才的命令則可以查看到用戶信息
接著我們需要為我們的數(shù)據(jù)庫(kù)添加相關(guān)用戶,這里使用db_report為示例 use db_report db.createUser( { user: "client", pwd: "111111", roles: [ { role: "readWrite", db: "db_report" } ] } ) 這里為db_report數(shù)據(jù)庫(kù)添加了具有讀寫權(quán)限的角色
到此,mongo授權(quán)完成
|
|