当前位置: 首页 > 知识库问答 >
问题:

MongoDB-管理用户未授权

朱宜
2023-03-14

http://docs.mongodb.org/manual/tutorial/add-user-administrator/

2)然后我编辑了mongod.conf,取消了这一行的注释

auth=true

/usr/bin/mongo localhost:27017/admin-u sa-p pwd

4)我可以连接,但它在连接时说了这句话。

MongoDB shell version: 2.6.1
connecting to: localhost:27017/admin
Welcome to the MongoDB shell!
The current date/time is: Thu May 29 2014 17:47:16 GMT-0400 (EDT)
Error while trying to show server startup warnings: not authorized on admin to execute command { getLog: "startupWarnings" }

5)现在,我创建的这个sa用户似乎根本没有权限。

root@test02:~# mc
MongoDB shell version: 2.6.1
connecting to: localhost:27017/admin
Welcome to the MongoDB shell!
The current date/time is: Thu May 29 2014 17:57:03 GMT-0400 (EDT)
Error while trying to show server startup warnings: not authorized on admin to execute command { getLog: "startupWarnings" }
[admin] 2014-05-29 17:57:03.011 >>> use admin
switched to db admin
[admin] 2014-05-29 17:57:07.889 >>> show collections
2014-05-29T17:57:10.377-0400 error: {
        "$err" : "not authorized for query on admin.system.namespaces",
        "code" : 13
} at src/mongo/shell/query.js:131
[admin] 2014-05-29 17:57:10.378 >>> use test
switched to db test
[test] 2014-05-29 17:57:13.466 >>> show collections
2014-05-29T17:57:15.930-0400 error: {
        "$err" : "not authorized for query on test.system.namespaces",
        "code" : 13
} at src/mongo/shell/query.js:131
[test] 2014-05-29 17:57:15.931 >>>

问题出在哪里?我将整个过程重复了3次,并且
我认为我是按照MongoDB文档中指定的方式完成的。但它不起作用。
我希望这个SA用户被授权做任何事情,以便
他可以创建其他用户并赋予他们更具体的权限。

共有1个答案

刘狐若
2023-03-14

我也对同样的问题摸不着头脑,当我在添加第一个管理用户时将角色设置为root后,一切都正常了。

use admin
db.createUser(
  {
    user: 'admin',
    pwd: 'password',
    roles: [ { role: 'root', db: 'admin' } ]
  }
);
exit;

如果您已经创建了admin用户,则可以如下所示更改角色:

use admin;
db.grantRolesToUser('admin', [{ role: 'root', db: 'admin' }])

有关完整的身份验证设置参考,请参见我在互联网上经过几个小时的研究后汇编的步骤。

 类似资料:
  • 本文向大家介绍MongoDB 用户管理,包括了MongoDB 用户管理的使用技巧和注意事项,需要的朋友参考一下 小小最近接触了MongoDB,所以这里开始学习MongoDB,之用户管理模块的相关内容。 进入MongoDB的Shell 这里输入如下的命令,进入MongoDB的shell 切换数据库 使用如上的命令,切换数据库到admin数据库。 创建超级管理员用户 创建超级管理员权限的用户 其中各个

  • 本文向大家介绍浅析MongoDB用户管理,包括了浅析MongoDB用户管理的使用技巧和注意事项,需要的朋友参考一下 1. 创建一个超级用户 超级用户的role有两种,userAdmin或者userAdminAnyDatabase(比前一种多加了对所有数据库的访问)。 db是指定数据库的名字,admin是管理数据库。 2. 用新创建的用户登录 3. 查看当前用户的权限 4. 创建一般用户,也是用cr

  • 我真的很感激你能提供的任何帮助!

  • 一、授权用户对授权版本信息的管理 1、登录官网,打开个人中心-订单管理 授权流程: 1.当购买授权后,绑定一级域名 2.下载授权证书(加密文件) 3.填写授权码 2、打开后台-设置-授权管理-授权信息 当商家已购买授权时,直接输入授权码;当未购买授权时,点击授权进入官网自行购买 二、在线更新 3.2.0版本后支持在线更新,官方发布版本更新消息后,用户可自行下载更新最新版本。

  • 我想控制运行在Eureka服务器中的微服务。我为此使用了spring-boot-admin,但我在访问关于跟踪、日志等的信息时遇到了错误... 我得到的错误是 同样的事情也发生在所有endpoint上,比如映射,env和所有接受健康

  • 我是Spring Security的新手,我正在开发一个需要使用Spring Security 3.2进行身份验证和授权的web应用,身份验证部分工作正常,但授权不正常。下面是我的Spring Security配置xml片段。 使用此配置,除了授权之外,其他一切都可以正常工作。我有两个用户,即tim@abc.com(角色=管理员)和bob@abc.com(role=USER),但是当我尝试使用bo