位置: 编程技术 - 正文

MongoDB为用户设置访问权限(mongodb 设置用户名密码)

编辑:rootadmin
MongoDB已经使用很长一段时间了,基于MongoDB的数据存储也一直没有使用到权限访问(MongoDB默认设置为无权限访问限制),今天特地花了一点时间研究了一下,研究成果如下: 注:研究成果基于Windows平台 MongoDB在本机安装部署好后 1. 输入命令:show dbs,你会发现它内置有两个数据库,一个名为admin,一个名为local。local好像没啥用,如果哪位在使用过程中发现了这个local表的用途,希望能够留言提醒,那我们就专心来说说admin表 2. 输入命令:use admin,你会发现该DB下包含了一个system.user表,呵呵,没错,这个表就等同于MsSql中的用户表,用来存放超级管理员的,那我们就往它里面添加一个超级管理员试试看 3. 输入命令:db.addUser('sa','sa'),这里我添加一个超级管理员用户,username为sa,password也为sa,即然我们添加了超级管理员,那咱们就来测试下,看看咱们再次连接MongoDB需不需要提示输入用户名、密码,我们先退出来(ctrl+c) 4. 输入命令:use admin 5. 输入命令:show collections,查看该库下所有的表,你会发现,MongoDB并没有提示你输入用户名、密码,那就奇怪了,这是怎么回事呢?在文章最开始提到了, MongoDB默认设置为无权限访问限制,即然这样,那我们就先把它设置成为需要权限访问限制,咱们再看看效果,怎么设置呢? 6. 在注册表中,找到MongoDB的节点,在它的ImgPath中,我们修改一下,加入 -auth,如下所示: "D:Program Filesmongodbbinmongod" -dbpath e:workdatamongodbdb -logpath e:workdatamongodblog -auth -service 7. 输入命令:use admin 8. 输入命令:show collections,呵呵,我们发现无法查看该库下的表了,提示:"$err" : "unauthorized db:admin lock type:-1 client:.0.0.1",很明显,提示没有权限,看来关键就在于这里,我们在启动MongoDB时,需要加上-auth参数,这样我们设置的权限才能生效,好,接下来我们使用刚刚之前设置的用户名、密码来访问 9. 输入命令:db.auth('sa','sa'),输出一个结果值为1,说明这个用户匹配上了,如果用户名、密码不对,会输入0 . 输入命令:show collections,呵呵,结果出来了,到这里,权限设置还只讲到一多半,接着往下讲,我们先退出来(ctrl+c) . 输入命令:mongo TestDB,我们尝试连接一个新的库(无论这个库是否存在,如果不存在,往该库中添加数据,会默认创建该库),然后,我们想看看该库中的表 . 输入命令:show collections,好家伙,没权限,我们输入上面创建的用户名、密码 . 输入命令:db.auth('sa','sa'),输入结果0,用户不存在,这下有人可能就不明白了,刚刚前面才创建,怎么会不存在呢?原因在于:当我们单独访问MongoDB的数据库时,需要权限访问的情况下,用户名密码并非超级管理员,而是该库的system.user表中的用户,注意,我这里说的是单独访问的情况,什么是不单独访问的情况呢?接下来再讲,现在咋办,没权限,那我们就尝试给库的system.user表中添加用户 . 输入命令:db.addUser('test',''),哇靠,仍然提示没有权限,这可咋办,新的数据库使用超级管理员也无法访问,创建用户也没有权限,呵呵,别急,即然设定了超级管理员用户,那它就一定有权限访问所有的库 . 输入命令:use admin . 输入命令:db.auth('sa','sa') . 输入命令:use TestDB . 输入命令:show collections,哈哈,一路畅通无阻,我们发现可以利用超级管理员用户访问其它库了,呵呵,这个就是不单独访问的情况,不难发现,我们是先进入admin库,再转到其它库来的,admin相当于是一个最高级别官员所在区域,如果你是个地产商,想在地方弄个大工程做做,你想不经过那些高级官员就做,这是行不通的,你需要先去到他们那里,送点礼,再顺着下到地方,工程你就可以拿到手了,此言论仅为个人观点,不代表博客园;即然工程拿到手了,就要开始建了,那我们不至于每加块砖、添个瓦都得去和那帮高级官员打招呼吧,所以我们得让这个工程合法化,咱们得把相关的手续和证件弄齐全,不至于是违建 . 输入命令:db.addUser('test',''),我们给TestDB库添加一个用户,以后每次访问该库,我都使用刚刚创建的这个用户,我们先退出(ctrl+c) . 输入命令:mongo TestDB . 输入命令:show collections,提示没有权限 . 输入命令:db.auth('test',''),输出结果1,用户存在,验证成功 . 输入命令:show collections,没再提示我没有权限,恭喜您,成功了 注:当需要使用权限才能访问MongoDB时,如果需要查看MongoDB中所有的库,我们只能通过超级管理员权限,输入命令show dbs来查看了。

