ubuntu 18.0.4 下mongo 4.0的用户密码的设置并开启外部连接

一、创建管理员账户并赋予权限

输入mongo,进入mongodb的命令页面

> use admin #进入admin数据库
switched to db admin
> db.createUser(
   {user:"admin",
    pwd:"admin",
    roles:[{role:"root", db:"admin"}]
    }
   )

用户创建成功会返回

ubuntu 18.0.4 下mongo 4.0的用户密码的设置并开启外部连接_第1张图片

user:”用户名“,

pwd:"密码”,

roles:[{role:"角色名“, db:"角色所属数据库”}, {role:"角色名2“, db:"角色所属数据库2”},.....]

内建角色

  • Read:允许用户读取指定数据库
  • readWrite:允许用户读写指定数据库
  • dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
  • userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
  • clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
  • readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
  • readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
  • userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
  • dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
  • root:只在admin数据库中可用。超级账号,超级权限

二、修改配置文档mongod.cfg(位置:安装目录\bin 下)

首先,将bind_ip改为0.0.0.0 (让其他电脑可以访问,用于远程连接,如果bind_ip是127.0.0.1的话,就只能本地访问)

然后找到 #security:改成下图所示,开启安全认证。

security:
    authorization: enabled #注意缩进,参照其他的值来改,若是缩进不对可能导致后面服务不能重启

如图:

ubuntu 18.0.4 下mongo 4.0的用户密码的设置并开启外部连接_第2张图片

三、重启服务

重启MongoDB Server服务,启用认证!

四、验证的登陆

输入mongo,进入MongoDB shel

直接输入show dbs命令会报错,因为没有认证登陆

ubuntu 18.0.4 下mongo 4.0的用户密码的设置并开启外部连接_第3张图片

接下来,进入账户所属数据库,再认证即可

> use admin
switched to db admin
> db.auth("用户名","密码")
1
> show dbs
admin    0.000GB
config   0.000GB
local    0.000GB
 
#这样登陆成功了

 

你可能感兴趣的:(mongodb)