位置: 编程技术 - 正文

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如何备份)

  • 增值税发票丢失最新处理办法
  • 幼儿园经营支出指什么
  • 报表中存货包括什么科目
  • 如何理解合并报表的调整和抵消
  • 发票号码代码不合法
  • 集团内部借款利息可以税前扣除吗
  • 生产成本存货会计分录
  • 股权投资公司如何找项目合作
  • 承担客户装修费怎么入账
  • 购买固定资产进项税率
  • 电力工程公司岗位职责
  • 盘亏设备一台
  • 税务局申请发票
  • 企事业承包承租方缴纳的管理费税费
  • 国家税务总局关于取消增值税扣税凭证
  • 普票冲红需要收回全部联次吗
  • 货运发票与运输发票的区别
  • 个人收到支票如何做账
  • 固定资产清理出售合同
  • 公司资产重组流程
  • 支付罚款的支出计入什么科目
  • 增值税申报错误已经扣税怎么处理
  • 存货减值账务处理 华图
  • 公允价值变动损益怎么算出来的
  • 从租计征房产税怎么申报
  • 收入确认和成本的关系
  • pavfires.exe - pavfires是什么进程 有什么用
  • php实现文件下载功能
  • php jsondecode
  • 关于坏账准备的论文
  • php set_time_limit
  • Asian elephants in West Bengal, India (© Avijan Saha/Minden Pictures)
  • pytorch基础教程
  • ci框架教程
  • php开发文档
  • spring boot整合hibernate
  • xch 未来
  • 【K210】K210学习笔记七——使用K210拍摄照片并在MaixHub上进行训练
  • centos7编译安装内核
  • 收到返利冲成本还是记收入
  • 留言板系统php
  • mongodb使用教程
  • 劳务派遣工资是死的吗
  • 印花税的计税依据为各种应税凭证上所记载的计税金额
  • 一般纳税人涉及进项税额转出的有
  • 个人所得税是可以全部退回吗
  • 土地开发成本包刮
  • sql server 2008数据库文件
  • sql乘函数
  • 公租房特许经营权转让
  • 出租车发票能不能抵扣进项
  • 营业成本利润率行业均值
  • 专利转让费一般是多少
  • 免税发票可以抵扣税收农产品吗
  • 股权转让如何避免转让前债务
  • sql server 用法
  • 桌面上家庭组图标是干嘛
  • mobile window
  • win7笔记本电池电量显示怎么设置
  • win8鼠标指针不见了
  • cocos2dx游戏案例
  • opengl绘制球面
  • javascript数据结构与算法项目计算找零
  • JS 中document.write()的用法和清空的原因浅析
  • python字符串处理为年月日
  • 浅谈双减背景下的高效课堂
  • unity怎么创建空对象
  • Jquery针对tr td的一些实用操作方法(必看篇)
  • javascript获取css
  • python正则函数
  • 查博士报告怎么查真假
  • 洗煤与选煤
  • 乡镇地税局待遇
  • 金米财税不退款怎么办
  • 河北云办税厅2.0登录
  • 车船税可以异地补办吗
  • 上海买房各种税
  • 供热基础设施配套费
  • 小规模纳税人销售货物税率是多少
  • 汽车维修费税率是13还是6
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设