mongodb - 启用用户访问控制后 MongoDB 身份验证失败
问题描述
我在 windows Server 2016 标准中使用最新的 MongoDB,试图设置身份验证。这是我要遵循的步骤。
# mongod --port 27017 --dbpath /data/db1
# mongo --port 27017
# use admin
db.createUser(
{
user: "myUserAdmin",
pwd: "abc123",
roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
}
)
# mongod --auth --port 27017 --dbpath /data/db1
# use admin
# db.auth("myUserAdmin", "abc123" )
after all I got
C:\Program Files\MongoDB\Server\4.0\bin>mongo
MongoDB shell version v4.0.3
connecting to: mongodb://127.0.0.1:27017
Implicit session: session { "id" : UUID("63f22acf-9f5b-4949-b804-82d141ba2761") }
MongoDB server version: 4.0.3
> use admin
switched to db admin
> db.auth("myUserAdmin", "abc123" )
Error: Authentication failed.
0
>
请帮忙..我很新
解决方案
创建用户后,您需要重新启动 mongod 和 mongo。使用以下命令重新启动 mongod
mongod --auth --port 27017 --dbpath /data/db1
现在打开命令提示符并使用以下命令连接 mongo
mongo --port 27017 -u user_name -p password --authenticationDatabase database_name
现在使用以下命令
use admin
db.auth("myUserAdmin", "abc123" )
也许它会帮助你。
推荐阅读
- vue.js - 在 Vue.js 中捕获和重定向 JWT 令牌过期,而不阻止 Vue 3 中的其他 401 错误
- javascript - 将文件对象转换为可用的 csv
- html - 尝试将 tailwindcss 图标放入输入
- ios - 如何构建一个在应用程序关闭时继续计数的秒表?
- influxdb - InfluxDB2.0 如何在更大的时间范围内计算每日价值?
- javascript - 为什么要在 javascript 中打印“NaN”值?
- java - 如何在 Project Reactor 中将 DataBuffer 的通量转换为字节数组的 Mono?
- python-3.x - 针对不同的条件引发不同的异常
- javascript - 如何编写一个将对象推送到对象数组的函数?
- mysql - 何时添加列与添加相关表?