推荐整理分享MongoDB为用户设置访问权限(mongodb 设置用户名密码),希望有所帮助,仅作参考,欢迎阅读内容。

MongoDB为用户设置访问权限(mongodb 设置用户名密码)

文章相关热门搜索词:mongodb用户权限,mongodb设置用户密码,mongodb 权限设置,mongodb 权限设置,mongodb 设置用户名密码,mongodb设置用户密码,mongodb设置用户密码,mongodb 用户,内容如对您有帮助,希望把文章链接给更多的朋友!

MongoDB整库备份与还原以及单个collection备份、恢复方法 mongodump.exe备份的原理是通过一次查询获取当前服务器快照,并将快照写入磁盘中,因此这种方式保存的也不是实时的,因为在获取快照后,服务器还会

MongoDB常用命令小结 MongoDB常用命令:超级用户相关:useadmin#增加或修改用户密码db.addUser(ixigua,'pwd')#查看用户列表db.system.users.find()#用户认证db.auth(ixigua,'pwd')#删除用户db.remove

mongodb与mysql命令详细对比 传统的关系数据库一般由数据库(database)、表(table)、记录(record)三个层次概念组成,MongoDB是由数据库(database)、集合(collection)、文档对象(

标签: mongodb 设置用户名密码

本文链接地址:https://www.jiuchutong.com/biancheng/320208.html 转载请保留说明!

上一篇:MongoDB 快速入门(mongodb视频教程)

下一篇:MongoDB整库备份与还原以及单个collection备份、恢复方法(mongodb如何备份)

  • 计算增值税时要包括关税吗
  • 印花税核定征收文件
  • 公司旧车出售要交什么税
  • 税控盘的功能特点是
  • 锦州税务师考试在哪个学校
  • 多交增值税怎么算
  • 消费税在哪个环节可以抵扣
  • 房屋出租收到的租金会计分录
  • 旅游发票可以抵扣吗
  • 增值税期末余额在哪方
  • 损益类结转本年利润摘要
  • 坏账准备贷方核算内容
  • 发行债券的会计要素
  • 报销增值税专票绿的
  • 单位的收入是刷卡怎么做账
  • 柴油可以销售吗
  • 会员卡退钱是退全额吗
  • 筹备费用怎么扣税的
  • 货运代理可以开9个点的发票吗?
  • 制作费计入什么会计科目
  • 为什么增值税发票综合服务平台进不去
  • 土地闲置费可以税前扣除吗
  • 企业生产经营模式
  • 供应商把价格算错了怎么办
  • 空调作为固定资产吗
  • macbookair重制系统
  • psbcie.exe是什么
  • 外购的礼品送客户怎么做分录小规模
  • 长期投资损失的确认
  • 工程竣工决算会计账务处理
  • 金融资产减值的账务处理
  • zend framework手册
  • 事业单位体检费用标准
  • 企业所得税计提会计分录怎么做
  • 车间使用的辅助材料
  • php测验
  • MS Excel: COUNTIF Function (WS)
  • 低值易耗品五五摊销法怎么计算
  • 负债总计是负数
  • 代收代付进项税转出吗
  • 购买图书的会计账务处理
  • sqlserver2005使用
  • 收据十万大写金额填写样本
  • 兼营和混合销售怎么区分
  • 或有资产的确认条件基本确定
  • 小规模纳税人如何升级为一般纳税人
  • 固定资产一次性扣除政策
  • 一般纳税人应如何报税
  • 先收款后给发票
  • 把上级机关来文转给下级机关的通知
  • 购买汽车的工本费如何入账
  • 应付账款扣款分录
  • 土地补贴款是什么意思
  • 一次性付款的优势
  • 对公帐户发票金额是什么
  • mysql数据库5.7.27安装
  • sql server服务器模式
  • mysql查询语句大全及用法
  • Centos7.3下mysql5.7.18安装并修改初始密码的方法
  • mysql8 递归
  • sql语句相似度计算
  • win8怎么查看系统版本
  • 请问usb是什么意思啊
  • securecrt设置英文
  • windows怎么更改网络状态
  • linux服务器搭建实战详解
  • win8个性化外观恢复默认设置
  • win7 u盘不显示
  • cocos2d-x教程
  • linux怎么添加新用户
  • Unity3D游戏开发培训课程大纲
  • 有关javascript的书
  • shell脚本cut -d
  • JavaScript基础语法
  • node.js的express
  • unity2d小地图
  • 谈谈我对美国的印象
  • 无锡医疗保险缴费比例
  • 不予税务行政许可
  • 地域税收收入增长原因
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设