某日我的某个DEMO应用登录不上去, 打开我VPS上的MongoDB:
来自远方的问候
我是本地开发直接使用的线上数据库,由于是开发环境, 一直没有折腾安全配置。现在总结一下
- 非Docker环境
# 1. 非认证方式启动
mongod
# 2. 创建用户
use admin
db.createUser(
{
user: "root",
pwd: "123321",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
# 3. 以认证方式启动
mongod --auth
# 未认证
show dbs
> error
use test
db.test.insert({ test: "test" })
> error
# 认证
use admin
db.auth("root", "123321")
> 1
show dbs
> ok
- Docker
# 启用认证
docker run --name my-mongo -d mongo --auth
# 添加初始管理用户
docker exec -it my-mongo mongo admin
# 其他参上
未完待续...
网友评论