Mongodb remote access
来源:互联网 发布:知乎水族箱品牌 编辑:程序博客网 时间:2024/06/03 10:21
前提条件:
默认情况下不使用账号密码即可登录,如果要认证登录,需要在启动参数上增加 -auth或者在参数文件中追加auth = true然后重新启动mongodb,安全关闭请在admin数据库下使用db.shutdownServer()
创建用户
定义:创建一个数据库新用户用db.createUser()方法,如果用户存在则返回一个用户重复错误。
语法:db.createUser(user, writeConcern)
user这个文档创建关于用户的身份认证和访问信息;
writeConcern这个文档描述保证MongoDB提供写操作的成功报告。
· user文档,定义了用户的以下形式:
{ user: "<name>", pwd: "<cleartext password>", customData: { <any information> }, roles: [ { role: "<role>", db: "<database>" } | "<role>", ... ] }
user文档字段介绍:
user字段,为新用户的名字;
pwd字段,用户的密码;
cusomData字段,为任意内容,例如可以为用户全名介绍;
roles字段,指定用户的角色,可以用一个空数组给新用户设定空角色;
在roles字段,可以指定内置角色和用户定义的角色。
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:关于每个角色所拥有的操作权限可以点击上面的内置角色链接查看详情。
· writeConcern文档(官方说明)
w选项:允许的值分别是 1、0、大于1的值、"majority"、<tag set>;
j选项:确保mongod实例写数据到磁盘上的journal(日志),这可以确保mongd以外关闭不会丢失数据。设置true启用。
wtimeout:指定一个时间限制,以毫秒为单位。wtimeout只适用于w值大于1
例子
1,在非认证模式下创建用户> db.createUser( { "user" : "admin123",... "pwd": "admin123",... "customData" : { employeeId: 12345 },... "roles" : [ { role: "clusterAdmin", db: "admin" },... { role: "readAnyDatabase", db: "admin" },... "readWrite"... ] },... { w: "majority" , wtimeout: 5000 } )Successfully added user: { "user" : "admin123", "customData" : { "employeeId" : 12345 }, "roles" : [ { "role" : "clusterAdmin", "db" : "admin" }, { "role" : "readAnyDatabase", "db" : "admin" }, "readWrite" ]}> db.createUser({"user":"admin",... "pwd":"admin123",... "roles":["root"]},... {w:"majority",wtimeout:5000})Successfully added user: { "user" : "admin", "roles" : [ "root" ] }
2,重启数据库,
3,使用客户端工具登录
mongo -u admin -p admin123 --authenticationDatabase admin
或者使用MongoVUE、RoboMongo登录
注意,如果没有使用认证登录,mongo客户端显示提示信息
** WARNING: Access control is not enabled for the database
阅读全文
0 0
- Mongodb remote access
- SSL Remote Access VPNs
- Remote desktop web access
- mysql remote access
- Remote Access To MySQL
- Jboss remote access
- mysql remote access
- visualvm remote access denied
- ElasticSearch Remote Access
- remote access between two linuxs
- Building Cisco Remote Access Networks
- SQL Server 2005 Remote Access
- How to access remote mysql
- remote desktop access on windows
- Linux remote access using X11
- Configuring DCOM for Remote Access
- Hadoop HA Namenode remote access
- 12. 开启 mysql remote access
- java nio 读取文件简洁方便
- 实现远程监控【BOA/JPEG/MJPEG-STREAMER】
- jQuery之元素的遍历和元素的过滤
- 本回显示更换的图片
- 二值图像形态学处理之边界检测
- Mongodb remote access
- redis持久化方式浅析
- FreeMarker使用Template生成可变参数的json(一),及访问Template出现not found
- java抽象类和抽象方法
- phpize出错
- zxing实现二维码扫描完美解决方案
- What does N+1 redundancy mean?
- JDBC驱动
- 阿里系产品Xposed Hook检测机制原理分析