MongoDB 访问控制
来源:互联网 发布:饥荒数据修改器 编辑:程序博客网 时间:2024/06/05 11:02
来自:http://blog.csdn.net/tian_yan_jing/article/details/7877289
Mongodb默认启动是不带认证的,也没有账号,只要连接上服务就可以进行CRUD操作。作为数据库软件,为了保证数据的安全,可以采用以下方法提高数据访问的安全性:
1、绑定要访问MongoDB服务所在的ip内网地址
在启动时添加--bind_ip参数用以限制只允许某一特定IP地址访问MongoDB服务,如:服务端限制只有58.20.3.52这个IP可以访问MongoDB服务
客户端访问时需要指定服务端的IP,否则会报错:
此时服务端和客户端位于一台机器,所以IP一致
2、设置监听端口
默认的监听端口是27017,我们可以修改这个监听端口,如:将服务器监听端口修改为27018
当服务端指定了端口后,客户端访问时需要明确指定端口才可以访问
3、使用用户名和口令登陆
MongoDB默认启动是不需要用户名和密码的,一个MongoDB实例中的每个数据库都可以拥有许多用户,使用--auth开启安全性检查,则只有数据库认证的用户才能执行读写操作。
1、添加用户,使用addUser('username’, ‘password’, ‘是否只读true|false(default)' )
在admin数据库中的用户被视为超级管理员,--auth开启安全认证检查之前一定要有个管理员帐号。
test普通数据库中添加了两个普通账户tom和tory,而tory账户只拥有readOnly权限。
2、开启安全认证检查(--auth)
启动MongoDB服务时添加-auth参数开启安全认证,开启安全认证检查之前一定要有个管理员帐号
带有-auth参数时,必须通过认证才可以查询数据。如果没有加-auth参数,即使配置了安全认证用户,也不需要认证谁都可以操作。
3、用户认证
使用--auth开启安全性检查之后,则只有数据库认证的用户才能执行读写操作
db.auth('tom' ,'123')用户认证,tom用户具有test数据库下的读写权限
tory用户只有test数据库下的读权限
非特权用户不能使用show dbs查看所有数据库,作为超级管理员root用户,可以对所有数据库进行任意操作。
system.user
每个数据库的用户账号都是以文档形式存储在system.users集合里面的,
文档结构{'user':username, 'readOnly':true, 'pwd': password hash}。password hash是根据用户名和密码生成的散列。
查询某个数据库下的用户db.system.users.find();
删除某个数据库下的所有用户db.system.users.remove(),删除指定用户db.system.users.remove({'user':'用户名'})
转载链接:http://my.oschina.net/xiaomaoandhong/blog/65270
- MongoDB 访问控制
- MongoDB 访问控制
- MongoDB访问控制
- mongodb 访问权限控制
- mongodb系列-访问控制
- MongoDB 安全权限访问控制
- MongoDB 安全权限访问控制
- MongoDB学习整理之访问控制
- MongoDB 数据库操作(九)-访问控制
- mongodb访问控制及iptables管理
- mongoDB 3.0 安全权限访问控制(转)
- mongoDB 3.0 安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- mongoDB 3.0安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- mongoDB 3.0 安全权限访问控制
- MongoDB 3.0+ 安全权限访问控制
- C++虚函数表解析(转)
- android-内存溢出-子view未回收-非大众版
- WSCRIPT与CScript区别解释
- php 默认时区设置 date_default_timezone_set
- 火狐 跨域问题解决
- MongoDB 访问控制
- abap 弹出窗口屏幕(screen)实现关闭右上角的关闭按钮事件
- VMware的四种网络连接方式
- Permission is only granted to system apps解决方法
- JQUERY Live Hover
- 在oracle中where 子句和having子句中的区别
- 法门寺模式最终失败?
- BCB用OLE操作Excel
- Meet Microsoft, the world's best kept R&D secret