參考: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:關於每一個角色所擁有的操做權限能夠點擊上面的內置角色連接查看詳情。