docker pull mongo:latest

# --auth:需要密码才能访问容器服务,前面的是物理机端口后面的是容器端口,需要挂载目录也是一样
docker run -itd --name mongo -p 27017:27017 mongo --auth  

docker exec -it mongo mongo admin

# 创建一个名为 admin,密码为 123456的用户
>  db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'dbAdminAnyDatabase', db: 'admin'}]});


# 使用上面创建的用户信息进行连接 如果返回0是失败 1是正确
> db.auth('admin', '123456')

# 设置权限
db.grantRolesToUser("admin", [ { role: "readWrite", db: "admin" } ])

权限列表

1.数据库用户角色:read、readWrite;
2.数据库管理角色:dbAdmin、dbOwner、userAdmin;
3.集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4.备份恢复角色:backup、restore
5.所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6.超级用户角色:root

Last modification:July 25, 2022
If you think my article is useful to you, please feel free to appreciate