Java 8 (1.8.0_162, 32-разрядный) доступ запрещен ("java.lang.RuntimePermission" "modifyThreadGroup") - PullRequest
0 голосов
/ 13 декабря 2018

Я получаю неожиданную защиту доступ запрещен , даже с «предоставить все разрешения» на месте.

Я работаю " JRE версия 1.8.0_162 32-бит"на операционной системе Windows Server 2016 Standard.

У меня есть этот файл политики:

grant {
  permission java.security.AllPermission;
};

В целях отладки я запускаю JVM с этой опцией:" -Djava.security.debug = доступ, ошибка ".

Из журнала я получаю:

...
access: access allowed ("java.util.PropertyPermission" "jsse.SSLEngine.acceptLargeFragments" "read")
access: access denied ("java.lang.RuntimePermission" "modifyThreadGroup")
java.lang.Exception: Stack trace
    at java.lang.Thread.dumpStack(Thread.java:1336)
    at java.security.AccessControlContext.checkPermission(AccessControlContext.java:462)
    at java.security.AccessController.checkPermission(AccessController.java:884)
    at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
    at java.lang.SecurityManager.checkAccess(SecurityManager.java:729)
    at java.lang.ThreadGroup.checkAccess(ThreadGroup.java:315)
    at java.lang.Thread.init(Thread.java:394)
    at java.lang.Thread.init(Thread.java:349)
    at java.lang.Thread.<init>(Thread.java:511)
    at sun.security.ssl.SSLSocketImpl$NotifyHandshakeThread.<init>(SSLSocketImpl.java:2692)
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1104)
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1385)
    at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:757)
    at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:123)
    at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
    at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
    at java.io.DataOutputStream.flush(DataOutputStream.java:123)
    at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:229)
    at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:202)
    at sun.rmi.server.UnicastRef.newCall(UnicastRef.java:338)
    at sun.rmi.transport.DGCImpl_Stub.clean(DGCImpl_Stub.java:75)
    at sun.rmi.transport.DGCClient$EndpointEntry.makeCleanCalls(DGCClient.java:700)
    at sun.rmi.transport.DGCClient$EndpointEntry.access$1700(DGCClient.java:192)
    at sun.rmi.transport.DGCClient$EndpointEntry$RenewCleanThread$1.run(DGCClient.java:610)
    at sun.rmi.transport.DGCClient$EndpointEntry$RenewCleanThread$1.run(DGCClient.java:603)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.DGCClient$EndpointEntry$RenewCleanThread.run(DGCClient.java:603)
    at java.lang.Thread.run(Thread.java:748)
access: access allowed ("java.security.SecurityPermission" "getPolicy")
access: domain that failed ProtectionDomain  null
 null
 <no principals>
 java.security.Permissions@126be6b (
 ("java.net.SocketPermission" "*" "connect,resolve")
)
...

Тем не менее, из того же журнала некоторые строки до" доступа запрещены", можно увидеть несколько строк, например следующую:

access: access allowed ("java.lang.RuntimePermission" "modifyThreadGroup")

Я уже пробовал другие обновления Java 8, такие как 192, 101 и 31, и результаты такие же.Однако с обновлением 25 Java 8 проблема никогда не возникает.(Кроме того, в Java 7 никаких проблем не наблюдается.)

Может кто-нибудь мне помочь?

...