您能帮我如何使用带有身份验证的 mongo 访问数据库吗?
use admin
db.addUser( { user: "root", pwd: "root", roles: ["readWrite"] } )
db.auth('root', 'root')
我正在使用 Ubuntu。我做错了什么吗?如何通过身份验证访问我的数据库?
您能帮我如何使用带有身份验证的 mongo 访问数据库吗?
use admin
db.addUser( { user: "root", pwd: "root", roles: ["readWrite"] } )
db.auth('root', 'root')
我正在使用 Ubuntu。我做错了什么吗?如何通过身份验证访问我的数据库?
您可以通过首先更改到该数据库use dbname
然后为该特定数据库添加用户来将用户添加到特定数据库db.addUser('username','password')
。完成此操作后,您可以使用 连接到该数据库mongo dbname -u username -p
,或者通过连接到 mongo 然后更改到该数据库然后执行db.auth('username','password')
.
admin 数据库是一种特殊情况,因为授予此数据库中的用户的权限适用于任何数据库。MongoDB 文档中的一个示例是:
userAdmin 是特定于数据库的权限,仅授予用户在单个数据库上管理用户的能力。但是,对于 admin 数据库,userAdmin 允许用户获得 userAdminAnyDatabase,因此对于 admin 数据库,只有这些角色实际上是相同的。
我假设您实际上是在问两个问题:(1)如何设置 MongoDB 身份验证和(2)如何使用它。
虽然是几年后,我还是忍不住链接官方教程。这里是管理摘要:
admin
无需身份验证即可启动 MongoDB,连接到 Mongo shell 并在数据库中创建用户管理员。mongod.conf
您使用的是已弃用的 MongoDB 版本,则应在继续之前认真考虑更新。更多资源: