位置: 编程技术 - 正文

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

  • 制造费用科目一定无余额
  • 收到税费返还是什么现金流量
  • 可供出售金融资产公允价值变动
  • 所得税申报表收入
  • 加油充值卡发票能入账吗
  • 农业机耕开发票税收分类编码是什么
  • 收到投资款的会计科目
  • 代开了专票,但是销售额没有超过30万怎么处理
  • 印花税是不是必须要交
  • 银行回单附言写错业务
  • 建安企业核定征收税率多少
  • 计算产品当月生产成本
  • 税费和应交税费一样吗
  • 企业捐赠不动产 会计分录
  • 研发投入大
  • 三栏式和多栏式的账目有哪些
  • 怎么确认外购存货成本?
  • 金税盘应用程序中发生了未经处理的异常
  • 挂靠被查出来后挂靠费怎么处理?
  • 单位经济合同由谁来签
  • 城市垃圾处理费怎么申报
  • 高速公路通行费发票怎么开
  • 应付利润是会计科目吗
  • 股息红利是否交个人所得税
  • 建筑公司收取的劳务费和挂靠管理费有区别吗?
  • 分公司注销总公司会计分录
  • 企业购房房产税土地税补缴
  • 企业所得税免税政策
  • 凭证金额多记了,已经入账了怎么办
  • 软件公司客户经理一般月薪多少
  • linux安装常用命令
  • 确认预计负债的必要条件
  • 事业单位收到奖励款怎么入账
  • mysql输入中文显示乱码
  • php23种设计模式
  • PHP:session_encode()的用法_Session函数
  • 购买用友财务软件
  • php实现上传文件
  • vue3怎么用
  • 固定资产清理的审计目标不包括
  • 接受捐赠会计准则
  • 房地产预缴所得税怎么算
  • laravel调试
  • 非流动资产增加说明什么原因
  • 财务会计制度或纳税人财务会计核算办法
  • 应交税费的进项税和销项税
  • joinby命令
  • 企业一次性伤残补助金赔偿标准
  • 小企业的流动资产
  • 保教费收入要交企业所得税吗
  • 货已入库进项发票未到怎么办
  • elementui组件有哪些
  • 结转成本计入
  • 网上申请发票要钱吗
  • 库存商品总分类账范本
  • 代收代付的会计分录
  • 资产负债表里的固定资产是原值还是净值
  • 应交税金及附加怎么计算
  • 其他权益工具包括交易性金融资产吗
  • 银行退回服务费怎么写分录
  • 购物卡送给客户的账务处理
  • 销售会员卡怎么开票
  • 一年不到
  • 买水果送礼
  • sqlserver存储过程if语句
  • 注册表的使用
  • xp系统网络服务在哪开启
  • win10系统打不开控制面板
  • ubuntu有线正在连接
  • pptp和l2tp哪个比较安全
  • 5.2光源
  • 关于混合基金投资风险以下表述正确的是
  • 计算机网络设计
  • android事件分发流程图
  • 安卓软件测试
  • unity2020怎么导入资源
  • js实现@功能
  • 如何在电子税务局添加办税人员
  • 缴纳车辆购置税的会计处理
  • 衡水地税局税务电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设