mongodb|宝塔修改配置文件启用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|宝塔修改配置文件启用mongodb密码验证
文章图片

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|宝塔修改配置文件启用mongodb密码验证】删除当前库的所有用户

    推荐阅读