参考:mongodb
http://docs.mongodb.org/manual/tutorial/add-user-administrator/ shell
http://docs.mongodb.org/manual/reference/method/db.createUser/#create-administrative-user-with-roles数据库
一,添加admin帐号(这个过程不要开启认证模式)vim
http://docs.mongodb.org/manual/tutorial/add-user-administrator/#procedureui
[root@localhost zhangy]# mongospa
MongoDB shell version: 2.4.6rest
connecting to: tankorm
>use admin;get
> db.createUser({cmd
user:'root',
pwd:'ni350305@163.com',
roles: [ { role: "root", db: "admin" } ]
});
或者用于修改用户权限:
http://docs.mongodb.org/manual/reference/command/updateUser/#dbcmd.updateUser
db.runCommand({"updateUser":"root","roles":[{role:"root",db:"admin"}]});
2、开启动用户权限认证
[root@localhost zhangy]# vim /etc/mongodb.conf //将auth=true前面的注释拿掉
[root@localhost zhangy]# /etc/init.d/mongod restart //重启生效
3、链接数据库
mongo --port 27017 -u root -p ni350305@163.com --authenticationDatabase admin
为某个数据库建立一个用户
>use autocomplete
>db.createUser({
user:'easy',
pwd:'easy',
roles: [ { role: "readWrite", db: "autocomplete" }]
});
4、mongodb的 Built-In Roles(内置角色):
1. 数据库用户角色:read、readWrite;
2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;
3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4. 备份恢复角色:backup、restore;
5. 全部数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6. 超级用户角色:root
// 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
7. 内部角色:__system
PS:关于每一个角色所拥有的操做权限能够点击上面的内置角色连接查看详情。