MongoDB学习整理之访问控制
MongoDB学习整理之访问控制
1、限制特定IP地址访问,只需启动时加入--bind_ip 参数 ,客户端连接时也需要添加--host
/app/mongo/mongodb/bin/mongod --dbpath=/app/mongo/mongodb/data/test --logpath=/app/mongo/mongodb/data/test/server.log --fork --bind_ip 132.42.33.190
/app/mongo/mongodb/bin/mongo --host 132.42.33.190
2、设置端口,只需启动时加入--port 参数 ,客户端连接时也需要添加--port
/app/mongo/mongodb/bin/mongod --dbpath=/app/mongo/mongodb/data/test --logpath=/app/mongo/mongodb/data/test/server.log --fork --port 28018
/app/mongo/mongodb/bin/mongo --port 28012
3、用户验证管理
mongodb默认有一个admin数据库,admin库上的用户比其他库的权限都大,即admin库的用户可以操作其他库的任意操作。
启用:登陆验证
/app/mongo/mongodb/bin/mongod --dbpath=/app/mongo/mongodb/data/test --logpath=/app/mongo/mongodb/data/test/server.log --fork --auth
注:mongodb默认有一个admin数据库,如果admin.system.users中没有数据,登陆验证将不生效
1)创建用户
> db.addUser("root","111111") --新建用户
> db.auth("root","111111") --设置用户有数据库连接验证
2)建立指定权限用户,
命令格式:db.addUser(username,password[,readOnly=false])
例如:为test库添加一个只读的用户user_reader,代码所示:
> db.addUser("user_reader","passw0rd",true) --建立一个只读用户
> show collections --可以查看
system.indexes
system.users
> db.t1.insert({name:"liangzhangping",age:29}) --但不可以添加、删除和更新
unauthorized
3)删除指定用户,调用db.removeUser(username)命令,只需传入用户名,即可删除,可以调用db.system.users.find()查看是否删除
> db.removeUser("user_reader")
> db.system.users.find()
{ "_id" : ObjectId("4fd9c4bc869208ca70bcf180"), "user" : "test", "readOnly" : false, "pwd" : "ab29e5e0e27099729856ff91da2b9112" }
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341