首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在admin中添加用户角色userAdminAnyDatabase的正确方法是什么?

在admin中添加用户角色userAdminAnyDatabase的正确方法是什么?
EN

Database Administration用户
提问于 2016-02-23 08:00:50
回答 1查看 2.5K关注 0票数 1

我正在运行启用auth的MongoDB2.4,希望升级到2.6

升级2.6中的说明如下:

在开始使用身份验证和授权的部署的升级过程之前:

  • 确保管理数据库中至少存在一个具有角色userAdminAnyDatabase的用户。
  • 然后升级二进制文件。
  • 然后,如果需要,运行athorization格式。

因此,我必须在2.4秒的二进制文件复制之前添加角色userAdminAnyDatabase的用户?

在当前2.4shell中,添加了角色userAdminAnyDatabase的用户,然后在处理2.6二进制文件后使用userAdminAnyDatabase角色进行模式升级

代码语言:javascript
复制
db.addUser( { user: "a", pwd: "pass", roles: [ "userAdminAnyDatabase" ] } )

这条路对吗?我也需要增加读写访问权限吗?

如果我使用角色userAdminAnyDatabase进入管理数据库,我想我可能不会收到下面的错误

代码语言:javascript
复制
> show collections
2016-02-22T18:51:10.765-0500 error: {
  "$err" : "not authorized for query on oasis.system.namespaces",
  "code" : 13
} at src/mongo/shell/query.js:131
EN

回答 1

Database Administration用户

发布于 2016-03-18 07:21:39

重要的是,userAdminAnyDatabase用户可以授予自己和任何其他用户对整个MongoDB实例的完全访问权。此用户登录的凭据应小心控制。具有userAdmin和userAdminAnyDatabase权限的用户与UNIX超级用户不一样,因为该角色除了用户管理之外不提供其他访问。这些用户如果不首先授予自己额外的权限,就不能执行管理操作或读取或写入数据。

4将MongoDB v2.4升级到v2.6

的步骤

  1. 确保管理数据库中至少存在一个具有角色userAdminAnyDatabase的用户。
  2. 升级客户端库,与v2.6兼容
  3. 将所有MongoDB进程升级到2.6
  4. 以管理数据库用户的身份,连接并验证单个部署的mongod实例或分片集群的mongos,其中角色userAdminAnyDatabase.Use是管理数据库中的authSchemaUpgrade命令,以便使用mongos更新用户数据。

还请参见:

将MongoDB升级到2.6 https://docs.mongodb.org/v2.6/release-notes/2.6-upgrade/

创建用户管理员https://docs.mongodb.org/v2.4/tutorial/add-user-administrator/

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/130142

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档