node.js - mongodb中的数据库权限
本文介绍了node.js - mongodb中的数据库权限的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
我在数据库的admin中创建了一个管理员,角色是root,其他普通数据库都没创建,可用mongoose连接普通数据库example怎么都连接不上,说not authorized on example to execute command ,加上admin的用户名和密码也无法登陆,报错为Authentication failed。求大佬告知怎么改。
解决方案
1、admin的用户名和密码也无法登陆,报错为Authentication failed。
使用管理员(你配置的角色为root)登录时候,请配置 authenticationDatabase "admin";例如在mongo命令行下:
mongo -u "root" -p "root" --authenticationDatabase "admin"
2、可用mongoose连接普通数据库example怎么都连接不上,说not authorized on example to execute command
正确的步骤是,应该用管理员创建应用红所需的数据库用户,分配权限,然后再登录。例如:
创建用户/分配权限,指定用户名、权限、对应的数据库,例如命令行下:
db.createUser(
{
user: "app",
pwd: "app",
roles: [ { role: "readWrite", db: "example" } ]
}
)
登录时,连接example数据库,例如命令行下:
mongo -u "app" -p "app" --authenticationDatabase "example"
供参考。
Love MongoDB ! Have Fun!
这篇关于node.js - mongodb中的数据库权限的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文