美文网首页
MongoDB3.0+启用认证权限设置

MongoDB3.0+启用认证权限设置

作者: amengtongxue | 来源:发表于2019-01-07 12:01 被阅读0次

MongoDB默认不开启认证,也没有默认管理用户。

  1. 以普通方式启动MongoDB,bin/mongo进入控制台,创建管理员用户:
use admin;
db.createUser(
    {
        user: "super_user",
        pwd: "super_pass",
        roles: [{role: "userAdminAnyDatabase", db: "admin" }, 
                "readWriteAnyDatabase" ]
    }, 
    { w: "majority", wtimeout: 5000 }
)

super_user有管理员权限,对所有数据库都有读写权限,用户信息存放在admin表中。
关于roles更多选项,查询官方文档。

  1. 开启认证模式,修改MongoDB的配置文件:
# Turn on/off security.  Off is currently the default
#noauth=true
auth=true  #这个就是开启认证的配置

如果是yaml格式的配置文件:

security:
  authorization: enabled

开启完成后重启MongoDB

  1. bin/mongo进入控制台,验证管理用户
use admin;
db.auth("super_user", "super_user" )
  1. 创建普通用户
db.createUser(
    {
        "user" : "test_user",
        "pwd": "test_pass",
        "roles" : [{role: "readWrite", db: "test" }]
    },
    { w: "majority" , wtimeout: 5000 } 
);

test_user只对db test有读写权限,用户信息存放在admin表中。

  1. 连接数据库
    带认证信息的url形式:
mongodb://test_user:test_pass@localhost:27017

相关文章

网友评论

      本文标题:MongoDB3.0+启用认证权限设置

      本文链接:https://www.haomeiwen.com/subject/jpturqtx.html