开发者社区> 问答> 正文

mongdb3.2无法授权?报错

查过各种网站,都尝试来一下,还是没有解决,寻求帮助.在centos下.用use admin.后再查看show dbs;就开始报错了.[thread1] Error: listDatabases failed:{
    "ok" : 0,
    "errmsg" : "not authorized on admin to execute command { listDatabases: 1.0 }",
    "code" : 13
} :

提示很明显就是没有授权.createUsers等等都没用.不知道这步该怎么解决了.

寻求一下帮助

展开
收起
爱吃鱼的程序员 2020-06-09 14:30:45 466 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    1、可以关闭mongdb服务的验证。

    2、如果有用户有权限,可以先执行db.auth("username","password")验证。

    3、如果一个用户都没有,MongoDB应许创建一个用户,让创建的用户有相应的权限就可以。

    4、如果有用户但是没有创建用户的权限,可以检查有没有grantRoleToUser的权限,如果有赋予相应的角色就可以了。

    5、如果没有创建用户也没有,赋予角色的权限,就先关闭mongodb服务的验证,创建用户。

    拥有listDatabase权限的角色还是有很多的,下面以userAdminAnyDatabase为例创建用户和为用户授权。

    db.createUser({user:"admin",pwd:"123456",roles:[{role:"userAdminAnyDatabase",db:"admin"}]})
    db.grantRolesToUser("admin",[{role:"userAdminAnyDatabase",db:"admin"}])

    可以看一下 http://my.oschina.net/u/2474629/blog/661453

    当然,最后参考官网文档。

    2020-06-09 14:31:02
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
阿里云数据库案例集下载 立即下载
《阿里云数据库 MongoDB 专属集群版》 立即下载
MaxCompute客户端 - odpscmd操作使用 立即下载