MongoDB 安装后登录身份验证消失

MongoDB 安装后登录身份验证消失

几个月前,我在 MongoDB 安装上启用了密码保护。今天我运行 Mongo 客户端时忘记使用我的登录详细信息。我没有像它应该的那样拒绝我从 shell 尝试执行的几乎所有操作,而是完全访问了所有数据库和集合。幸运的是,这个实例只运行了几个测试应用程序,所以我迅速关闭了 MongoD 实例,直到我弄清楚了这一点。

有没有人见过这种行为并且知道发生了什么?MongoD 实例在 Azure 托管的 Linux VM 上运行。我唯一能想到的是,也许 Azure 恢复了 VM 的旧副本,但我没有收到任何相关电子邮件,服务器上的其他一切似乎都正常,包括我在 MongoD 上启用密码保护后添加的新守护进程。

答案1

如果你从本地主机连接,并且尚未将用户添加到管理数据库,那么你很可能被验证为管理员,因为本地主机异常。一旦您添加了管理员用户,或者您从另一台主机连接,您将必须出示有效的凭据才能获得访问权限。

您将在链接的文档中找到有关如何禁用此功能的说明(只要您正在运行最新版本)。

我能想到的导致这种情况发生的唯一其他方法(除了某人/某物获得访问权限并修改内容)是重新启动您的实例而未启用身份验证(默认情况下处于关闭状态)。您应该验证正在mongod运行的选项以及您的管理员用户和数据库用户是否仍然存在。

相关内容