如何启用内联(沙盒)groovy脚本?

Seb*_*zky 6 elasticsearch

我正在尝试使用此示例脚本查询:

POST /_search
{
    "script_fields": {
        "my_field": {
            "script": "1 + my_evar",
            "params": {
              "my_evar": 2
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这导致以下错误消息:

"原因":"[inline],操作[search]和lang [groovy]类型的脚本被禁用"

我试图用这个elasticsearch.yml配置启用脚本:

script.inline: true
script.indexed: true
script.search: true
script.update: true
script.mapping: true
script.groovy.sandbox.enabled: true
Run Code Online (Sandbox Code Playgroud)

我错过了一个设置吗?

Ant*_*onK 7

elasticsearch.yml中设置以下内容对我有用.

script.engine.groovy.inline.search: on
Run Code Online (Sandbox Code Playgroud)

  • `script.engine.groovy.inline.update: on` 也很有用。完整文档在这里:https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-scripting-security.html (2认同)