在 Domino 9.0.1 中,使用 java.policy 文件授予 Java Logger 访问权限不起作用

在 Domino 9.0.1 中,使用 java.policy 文件授予 Java Logger 访问权限不起作用

在我将我们的 32 位专用 Windows 2003 服务器从 9.0 升级到 9.0.1 之后,java.policy文件停止工作:

permission java.util.logging.LoggingPermission "control";

这意味着我无法使用 Java Logger。我得到以下信息:

HTTP JVM: java.security.AccessControlException: Access denied (java.util.logging.LoggingPermission control)
HTTP JVM:   at java.security.AccessController.throwACE(AccessController.java:100)
HTTP JVM:   at java.security.AccessController.checkPermission(AccessController.java:166)
HTTP JVM:   at java.lang.SecurityManager.checkPermission(SecurityManager.java:544)
HTTP JVM:   at java.util.logging.LogManager.checkPermission(LogManager.java:317)
HTTP JVM:   at java.util.logging.LogManager.checkAccess(LogManager.java:311)
HTTP JVM:   at java.util.logging.Logger.addHandler(Logger.java:548)

我甚至尝试从 64 位 9.0 虚拟服务器复制 java.policy 文件,然后重新启动 HTTP。然后,我使用在 9.0 服务器上运行的应用程序副本进行测试,结果在 9.0.1 服务器上出现了此错误。

Java 代码位于代码/Java元素,它是从 XPage 调用的。

如何在 Domino 9.0.1 中向 Java 授予权限?

更新:

如果我添加这个:

permission java.security.AllPermission;

那么它就起作用了。所以读取 java.policy 文件但授予日志访问权限不再起作用,至少与 9.0.1 中的工作方式不同。授予访问权限AllPermission绝对不是我想要的解决方案。

Lars Migula 似乎有同样的问题在 8.5.3 中安装修复包后。

答案1

顺便说一下,请将您的更改放在 java.pol 文件中,而不是 java.policy 文件中。只需在与 java.policy 文件相同的目录中创建一个即可。java.pol 不会被升级/修复包替换...

答案2

IBM 支持人员告诉我:

此问题与以下已知问题相符:SPR# RGAU9CSBWA 与 APAR LO77612 相关。该问题最早在 8.5.3 FP 5 中报告,并在 9.0.1 中重现

我添加了一个链接,但目前无法使用,这可能是因为 IBM 网站暂时出现问题。我可以看到以下内容:

LO77612:在 DOMINO 8.5.3 上安装 FIXPACK 5 后,修改后的 JAVA.POLICY 被忽略

临时解决方案

java.security.AllPermission; to the java.policy file.

他们还将为我创建一份客户报告,希望这个问题能很快得到解决。

相关内容