mogodb数据库简单的权限分配

Posted dupd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mogodb数据库简单的权限分配相关的知识,希望对你有一定的参考价值。

mongdb数据库默认不需要权限认证,但为了安全起见,最好设置下需要权限认证,启动的时候设置auth=true即可。

推荐通过mongodb.conf配置文件的形式启动mongodb   进入mongodb bin目录执行./mongod  -f   xxxx/mongodb.conf

dbpath=/home/dupeidong/data/db
logpath=/home/dupeidong/mongodb/log/mongodb.log
port=27017
fork=true
logappend=true
bind_ip=127.0.0.1 
auth=true  

设置了auth=true, 那么第一次启动mogodb数据的时候,访问数据库如show dbs,会提示没有权限,需要添加一个超级管理员。然后切换到admin数据库,再以超级管理员的身份登录 ,执行 show dbs,可以成功的查看到当前数据库列表admin数据库和local数据库

db.createUser(user:‘admin‘, pwd: ‘12345‘,roles: [role: ‘userAdminAnyDatabase‘, ‘db‘: ‘admin‘])
use admin
db.auth(‘admin‘, ‘12345‘)
show dbs
  admin
  local

admin虽然是超级管理员,但是对具体的数据库如article却没有操作权限,所以需要针对具体的数据库添加相应的用户管理员。为某个数据库添加用户,应先切换到该数据库,然后添加用户。

ps: 在执行use article之前要保证已经以超级管理员的身份登录,才能成功给article添加用户,超级管理员有添加用户的权限

use article
db.createUser(user:‘dpd‘,pwd:‘dpd‘,roles:[role:‘readWrite‘,db:‘article‘])
db.createCollection("test")

 

最后如果没有关闭数据库的权限,需要通过下边指令获取授权

use admin
db.auth(‘admin‘, ‘12345‘)
db.grantRolesToUser( "admin" , [ role: "hostManager", db: "admin" ])

 

以上是关于mogodb数据库简单的权限分配的主要内容,如果未能解决你的问题,请参考以下文章

SqlServer 添加用户 添加角色 分配权限

RABC权限控制(页面操作角色,权限和进行分配)

权限的简单想法

jquery easy ui 1.5最新版本 简单的权限分配

各位高手,请问,在oracle中创建的用户都分配哪些权限?一般分配哪些权限?

简单设计一个RBAC权限权限模型