通过自定义跨域资源共享CORS(Cross-origin resource sharing)访问配置,您可以选择是否允许其他域资源下的浏览器向阿里云Elasticsearch(简称ES)发送请求,并自定义相关的配置参数。

注意
  • 以下表格中的配置信息是阿里云ES为支持HTTP协议开放的自定义配置。
  • 以下表格中的字段配置仅支持静态配置。如果您想使配置生效,请将配置信息写入elasticsearch.yml文件中。
  • 以下表格中的配置依赖于集群网络设定(Network settings)。
配置项 描述
http.cors.enabled 跨域资源共享配置项,即配置阿里云ES是否允许其他域资源下的浏览器向其发送请求。可设置为truefalse
  • 设置为true,表示启用跨域资源访问。即可使阿里云ES处理OPTIONS CORS请求。如果发送请求中的域信息已在http.cors.allow-origin中声明,那么ES会在头信息中附加Access-Control-Allow-Origin以响应跨域请求。
  • 设置为false(默认),表示禁止跨域资源访问。即可使阿里云ES忽略请求头中的域信息,阿里云ES将不会以Access-Control-Allow-Origin信息头应答,以达到禁用CORS目的。如果客户端不支持发送附加域信息头的pre-flight请求,或者不校验从服务端返回的报文的头信息中的Access-Control-Allow-Origin信息,那么跨域安全访问将受到影响。如果ES关闭CORS支持,则客户端只能尝试通过发送OPTIONS请求,以了解此响应信息是否存在。
http.cors.allow-origin

域资源配置项,可设置接受来自哪些域名的请求。默认不允许接受跨域请求且无配置。

如果在该配置值前后添加/ ,则此配置信息会被识别为正则表达式。允许您使用正则方式兼容支持HTTPHTTPS的域请求信息。例如/https?:\/\/localhost(:[0-9]+)?/,表示可响应符合此正则的请求信息。

注意 *被认定为合法配置,可被识别为使集群支持来自任意域名的跨域请求,这将给阿里云ES实例带来安全风险,不建议使用。
http.cors.max-age 浏览器可发送OPTIONS请求以获取CORS配置信息,此配置项可设置获取的信息在浏览器中的缓存时间,默认为1728000秒(20 天)。
http.cors.allow-methods 请求方法配置项,默认为OPTIONS, HEAD, GET, POST, PUT, DELETE
http.cors.allow-headers 请求头信息配置项,默认为X-Requested-With, Content-Type, Content-Length
http.cors.allow-credentials 凭证信息配置项目,即是否允许响应头中返回Access-Control-Allow-Credentials信息。默认为false,表示不允许返回此信息。设置为true表示允许返回此信息。