MongoDB之用户管理
注意点:
验证库: 建立用户时use到的库及用户的验证库,在使用用户时,要加上验证库才能登陆。 对于管理员用户,必须在admin下创建.
1. 建用户时,use到的库,就是此用户的验证库
2. 登录时,必须明确指定验证库才能登录
3. 通常,管理员用的验证库是admin,普通用户的验证库一般是所管理的库设置为验证库
4. 如果直接登录到数据库,不进行use,默认的验证库是test,不是我们生产建议的.
5. 从3.6 版本开始,不添加bindIp参数,默认不让远程登录,只能本地管理员登录。
创建用户:
use admin
db.createUser
{
user: "<name>",
pwd: "<cleartext password>",
roles: [
{ role: "<role>",
db: "<database>" } | "<role>",
...
]
} 基本语法说明:
user:用户名
pwd:密码
roles:
role:角色名
db:作用对象
role:root, readWrite,read
使用验证数据库登录:
mongo -u oldboy -p 123 10.0.0.53/oldboy
创建管理员:
创建超级管理员:管理所有数据库(必须use admin再去创建)
$ mongo
use admin
db.createUser(
{
user: "root",
pwd: "root123",
roles: [ { role: "root", db: "admin" } ]
}
)
验证用户:
db.auth('root','root123')
启用密码登录:
vim /mongodb/conf/mongo.conf security:
authorization: enabled # 关闭并重启mongo
mongod -f /mongodb/conf/mongo.conf --shutdown
mongod -f /mongodb/conf/mongo.conf
创建应用用户:
use oldboy
db.createUser(
{
user: "app01",
pwd: "app01",
roles: [ { role: "readWrite" , db: "oldboy" } ]
}
) mongo -uapp01 -papp01 app
[查看用户]
use admin
db.system.users.find().pretty()
[删除用户]
删除用户
db.createUser({user: "app02",pwd: "app02",roles: [ { role: "readWrite" , db: "oldboy1" } ]})
mongo -uroot -proot123 10.0.0.53/admin
use oldboy1
db.dropUser("app02")
用户管理注意项:
1. 建用户要有验证库,管理员admin,普通用户是要管理的库
2. 登录时,注意验证库
mongo -uapp01 -papp01 10.0.0.51:27017/oldboy
3. 重点参数
net:
port: 27017
bindIp: 10.0.0.51,127.0.0.1
security:
authorization: enabled
一般链接方式:
/usr/local/mongodb/bin/mongo --host 180.76.159.126 --port
27017 --authenticationDatabase articledb -u bobo -p 123456
常用的内置角色:
数据库用户角色: read、readWrite;
所有数据库用户角色: readAnyDatabase、readWriteAnyDatabase、
userAdminAnyDatabase、dbAdminAnyDatabase数据库管理角色: dbAdmin、dbOwner、userAdmin;
集群管理角色: clusterAdmin、clusterManager、clusterMonitor、hostManager;
备份恢复角色: backup、restore;
超级用户角色: root
内部角色: system

