位置: 编程技术 - 正文

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

  • 建筑企业印花税的计税依据
  • 购房返现金需要什么资料
  • 受托代销商品款是什么科目
  • 增值税一般纳税人证明文件
  • 接收抵债资产税费
  • 如何快速整理会计凭证
  • 包工包料和包清工
  • 集团内部是什么意思
  • 去年税收滞纳金计入什么科目
  • 进口一批原材料,海关核定的关税完税价格
  • 供电局开具增值发票
  • 开具普通发票只写单位名称和税号可以吗?
  • 税务局工会经费新举措
  • 外籍劳务费个税扣除标准
  • 固定资产明细账有哪些
  • 客户少付货款怎么做账
  • 出口旧设备最新政策
  • 商家收白条
  • 王者荣耀中孙膑是男的女的
  • 读会计没有考到证 能出来干什么
  • 工程结算如何做账
  • 鸿蒙系统网络差怎么解决
  • 接入设备检测
  • type3插件
  • 日记账登记错了怎么办
  • PHP:session_set_save_handler()的用法_Session函数
  • PHP:spl_object_hash()的用法_spl函数
  • 企业公益性捐赠扣除限额
  • wordpress自定义文章类型
  • vue unknown custom element
  • joomla组件
  • html-css
  • php分层
  • Vue2 Element description组件 列合并
  • 替票报销财务犯法吗
  • vuex和bus
  • cd相关命令
  • 交税务局的工会经费现金流
  • 代收款用什么会计科目
  • wordpress!
  • phpcms怎么样
  • 补缴以前年度附加税怎么申报
  • 个税赡养老人分摊方式怎么更改
  • 备抵类是什么意思
  • 进出口代理的账务怎么做
  • 小规模纳税人企业所得税税收优惠政策
  • 筹建期有时间限制吗
  • 进项票可以抵扣企业所得税吗
  • 管理费用是怎么计算的
  • 出口免税进项税怎么处理
  • 商业承兑汇票风险高吗
  • 结转增值税的账务处理
  • 融资租赁会计处理实例承租人
  • 期末库存商品怎么结转
  • 结转周转材料成本
  • 所得税汇算清缴退税会计分录怎么做
  • 电脑充电系统故障
  • iis的服务
  • windows允许多用户登录
  • VMware虚拟机安装miui14
  • centos查找目录命令
  • regsrv.exe - regsrv是什么进程 有什么用
  • win7 分区表
  • Centos 6.4 安装dnsmasq的方法
  • windows8输入法
  • win系统找回删除文件
  • 红石id
  • jquery的实现原理
  • python语言中
  • 安卓机怎么直播
  • python语言解析
  • jquery map遍历
  • js新年倒计时
  • :javascript
  • android界面设计规范
  • 广西地方税务局决算公开表
  • 税友核心价值观
  • 广告费加计扣除标准
  • 个人养老金没有开立资金账户
  • 迅雷网站官网下载
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设