2023-06-01T12:04:26.141+0800 E QUERY [js] TypeError: db.getSiblingDB(...).runCommand(...).security is undefined :这个报错怎么解决
时间: 2024-02-27 08:51:28 浏览: 124
用C/C++来实现 Node.js 的模块(二)
这个错误可能是因为 MongoDB 版本过旧或者数据库没有启用安全功能导致的。
如果您的 MongoDB 版本过旧,则可以尝试升级到新版本。如果您的 MongoDB 版本已经比较新,那么您可以尝试启用 MongoDB 的安全功能,例如启用访问控制、身份验证、加密传输等功能。
启用 MongoDB 的安全功能可以通过以下步骤完成:
1. 启用身份验证:可以通过修改 MongoDB 配置文件 `mongod.conf`,设置 `security.authorization` 为 `enabled`,并重启 MongoDB 服务。
2. 设置管理员用户:在 MongoDB 中,管理员用户默认的用户名为 `admin`,可以通过以下命令创建管理员用户:
```
> use admin
> db.createUser({user: "admin", pwd: "password", roles: [{role: "root", db: "admin"}]})
```
其中,`password` 为管理员用户的密码。
3. 设置其他用户和角色:可以根据需要创建其他用户和角色,并为其分配相应的权限。
4. 启用 TLS/SSL 加密传输:可以为 MongoDB 配置 TLS/SSL 证书,以加密 MongoDB 实例和客户端之间的通信。
完成以上步骤后,您应该能够成功查询 MongoDB 的安全设置信息。
阅读全文