MongoDB开启auth验证后,除了创建用户和授权角色外,在执行一些特殊操作的时候,还是会“not authorized”错误,如在执行eval时会报:
Command failed with error 13: 'not authorized on *** to execute command { $eval: "function()...
解决方案:
在官网 http://docs.mongodb.org/manual/reference/command/eval/#dbcmd.eval 有一段描述:
If authorization is enabled, you must have access to all actions on all resources in order to run eval. Providing such access is not recommended, but if your organization requires a user to run eval, create a role that grants anyAction on anyResource. Do not assign this role to any other user.
解决步骤:
1)不带--auth参数启动数据库,所以不需要帐号即可连上MongoDB。
2)新建一个角色,比如叫 sysadmin,需要先切换到admin库进行如下操作:
db.createRole({ role: "sysAdmin", privileges: [{ resource: { anyResource: true }, actions: ['anyAction'] }], roles: [] }
3)新建一个用户,比如叫 sysUser,授权sysAdmin角色
db.createUser({"user":"sysUser","pwd":"123456",roles:[]});
db.grantRolesToUser("sysUser",[{role:"sysAdmin",db:"admin"}]);
特别注意,grant时db一定是指明"admin"
4)开启--auth,试一下吧
相关推荐
MongoDB Community Server(mongodb-src-r5.0.4.tar.gz)源代码 MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个介于关系数据库和非...
赠送jar包:mongodb-driver-core-4.2.3.jar; 赠送原API文档:mongodb-driver-core-4.2.3-javadoc.jar; 赠送源代码:mongodb-driver-core-4.2.3-sources.jar; 赠送Maven依赖信息文件:mongodb-driver-core-4.2.3....
mongodb-windows安装包: mongodb-compass-1.31.2-win32-x64.msi 打开直接安装
MongoDB Community Server(mongodb-org-shell-5.0.4-1.el7.x86_64.rpm)适用于RedHat / CentOS 7.0 MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 ...
MongoDB Community Server(mongodb-org-server-5.0.4-1.el7.x86_64.rpm)适用于RedHat / CentOS 7.0 MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。...
MongoDB Community Server(mongodb-org-server-5.0.8-1.el7.x86_64.rpm)适用于RedHat / CentOS 7.0 MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。...
赠送jar包:mongodb-driver-sync-4.2.3.jar; 赠送原API文档:mongodb-driver-sync-4.2.3-javadoc.jar; 赠送源代码:mongodb-driver-sync-4.2.3-sources.jar; 赠送Maven依赖信息文件:mongodb-driver-sync-4.2.3....
mongodb-driver-3.4.0-rc1.jar mongodb-driver-3.4.0-rc1.jar mongodb-driver-3.4.0-rc1.jar mongodb-driver-3.4.0-rc1.jar
mongodb-linux-i686-latest.zip.001 linux_x86
赠送jar包:mongodb-driver-sync-4.2.3.jar; 赠送原API文档:mongodb-driver-sync-4.2.3-javadoc.jar; 赠送源代码:mongodb-driver-sync-4.2.3-sources.jar; 赠送Maven依赖信息文件:mongodb-driver-sync-4.2.3....
percona-backup-mongodb-1.6.1-1.el7.x86_64.rpm、 percona-backup-mongodb-1.6.1-1.el8.x86_64.rpm、 percona-backup-mongodb-1.6.1-x86_64.tar.gz、 percona-backup-mongodb_1.6.1-1.bionic_amd64.deb、 percona-...
Log-Dispatch-2.69.tar.gz
mongodb-java-driver-4.4.0.jar
MongoDB Community Server(mongodb-org-mongos-5.0.4-1.el7.x86_64.rpm)适用于RedHat / CentOS 7.0 MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。...
MongoDB Community Server(mongodb-org-server_5.0.4_amd64.deb)适用于适用于Debian10 MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB是...
mongodb-org-4.4.19-1.el7.x86_64.rpm mongodb-org-mongos-4.4.19-1.el7.x86_64.rpm mongodb-org-server-4.4.19-1.el7.x86_64.rpm mongodb-org-shell-4.4.19-1.el7.x86_64.rpm mongodb-org-tools-4.4.19-1.el7.x86_...
mongodb-driver-core-3.5.0.jar,链接驱动
MongoDB 数据库-四书五经-中庸,导入直接使用 MongoDB 数据库-四书五经-中庸,导入直接使用 MongoDB 数据库-四书五经-中庸,导入直接使用 MongoDB 数据库-四书五经-中庸,导入直接使用 MongoDB 数据库-四书五经-中庸...
由于4.4版本没有内置数据库备份和数据库恢复命令,需要自行下载,由于外网经常被墙,下载速度慢
mongodb-org-server-4.0.8-1.el7.x86_64.rpm linux版本