mongoDB 3.0安全权限访问控制
来源:互联网 发布:大数据 应用 编辑:程序博客网 时间:2024/05/20 20:22
关于MongoDB 3.0的权限,通过各种搜索大神,出来一片错误的坑文,其实通过阅读官方文档得知,老版用户创建方法已不复存在,已有新方法代替。
首先我们在配置文件mongodb.conf中,权限配置auth不要进行配置,待创建管理用户后再开启该配置。
首先我们来设置职能管理用户的权限,它对应的角色为:userAdminAnyDatabase或userAdmin
1、添加管理用户:
use admin db.createUser( { user: "admin", pwd: "admin", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] } )
注意:这里的的db.createUser()是新版中创建用户的方法,它替换老本的db.addUser()用户创建方法。
2、当前在admin数据库命名下,通过以下命令查看admin数据库命名下的所有用户信息:
show users或者
db.system.users.find()此时,如果用户列表包含刚刚创建的admin用户,表示用户创建成功。
3、开启配置文件的auth属性,并重新启动mongoDB
通过命令查询mongo的PID:
ps aux | grep mongoroot 5204 0.3 3.4 687224 66652 Sl 15:28 0:09 ./mongod -f mongodb.conf
5024代表当前启动的mongo进程的PID,通过kill命令结束该进程:
kill -2 5024注意:千万不要通过kill -9 PID来结束进程,通过kill -2 PID或者通过db.shutdownServer()完成操作
再次启动mongoDB:
./mongod -f mongodb.conf
4、连接mongoDB
./mongo --port 27017连接成功后,命令行会变为">"符号的起始符号
5、认证用户,返回1时表示认证成功
db.auth('admin','admin')认证用户语法:db.auth(username,pwd),两个参数分别是:username为用户名,pwd为密码。用户名和密码均为开始通过db.createUser方法创建用户时指定的用户名和密码。
6、创建操作权限用户
admin用户,前边已经提到,指定它的role为userAdminAnyDatabase,只有管理用户权限,我们只能通过它来创建用户等一系列用户管理操作。无法进行mongoDB数据库操作,例如利用下列命令,查看当前数据库命名下的所有集合,会报错:
show collections此时,我们需要切换到具体的数据库命名下,再次利用db.createUser方法,为单个数据库命名空间创建用户。
我们为eugene数据库命名空间创建用户eugene,密码为eugene:
use eugenedb.createUser( { user: "eugene", pwd: "eugene", roles: [ { role: "readWrite", db: "eugene" } ] } )
roles中的role可指定的具体值为:read, readWrite, dbAdmin, root
这里,我们指定eugene用户拥有eugene数据库命名的读写权限。
7、在eugene数据库命名空间下,认证拥有数据库操作权限的用户
db.auth("eugene","eugene")此时,已拥有了eugene数据库的读写权限,为所欲为吧!
创建用户的官方文档:http://docs.mongodb.org/manual/core/authorization/
权限说明的官方文档:
http://docs.mongodb.org/manual/core/authorization/
http://docs.mongodb.org/manual/reference/built-in-roles/
0 0
- mongoDB 3.0 安全权限访问控制(转)
- mongoDB 3.0 安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- mongoDB 3.0安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- MongoDB 3.0+ 安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- MongoDB 3.0安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- MongoDB 3.0 安全权限访问控制
- MongoDB 3.0安全权限访问控制
- MongoDB 3.0+ 安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- 拼音输入法(MPinyinIME)
- linux系统调用分析
- HDU1021 - Fibonacci Again (水题 找规律)
- STM32F4——TFT-LCD原理及FSMC
- Objective-C学习笔记十:继承二
- mongoDB 3.0安全权限访问控制
- MFC友好信息提示类
- spring jdbc的使用
- 激活硬盘被关闭的DMA模式
- 第三篇 (面向对象)①: 关于Java的面向对象特性
- Objective-C学习笔记11:多态和动态类型
- iOS 设置导航栏 Navigationbar相关信息
- 我自己的
- 欢迎使用CSDN-markdown编辑器