我想为我的MongoDB实例设置用户名和密码身份验证,以便任何远程访问都将要求输入用户名和密码。我从MongoDB网站尝试了该教程,并做了以下工作:
use admin
db.addUser('theadmin', '12345');
db.auth('theadmin','12345');
之后,我退出并再次运行mongo。而且我不需要密码即可访问它。即使我远程连接到数据库,也不会提示我输入用户名和密码。
更新这是我最终使用的解决方案
1) At the mongo command line, set the administrator:
use admin;
db.addUser('admin','123456');
2) Shutdown the server and exit
db.shutdownServer();
exit
3) Restart mongod with --auth
$ sudo ./mongodb/bin/mongod --auth --dbpath /mnt/db/
4) Run mongo again in 2 ways:
i) run mongo first then login:
$ ./mongodb/bin/mongo localhost:27017
use admin
db.auth('admin','123456');
ii) run & login to mongo in command line.
$ ./mongodb/bin/mongo localhost:27017/admin -u admin -p 123456
用户名和密码的工作方式与mongodump
和相同mongoexport
。
设置用户后,您需要从mongod
该--auth
选项开始。
从MongoDB网站:
运行带有
--auth
启用安全性选项的数据库(mongod进程)。您必须使用来启动服务器之前将用户添加到admin数据库中--auth
,或者必须从localhost接口添加第一个用户。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句