mongodb4.0开启用户密码登陆

若是你尚未安装mongodb,请移步至该文章:mongodb4.0安装,安装后再观看本文mongodb

本教程环境

centos 7.5 64位版本数据库

前期准备

请确保你的mongodb已经启动,输入如下指令查看mongodb启动状态vim

sudo service mongod status
复制代码

mongodb启动状态
若是状态为active(running),则证实启动成功!

若是未启动,请使用如下命令启动服务centos

sudo service mongod start
复制代码

开始添加用户

首先输入如下指令,进入mongodb数据库安全

mongo
复制代码

以下图所示: bash

进入mongodb
接着,咱们切换到 admin数据库

use admin
复制代码

下面咱们输入如下指令建立一个admin用户,其中密码为abc123,请按照本身的需求自行修改用户名密码网络

db.createUser(
  {
    user: "admin",
    pwd: "abc123",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
  }
)
复制代码

密码建议使用密码生成器生成随机的安全密码,以加强数据库的安全性post

其中的userAdminAnyDatabase角色赋予了admin帐户在该mongodb实例中,管理(新增、删除、修改)全部数据库用户的权限.测试

点击此处了解更多userAdminAnyDatabase角色的信息ui

输入如下指令退出mongodb

exit
复制代码

开启数据库身份校验

输入如下指令,编辑mongodb的配置文件

vim /etc/mongod.conf
复制代码

在配置文件中,咱们添加如下的内容

security:
    authorization: enabled
复制代码

接下来,咱们重启mongodb,生效咱们刚刚的配置

sudo service mongod restart
复制代码

添加单个数据库的用户权限

首先咱们先输入mongo进入数据库,以后咱们使用use admin切换至admin数据库,而后咱们使用admin帐户校验身份,这样咱们就能够为其它的数据库添加新用户了。

mongo
use admin
db.auth("admin", "abc123")
复制代码

接下来咱们建立并使用一个名为test的测试数据库,并为其建立一个名为testUser,密码为test123的用户

use test
db.createUser(
  {
    user: "testUser",
    pwd: "test123",
    roles: [ { role: "dbOwner", db: "test" } ]
  }
)
复制代码

咱们为testUser用户赋予了dbOwner权限,保证testUser用户有操做全部collection读和写的权限

点击此处了解更多dbOwner角色的信息

链接mongodb

接下来咱们可使用如下的字符串来链接咱们上面例子中建立的mongodb数据库,它的数据库名为test,用户名为testUser,密码为test123

mongodb://testUser:test123@localhost/test
复制代码

您能够按照您的实际状况进行调整

修改bindIp使远程端能够访问

mongodb默认状况下是只容许本地端口,也就是127.0.0.1访问,若是咱们但愿别的机器也能够访问,此时咱们须要修改配置文件,来容许别的机器访问 输入如下指令编辑配置文件

vim /etc/mongod.conf
复制代码

咱们将默认的127.0.0.1端口,修改成以下图所示的0.0.0.0,此种状况下容许全部机器访问次mongodb实例

修改配置文件

⚠️⚠️⚠️⚠️警告⚠️⚠️⚠️⚠️

请必定注意若是开启0.0.0.0容许全部机器访问时,请在你的防火墙内设置仅容许你特定ip的机器访问,若是是云主机,能够在你的网络安全组中配置27107端口的ip访问限制,这样能够增强安全性,保证你的mongodb数据库不会被入侵致使数据丢失

相关文章
相关标签/搜索