• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

宝塔MongoDB数据库设置用户名密码,开启权限认证登录

武飞扬头像
AGCA
帮助1

一、宝塔和本地的MongoDB设置权限一样的操作

宝塔:配置文件一般是conf、cfg为后缀名的

1、主要设置这两部分的内容authorization: enabled 开启权限认证 disabled 关闭
2、bindIp:让所有ip都通过,不局限于127.0.0.1
学新通
3、去终端进入mongodb根目录,对数据库进行操作
学新通
代码如下:

// 进入mongodb安装目录,下面是宝塔面板的默认目录
cd /www/server/mongodb/bin
mongo

4、进入admin数据库(mongodb默认管理数据库,可以在里面添加用户角色权限)
学新通

use admin

5、添加用户,给用户添加权限角色

// 创建管理员账号
db.createUser({ user: "admin", pwd: "password", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })

// 创建root账号
db.createUser({user: "root",pwd: "password", roles: [ { role: "root", db: "admin" } ]})

// 进入自己的数据库,创建自己数据库的管理角色
use yourdatabase
db.createUser({user: "user",pwd: "password",roles: [ { role: "dbOwner", db: "yourdatabase" } ]})
// 显示所有用户信息
show users

验证用户,设置了权限验证之后,如果要查看用户信息,如show users,会显示没有权限,需要进行验证之前你创建的管理角色

// 验证用户
db.auth('root','password')

上面的用户角色参数说明

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

下面的命令根据自己需要

// 删除用户
use admin
db.auth("admin","password")

// 删除单个用户
db.system.users.remove({user:"XXXXXX"})

// 删除所有用户
db.system.users.remove({})

6、修改自己的项目连接数据库代码
mongodb://youruser:yourpassword@公网ip/yourdatabase
学新通

ps:可以使用下面的可视化工具测试连接数据库
学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgacfai
系列文章
更多 icon
同类精品
更多 icon
继续加载