我有一个在 MongoDB Atlas 实例上执行 CRUD 操作的 Java Web 应用程序。我想从我的 Java 网络应用程序中为我的 Atlas 实例禁用服务器端 JavaScript。
我发现的是 this和 this这基本上是说我需要更改 mongod.conf
文件或在 mongod
命令上使用命令行参数 --noscripting
。但我想在 Web 应用程序启动时使用我的 Java Web 应用程序来完成此操作。
MongoDB java 驱动程序是否提供实现此目的的机制?
是否有其他方法可以完成此操作?
注意:我不想从我的 Web 应用程序传递 mongod
命令。
最佳答案
Does the MongoDB java driver provide a mechanism to achieve this?
启用或禁用服务器端 JavaScript 的选项只能在启动时在 MongoDB 服务器配置中设置;无法通过驱动程序或运行时 API 调用进行更改。
由于 MongoDB Atlas 是一项托管服务,因此最终用户无法直接访问 MongoDB 服务器配置,并且仅限于通过管理 UI 公开的选项。
MongoDB Atlas 当前不允许配置 security.javascriptEnabled
值:服务器端 JavaScript 执行是 disabled for free/shared clusters (M0、M2、M5)并为 M10+ 集群启用。
Are there any alternate ways to get this done?
如果您有一个 M10+ MongoDB Atlas 集群(目前默认启用了 JavaScript 执行),您可以 open a support case并询问是否可以为您的集群禁用服务器端 JavaScript。客户请求/反馈是一种信号,可以鼓励更改 MongoDB Atlas 中的默认值或使其可通过 UI 配置。
关于javascript - 如何从 Java 应用程序禁用 MongoDB 上的服务器端 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48430110/