深入浅出MongoDB(四)mongodb设置用户访问权限
我们知道mysql在安装的时候需要我们设置一个数据库默认的用户名和密码,mongodb也不例外,不过mongodb是默认的没有设置访问限制的,不需要输入用户名和密码都可以访问的,但是这样会十分的不安全,我们需要手动的为mongodb加上权限限制命令。 首先建立一个默
我们知道mysql在安装的时候需要我们设置一个数据库默认的用户名和密码,mongodb也不例外,不过mongodb是默认的没有设置访问限制的,不需要输入用户名和密码都可以访问的,但是这样会十分的不安全,我们需要手动的为mongodb加上权限限制命令。
首先建立一个默认的账户
Use admin
Db.addUser('sa','sa')
这样我们建立了一个用户名为sa,密码为sa的默认账户。
在此时我们还是可以不输入用户名和密码进入数据库的,接下来我们做如下的修改。
打开mongodb所在的注册表:
Win+R 运行regedit,找到[HKEY_LOCAL_MACHINE-->SYSTEM-->CurrentControlSet-->Services-->MongoDB]在右边的健-值列表中打到“ImagePath”,添加上 -auth,如下图所示:
注:修改完注册表之后,一定要手动重启mongodb服务,这样才会生效。
这样当我们再次的打开mongodb的shell窗口,查看默认的数据库和“表”,会提示无法打开对应的collections,并且会报错,如下图所示。
当我们使用之前添加的用户登录就会显示出来,1默认的是用户名和密码正确。
在进入之后,我们可以再建立自己的用户。就像mysql中的用户管理中,在mysql的user表中我们可以添加和删除用户,在mongodb中也是一样的。例如我们添加一个admin:
Db.addUser('admin','admin')
注:以上是在windows环境下操作的,在linux中是一致的。