mongodb安装后是无需密码
Mongodb安装后自身是没有密码的,用户连接只需填写id地址,端口号,数据库名称即可
安全问题
只要你服务器的mongodb数据库端口开放,任何人的电脑都可以连接到你的数据库,操作修改你的mongodb数据,本人以前就遭受过入侵,深有感触。如图:黑客盗取你的数据库,然后留下一个邮箱和账号,要求你给比特币才肯归还数据库给你。。。
给mongodb加密
如果需要给MongoDB数据库使用安全验证,则需要用--auth开启安全性检查,只有数据库认证的用户才能执行读写操作,开户安全性检查。
第一步:开机先:mongod --dbpath 存放数据库文件夹路径
第二步:打开命令行窗口输入mongo
,进入mongo环境
第三步:切换到 'admin' 数据库 use admin
第四步:给admin设置用户密码:
user: 用户名, pwd: 用户密码,roles: 用来设置用户的权限,比如读,读写 等等db.createUser({user: 'root', pwd: '123456', roles: ['root']})
验证是否添加成功,'db.auth(用户名,用户密码)'
这里用db.auth('root', '123456')
如果返回 '1'表示验证成功, 如果是 '0' 表示验证失败...
第5步:刚才是给root设置密码,现在要给特定的每个库设置权限,比如我这里有一个库,库名字叫做Article,这里以Article这个库为例
切换到Article数据库,use Article
接下来为这个库添加一个用户,并且赋予权限,db.createUser({user:'zwVic',pwd:'adgjmp123',roles: [{role:'readWrite',db:'Article'}]})})
这行代码意思是 创建一个zwStar用户 给予读写权限 db表示该用户操作的数据库名
OK,一切搞定,重新开机mongodb,MongoDB默认是没有开启访问控制,我们通过--auth
参数重启mongod服务。mongod --dbpath 存放数据库文件夹路径 --auth
一旦开启了,用户连接mongod必须指定用户名和密码。
连接加密数据库
xxx.db('mongodb://your name: your pwd@ ip :27017/Article');
your name
:为用户名your pwd
:为密码
总结
通过加密后。连接数据库就需要账号,密码,同时阿里云或者腾讯云上也可以给服务器设置安全组增加安全性,比如27107这个端口只授权给自己访问等等....
文中有什么不对的,希望大家指正哈!
如果觉得本文对你有所帮助,就star一下吧~
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。