一种方法是通过禁用安全管理器来启动Elasticsearch流程,如下所示:
bin/elasticsearch -Dsecurity.manager.enabled=false
从ES
2.x开始,默认情况下启用Java安全管理器,因此之前已将其禁用。但是请注意,此选项将在2.3中删除,因为它会使您的ES进程易受攻击。
正确的方法是自定义安全策略,并使用策略文件指定要访问的文件:
grant { permission java.io.FilePermission "/tmp/patient_similarity/pres.txt", "read,write";};您可以在四个不同的位置添加此策略:
- 整个系统
$JAVA_HOME/lib/security/java.policy
- 或仅适用于
/home/elasticsearch/.java.policy
- 或从命令行上指定的文件中:
-Djava.security.policy=someURL
- 或插件中包含的
plugin-security.policy
文件中。
由于您正在开发插件,因此您当然应该使用选项4。



