mongodb授权登录

mongodb版本为3.2(目前最新),演示的是linux下的mongodb授权认证

第一次登录不启动授权(mongo默认不启动)

  

./mongod --dbpath=/home/db/data --logpath=/home/db/logs/mongodb.log

  接着使用 ./mongo 命令连接数据库

 ./mongo

  切换到admin数据库 use admin

  使用创建用户命令:

  

复制代码
use admin
db.createUser(
  {
    user: "coderhuang",
    pwd: "123456",
    roles: [ { role: "root", db: "admin" } ]
  }
)
复制代码

  则对admin数据库添加了名为coderhuang的用户(注:mongo为每一个数据库都提供了一套用户权限)

  接着关闭数据库(注:当启动了授权认证,只有root角色有权限可以关闭数据库)

db.shutdownServer();

  

第二次登录启用授权认证:

./mongod --auth --dbpath=/home/db/data --logpath=/home/db/logs/mongodb.log

  接着切换到admin数据库,使用查看用户命令

use admin
show users

  将提示未授权

  这时需要做授权认证

db.auth("coderhuang","123456");

  再调用刚才的命令则可以查看到用户信息

接着我们需要为我们的数据库添加相关用户,这里使用db_report为示例

复制代码
use db_report
db.createUser(
 {
   user: "client",
   pwd: "111111",
   roles: [
      { role: "readWrite", db: "db_report" }
   ]
 }
)
复制代码

  这里为db_report数据库添加了具有读写权限的角色

到此,mongo授权完成

原文地址:https://www.cnblogs.com/jtlgb/p/5733526.html