记一次mongodb配置启用认证的过程

  1. 先启动mongodb, 不要使用auth标志
docker run -d --name test-mongo -v /your/host/path:/data/db mongo:latest
docker exec -it test-mongo bash
  1. 创建管理用户
mongosh
use admin
db.createUser(
   {
     user: "admin",
     pwd: "123456",
     roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
   }
)
  1. 给admin用户添加其他数据库的读写权限
use admin
db.grantRolesToUser("admin", [{ role: "readWrite", db: "dev" }])

这个就是给dev库添加读写权限, 这样用admin用户登录后, 就可以管理dev库了

  1. 给dev数据库添加读写用户
    db.createUser(
    {
    user: "manager",
    pwd: "manager",
    roles: [ { role: "dbOwner", db: "dev" } ]
    }
    )

  2. 启动镜像的时候添加auth命令

docker run -d --name test-mongo -v /your/host/path:/data/db mongo:latest mongod --auth

这样启动的mongodb就必须输入账号和用户名了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容