错误提示:
2018-07-06T10:25:37.656+0800 E QUERY [thread1] Error: listCollections failed: {
"ok" : 0,
"errmsg" : "not authorized on admin to execute command { listCollections: 1.0, filter: {}, $db: \"admin\" }",
"code" : 13,
"codeName" : "Unauthorized"
} :
这是权限的问题:
角色授权分两种,一种是直接在当前库中创建用户并授予相关权限。如admin库中创建admin用户。另一种情况是
将在admin中创建的用户授予操作其他库的权限,相关授权命令如下:
授予角色:
db.grantRolesToUser("userName", [ { role:"<role>", db: "<database>"} ])
取消角色:
db.grantRolesToUser("userName", [ { role:"<role>", db:"<database>"} ])
下面我们在admin库中执行以下命令:
db.grantRolesToUser("admin", [ { role:"dbOwner", db:"test"} ]) ;
##admin 指的是用户名 test 指的要授权的数据库
网友评论