我想禁用它们以阻止任何人访问存储在内存中的密码。到目前为止我发现的是
-XX:+ DisableAttachMechanism
这会阻止连接,即jconsole,但我可以强制jmap获取转储,如:
jmap -dump:file = / tmp / x.bin -F $ PID
我似乎无法找到完全禁用它们的任何选项:
http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html
有办法吗?
由于
答案 0 :(得分:1)
我认为没有办法做到这一点。相反,我建议使用sun.misc.Unsafe对象在堆外存储密码。请参阅此处的讨论:
https://stackoverflow.com/questions/5574241/using-sun-misc-unsafe-in-real-world/5607119
答案 1 :(得分:0)
-XX:+DisableAttachMechanism
以禁用jvm附加机制。ptrace
syscall。因此,您可以禁用ptrace
系统调用。对于ubuntu,请在文件kernel.yama.ptrace_scope = 3
中设置/etc/sysctl.d/10-ptrace.conf
并重新启动。