宝塔修改配置文件启用mongodb密码验证

宝塔修改配置文件启用mongodb密码验证

## content
systemLog:
  destination: file
  logAppend: true
  path: /www/server/mongodb/log/config.log
# Where and how to store data.
storage:
  dbPath: /www/server/mongodb/data/bt_mongodb/
  directoryPerDB: true
  journal:
    enabled: true
# how the process runs
processManagement:
  fork: true
  pidFilePath: /www/server/mongodb/log/configsvr.pid 
# network interfaces
net:
  port: 27017
  bindIp: 0.0.0.0
#operationProfiling:
#replication:
#    replSetName: bt_main   
security:
#  authorization: disabled  注意此处 这个是关闭 enabled 是开启
  authorization: enabled
  javascriptEnabled: false
# 个人建议加入以下参数
setParameter:
  enableLocalhostAuthBypass: false   
#sharding:
#    clusterRole: shardsvr

1.关闭mongo的服务进程。

sudo service mongod stop 

2.修改mongo的配置文件。mongod.conf,没有就添加代码

security:  
authorization: enabled 

注意缩进啊

3.开启mongo服务

sudo service mongod start  

4.进入mongo,添加账号密码

1、切换到admin数据库

use admin  

2、创建账号

db.createUser({user:"用户名",pwd:"密码",roles:["root"]})  
二选一,执行一个指令就好了
db.createUser({ user: "useradmin", pwd: "adminpassword", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })

mongodb中的用户是基于身份role的,该管理员账户的 role是 userAdminAnyDatabase。 ‘userAdmin’代表用户管理身份,’AnyDatabase’ 代表可以管理任何数据库。
3、执行认证

db.auth("user_test","pwd_test") 

宝塔修改配置文件启用mongodb密码验证_第1张图片
note: 注意是admin数据库。
新建你需要管理的mongodb 数据的账号密码。

use yourdatabase
db.createUser({ user: "youruser", pwd: "yourpassword", roles: [{ role: "dbOwner", db: "yourdatabase" }] })

rote:dbOwner 代表数据库所有者角色,拥有最高该数据库最高权限。比如新建索引等

新建数据库读写账户

use yourdatabase
db.createUser({ user: "youruser2", pwd: "yourpassword2", roles: [{ role: "readWrite", db: "yourdatabase" }] })

该用户用于该数据的读写,只拥有读写权限。

删除用户

db.dropUser() 删除某个用户,接受字符串参数

示例:db.dropUser(“admin”)

`db.dropAllUser()`

删除当前库的所有用户

你可能感兴趣的:(mongodb,数据库,运维)