MongoDB连接安全设置技巧

发布时间:2019-11-23编辑:脚本学堂
本文介绍了MongoDB连接安全的相关知识,在MongDB中,默认不需要使用用户名和密码就可以访问数据库,并且可以进行各种操作,有关MongDB的连接安全问题,感兴趣的朋友参考下。

很多关系型数据库中没有用户名和密码,是不可以访问数据的。
但是在MongDB中,默认不需要使用用户名和密码就可以访问数据库,并且可以进行各种操作。
这样是虽然利于初学者,但是很不安全的。

下面介绍下MongDB的连接安全问题。
 
首先,之所以能够不使用用户名和密码就能连接,是因为在启动MongoDB服务的时候,没有设置权限认证。
1、不用用户名和密码就能访问的启动方式:
mongod --dbpath c:mongo_data --logpath c:mongologslogs.txt
只需要给出--dbpath和logpath即可

2、需要用户名和密码的启动方式:
mongod--dbpath c:mongo_data --logpath c:mongologslogs.txt -auth
需要加上 -auth(cateauthentication 认证的意思)
 
想要使用用户名和密码登陆,就必须有用户名和密码,而要在哪里设置用户名和密码呢?
首先,以非认证方式(不需要用户名和密码)登陆系统,然后可以看到默认系统给出了几个库,其中有localhost和admin,当然也可以新建库。
每个库都有自己的用户表,admin库的用户拥有其他的所有权限。(www.jb200.com
所以,初学阶段我们使用在admin库中添加用户,真正使用的时候,使用各个库自己的用户。

添加用户图片
mongodb连接安全
 
两种不同的连接数据库方式
1、不使用用户名和密码:
 

复制代码 代码示例:
Mongo m = new Mongo("localhost",27017);  //默认访问本地的27017端口

2、使用用户名和密码:
 

复制代码 代码示例:
Mongo m = new Mongo("localhost",27017);
booleanauth = db.authenticate(userName, password);

以过以上方式,可以让MongoDB连接变得安全。