日期:2014-05-16  浏览次数:20573 次

Mongodb 访问权限设置
翻译至: http://www.mongodb.org/display/DOCS/Security+and+Authentication#SecurityandAuthentication-ConfiguringAuthenticationandSecurity


目前mongodb只提供最基本的用户权限认证保护,你可以给特定的数据库设置访问权限,现在有两种权限:1.完全的读写权限;2.只读权限。


单个mongod模式:
如果要对mongodb进行权限控制,需要做以下工作:
1. 登录数据库添加--auth参数。
2. 设置admin的用户名,密码。
3. 设置各个数据库的用户名,密码
4. 用客户端登陆:mongo ip:port/db -u user -p pass

注意:如果admin没有设置用户名和密码,则在本地可以直接登陆,不需要输入账户密码。

使用replica set 和 sharding模式:
与单个mongod模式唯一的区别就是这里使用了key file来实现不同服务器之间进行内部交流,这个文件是一个普通的文本文件,文件内容为Base64的字符串,大小为6个字符到1k:

1. 不适用keyFile,使用admin,添加一个用户名和密码
2. 关闭所有的服务器,使用keyFile参数启动服务器。

如果在使用keyFile参数时,没有任何用户存在,则不能成功登陆数据库。