• 主页
  • 归档
  • 分类
  • 照片墙
所有文章 友情链接 关于我

  • 主页
  • 归档
  • 分类
  • 照片墙
  1. 1. 创建用户
  2. 2. 开启权限认证
  3. 3. 认证用户

4.0、安全验证

2018-01-09 19:24:14
总字数 527
预计阅读时间 2 分钟

mongoDB在默认情况下是没有开启权限认证的 , 也就是不需要用户名密码就可以连接数据库

创建用户

1
db.createUser(<userinfo>) 

其中userinfo是一个json数据 , 包含下列属性

  • user - 用户名
  • pwd - 密码
  • customData - 任意的自定义内容
  • roles : [{ role : <角色类型>, db : <数据库名称> } , … ]
    一个用户可以对应多个角色 , 所以是一个数组结构

mongoDB当中内置的角色类型有:

  • 数据库用户角色:read、readWrite;
    允许用户 读/读写 指定的数据库
  • 数据库管理角色:dbAdmin、dbOwner;
    允许在指定数据库中执行管理函数 , 如索引增删 查看统计等
  • 用户管理角色:userAdmin
    允许向system.users集合写入数据, 可以在指定数据库增删用户
  • 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
  • 备份恢复角色:backup、restore;
  • 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
    可以在所有数据库中进行 读/读写/用户管理
  • 超级用户角色:root
  • 内部角色:__system

举例

1
2
3
4
5
6
7
8
9
db.createUser({
user:"sookie",
pwd:"123456",
customData:{info:"this is my first user"},
roles:[
{role:"userAdmin",db:"admin"},
{role:"read",db:"demo"}
]
})

开启权限认证

在配置文件中添加 ( 关于配置见前一节的内容 )
auth=true
重启服务即可开启数据库的权限认证

认证用户

连接到mongoDB数据库以后 , 由于开启了权限认证
如果不进行用户认证 , 是没有任何权限的
auth

进行认证的步骤如下

切换到用户所在的数据库 , 比如刚才创建的用户在demo数据库下具有”read”权限
就执行use demo
执行db.auth("用户名","密码")

注意 帐号是跟着库走的,所以在指定库里授权,必须也在指定库里验证(auth)

认证完成后 , 当前用户就可以执行权限所允许的操作了


附 : 在Robomongo当中使用指定用户访问数据库的方法
auth

  • 数据库
  • MongoDB
  • MongoDB

扫一扫,分享到微信

Lamdba表达式(1)
Hexo站点实现站内搜索 
© 2024 夏夜梦星辰
鲁ICP备19028444号
Power By Hexo
  • 所有文章
  • 友情链接
  • 关于我
{{searchItem.query}}
标签: 分类:
  • maven
  • 持续集成
  • JMS
  • 线程
  • JavaScript
  • ECMAScript6
  • 单元测试
  • Promise
  • Web Worker
  • 函数
  • prototype
  • 模块化
  • 正则表达式
  • 数据库
  • MongoDB
  • 索引
  • 集群
  • 全文检索
  • flutter
  • dart
  • git
  • 版本控制
  • linux
  • shell
  • docker
  • nginx
  • jenkins
  • opencv
  • vim
  • react
  • react native
  • 前端
  • css
  • HTML5
  • Hexo
  • sass
  • Three.js
  • TypeScript
  • Vue
  • 组件化
  • base64
  • webpack
  • nodejs
  • gulp
  • TensorFlow
  • 机器学习
  • 算法
  • 动态规划
  • 数据结构
  • Java
  • JavaScript
  • MongoDB
  • flutter
  • Git
  • linux
  • react
  • 前端杂烩
  • 男生女生
  • 算法
  • 十年饮冰,难凉热血
  • †少女癌†
  • 猫与向日葵
  • coderfun
  • JENKINS
  • API管理后台
愿你最终能接纳每一面每一种的自己
独自活着便是团圆