我启动, input [ type' "number", placeholder "Age", onIntInput Age ] []
后,正在运行
mongo
返回db.auth("admin", "myGreatPassword")
。但这样做:
0
返回use admin
db.auth("admin", "myGreatPassword")
。
我发现这很奇怪,因为1
用户具有root权限,可以访问所有数据库并执行任何操作。
上述行为可能是什么原因?为什么我需要首先选择一个特定的数据库,在本例中为admin
,以登录?
答案 0 :(得分:3)
使用mongodb对特定数据库进行身份验证:该数据库包含定义用户及其角色的集合。然后可以授权该用户在多个数据库上执行操作,但是登录的操作针对特定数据库发生。
使用命令行工具时,这是--authenticationDatabase选项,在mongo shell中,身份验证命令针对当前数据库运行。