首页/数据/NoSQL 速查/创建数据库用户与内置角色
MongoDB99 条

创建数据库用户与内置角色

db.createUser 创建账号并用 roles 授权;常用内置角色 read、readWrite、dbAdmin、userAdmin、clusterMonitor,跨库角色用 {role, db} 形式声明。

NoSQL 速查数据更新于 2026-10-12
用途创建数据库用户并授权
常用角色read / readWrite / dbAdmin / userAdmin / clusterMonitor
管理账号建在 admin 库,便于集中管理

创建读写账号

创建读写账号
use admin
db.createUser({
  user: "app",
  pwd: passwordPrompt(),
  roles: [{ role: "readWrite", db: "app" }]
})
启用认证(security.authorization: enabled)需要重启进程;变更前先验证账号能正常登录,避免把自己锁在外面。

易错点

  • 在业务库创建的账号默认只在该库认证,连接时必须带对应 authSource
  • pwd 明文写进脚本会留在命令历史,交互环境用 passwordPrompt() 输入

数据来源与参考

  • MongoDB Manual: db.createUser()
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