Fork me on GitHub

mongodb用户权限管理

数据库 分配用户权限

接着上次实践的部分,启动mongodb并连接

./bin/mongod -f conf/mongod.conf
./bin/mongo 127.0.0.1:12345

查看默认的数据库情况

> show dbs
admin  0.000GB
local  0.000GB

> use admin
switched to db admin
> show tables
system.version

可以看到,目前数据库里除了一些基本信息,什么都没有

在创建设置用户权限之前,先了解一下文档知识

创建用户

# demo
db.createUser(
  {
    user: "reportsUser",
    pwd: "12345678",
    roles: [
       { role: "read", db: "reporting" },
       { role: "read", db: "products" },
       { role: "read", db: "sales" },
       { role: "readWrite", db: "accounts" }
    ]
  }
)

数据库内建角色

  • 数据库用户角色
    • read (读取指定数据库)
    • readWrite (读写指定数据库)
  • 数据库管理角色
    • dbAdmin (数据库管理员)
    • dbOwner (数据库所有者,合并了 readWrite, dbAdmin and userAdmin roles.)
    • userAdmin (用户管理员,可以找指定数据库里创建、删除和管理用户)
  • 集群管理角色
    • clusterAdmin (集群管理员)
    • clusterManager (集群管理者)
    • clusterMonitor (集合监视者)
    • hostManager (主机管理者)
  • 备份恢复角色
    • backup (备份)
    • restore (还原)
  • 所有数据库角色
    • readAnyDatabase (读任何数据库)
    • readWriteAnyDatabase (读写任何数据库)
    • userAdminAnyDatabase (用户管理任何数据库)
    • dbAdminAnyDatabase (任意数据库管理员)
  • 超级用户角色
    • root
  • 内部角色
    • __system
posted @ 2017-07-03 11:48  donglegend  阅读(212)  评论(0编辑  收藏  举报