MongoDB之用户管理的更多相关文章
- mongodb的用户管理及安全认证
1.确认mongodb的版本 > use admin switched to db admin > db.runCommand({}) { "version" : &q ...
- MongoDB的用户管理(6)
注意: A)在mongodb中,有一个admin数据库, 牵涉到服务器配置层面的操作,需要先切换到admin数据. 即 use admin , -->相当于进入超级用户管理模式. B)mongo ...
- MongoDB快速入门学习笔记7 MongoDB的用户管理操作
1.修改启动MongoDB时要求用户验证加参数 --auth 即可.现在我们把MongoDB服务删除,再重新添加服务 mongod --dbpath "D:\work\MongoDB\dat ...
- MongoDB的用户管理命令
1.给TD数据库添加用户使用 use TD 然后执行 db.addUser("名称","密码"); 即可添加: 2.启用用户使用 db.auth(" ...
- MongoDB基础之七 用户管理
MongoDB的用户管理 注意:A)在mongodb中,有一个admin数据库, 牵涉到服务器配置层面的操作,需要先切换到admin数据.即 use admin , -->相当于进入超级用户管理 ...
- mongodb3 ubuntu离线安装(非apt-get)及用户管理
目前mongodb已经出到3.x,相对于2.x改动较大,本着学新不学旧的原则来捣鼓nosql数据库.最初想着apt-get安装但是软件源上都是2.x的,遂下载好后传到服务器安装. 1.下载 不得不说国 ...
- 【mongoDB运维篇①】用户管理
3.0版本以前 在mongodb3.0版本以前中,有一个admin数据库, 牵涉到服务器配置层面的操作,需要先切换到admin数据库.即 use admin , 相当于进入超级用户管理模式,mongo ...
- mongodb用户管理和服务安装
一.忘记密码快速找回 任何系统忘记密码都是一样的操作:以无需授权的模式开启程序,然后进入系统修改权限设置,退出来重新以授权方式开启程序.MySQL是这样,MongoDB也是这样.好的系统都提供了无授权 ...
- 浅析MongoDB用户管理
浅析MongoDB用户管理 http://www.jb51.net/article/53830.htm mongodb3.03开启认证 http://21jhf.iteye.com/blog/2216 ...
- mongodb之用户/认证/角色/权限管理
前言 用户权限管理很重要,只给需要的权限,防止应用系统漏洞导致脱库 认证和授权 Authentication 认证识别,解决我是谁 Authorization 操作授权,我能做什么 认证机制 MONG ...
随机推荐
- 工具 – VS Code Extensions
前言 分享我用着的 Extensions. Angular Language Service 不用介绍,用 Angular 的必装. Better Comments 让注释有多点颜色 more col ...
- mongo查看服务状态
转载请注明出处: 查看数据库列表 show dbs 查看当前数据库 db 查看集合列表 show collections 查看数据库的状态 db.stats() 查看集合的状态 db.collecti ...
- async/await和Grand Central Dispatch代码切换
很多iOS开发开始学习结构化并发时已经用过了很多年Grand Central Dispatch,虽然从思想上二者区别很大,但是利用熟悉的东西去理解新的事物有助于提升学习理解的效率,接下来是这Grand ...
- IntelliJ IDEA插入时间文本
IntelliJ IDEA插入时间文本 需求: 在使用IDEA编辑一些文本时,需要插入指定格式的当前时间文本,首先想到的是找找有没有相关的IDEA插件,看到确实有别的猿做过相关的插件,但当时找到的文章 ...
- 关于Android Q平台上qssi的介绍
QSSI 是 Qualcomm Single System Image 的缩写. Android Q上开始支持QSSI. QSSI 是用来编译system.img的3.1 QSSI编译注意事项 lun ...
- 使用nnUNet跑BraTS脑肿瘤分割预测TC和ET非常低的原因。
使用nnUNet跑BraTS脑肿瘤分割预测TC和ET非常低,原来是预测的时候,使用了预处理后的标签.原本标签是:2:WT, 1:TC, 4:ET.但是预处理之后变为:1:WT, 2:TC, 3:ET. ...
- yaml.load与yaml.dump的用法
import yaml #向yaml文件中写 with open("E:\个人\ rename.yaml", 'w') as f: project = {'在远方':"1 ...
- 谈谈 keep-alive 组件,以及它们的实现原理
keep-alive 组件的使用场景: 我们切换 2 个组件的时候,2个组件会轮流被销毁创建,但是现在需求,切换到一个组件,另一个组件不会别销毁,会保留原来的状态 :就要使用 vue 内置的组件 ke ...
- 我们在 vue 项目中如何做路由导航守卫
一般在 src 文件夹新建一个 permission 文件 ,单独用来做路由导航守卫业务 ,在 main.js 导入文件即可 : 主要功能有 判断是否有 token ,以此判断用户是不是登录了 :
- 7.flask 源码解析:session
目录 一.flask 源码解析:session 1.1 session 简介 1.2 解析 1.2.1 请求过程 1.2.2 session 对象 1.2.3 签名算法 1.2.4 应答过程 1.3 ...