mongodb在windows下开启帐户认证

1.开启mongodb的服务mongodb

<!-- 配置文件路径使用绝对路径 -->
  mongod --config "D:\MongoDB\bin\mongo.cfg" --serviceName "MongoDB" --install

等价于:数据库

mongod --dbpath "xxx"  --logpath "xxx" --serviceName "MongoDB" --install

mongo.cfg的内容为安全

#logpath表明日志文件的文件路径,参数值就是文件路径的值
systemLog:
    destination: file
    path: D:\MongoDB\data\log\MongoDB.log
#dbpath表明Mongodb数据库对应的目录
storage:
    dbPath: D:\MongoDB\data\db
#开启安全认证,此处开启,启动mongodb服务时不使用--auth也会开启身份验证
#security:
#    authorization: enabled

当MongoDB服务发布成功以后,能够使用net start MongoDB / net stop MongoDB 启动/暂停MongoDB (cmd须要以管理员身份运行)日志

cmd下启动MongoDB服务

若是已经发布服务,能够先删除删除MongoDB服务code

2.设置管理员用户图片

//切换到admin数据库(切换成功会显示 switched to db admin)
//首先切换到admin数据库,这个库的做用是用来存放MongoDB中全部的受权用户,
//默认这个库是不存在的,咱们先切换过来,在用的时候它会自动建立
  use admin
  //建立用户(MongoDB中内置了不少角色)
  //role:表示角色,db:表示当前角色针对哪一个数据库有效。
  //好比设置了admin 那么这个用户的权限范围只在admin数据库有效。
  db.createUser({  
    "user" : "admin",  
    "pwd": "123456",  
    "roles" : [  
        {role:"userAdminAnyDatabase", db: "admin"},  
        {role:"readWriteAnyDatabase", db: "admin"}  
    ]},
    { w: "majority" , wtimeout: 5000 }   
  );    
  
  //而后咱们能够给具体的数据里设置受权用户了
  db.createUser({  
    "user" : "wpfc",  
    "pwd": "qwe123",  
    "roles" : [   
        {role: "readWrite", db: "mydb" }  
     ]},  
    { w: "majority" , wtimeout: 5000 }   
  ); 

  //查看mongodb全部用户
  db.system.users.find();

  //进行身份认证(认证成功返回1)
  db.auth("admin","123456"); 
  db.auth("wpfc","qwe123");

具体的实际操做以下: 输入图片说明 输入图片说明 输入图片说明 3.从新发布带身份认证的mongo服务cmd

mongod --config "D:\MongoDB\bin\mongo.cfg" --serviceName "MongoDB" --auth --reinstall
相关文章
相关标签/搜索