Executando código de javaws não assinado

19

Para um console remoto KVM, preciso ser capaz de executar um jnlparquivo. Quando o executo, recebo:

net.sourceforge.jnlp.LaunchException: Fatal: Initialization Error: Could not initialize application. 
at net.sourceforge.jnlp.Launcher.createApplication(Launcher.java:797)
at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:555)
at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:908)
Caused by: net.sourceforge.jnlp.LaunchException: Fatal: Application Error: Cannot grant permissions to unsigned jars. Application requested security permissions, but jars are not signed.
at net.sourceforge.jnlp.runtime.JNLPClassLoader.setSecurity(JNLPClassLoader.java:319)
at net.sourceforge.jnlp.runtime.JNLPClassLoader.<init>(JNLPClassLoader.java:239)
at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:381)
at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:337)
at net.sourceforge.jnlp.Launcher.createApplication(Launcher.java:789)
... 2 more

Entendo por que você não deseja que seu navegador execute código não assinado arbitrário.

Mas nessa situação, não tenho chance de nem alterar nem assinar o código, pois ele vem do dispositivo KVM.

  • Posso dizer ao Java que este applet está OK para executar sem assinatura?
    • Caso contrário: posso dizer ao Java que todos os miniaplicativos desse domínio estão OK para executar sem assinatura?
      • Caso contrário: posso dizer ao Java que todos os miniaplicativos estão OK para executar sem assinatura?
  • Existem opções melhores, já que não posso alterar o código?

Atualmente, estou usando Linux Mint e Chrome.

Ole Tange
fonte

Respostas:

11

Permitir JARS não assinados

PARA:

.java / deployment / deployment.properties

ADICIONAR:

deployment.security.level=ALLOW_UNSIGNED

NOTA:

.java / deployment

é um apelido para

.config / icedtea-web


Permitir JARS com assinatura fraca:

Se o procedimento acima não funcionar, tente comentar as linhas, incluindo:

disabledAlgorithms

exemplo

jdk.jar.disabledAlgorithms=MD2, MD5, RSA keySize < 1024

de java.security

/etc/java-*-openjdk/security/java.security

Paul-K
fonte
Isso funcionou para mim. Obrigado. Parece que a mensagem de erro original pode significar muitas coisas diferentes.
Dustin Oprea
Para Dell PowerEdge M1000e remoção MD5de jdk.jar.disabledAlgorithmscorreções do javaconsole remoto à sua servidores blade
Stuart Cardall
6

Estou recebendo o mesmo erro no Red Hat 2.6.32-573

Caused by: net.sourceforge.jnlp.LaunchException:  
Fatal: Application Error: Cannot grant permissions to unsigned jars. 
Application requested security permissions, but jars are not signed.

Estou usando jre-1.8.0-openjdk.x86_64eicedtea icedtea-web 1.6.2 (rhel-1.el6-x86_64)

Eu já corro

$ javaws -nosecurity main.jnlp

Esta postagem resolveu meu problema. Modifiquei meu arquivo java.security:
https://velenux.wordpress.com/2017/06/07/workaround-for-javaws-jnpl-error-cannot-grant-permissions-to-unsigned- frascos /

Code_G
fonte
Esta postagem resolveu meu problema, modifiquei meu arquivo java.security. velenux.wordpress.com/2017/06/07/...
Code_G
Eu editei seu comentário na resposta. Você poderia substituir o link por uma descrição do que fez? (links quebram).
Volker Siegel
-nosecurityem vez de-nonsecurity
asdmin
5

As versões do icedTea incluídas no Ubuntu 14.04 têm um novo painel de controle que inclui a possibilidade de configurar políticas que realmente funcionam.

O painel de controle agora permite modificar o arquivo de políticas

Agora você pode permitir a execução de código não proprietário . Se você estiver preocupado com a segurança, permita essas permissões somente a partir do CodeBase específico do seu aplicativo

Permitir a execução de código não proprietário

Eu tentei fazer o mesmo no Ubuntu 12.04.x ​​sem sucesso. Nas versões anteriores do Ubuntu, os arquivos java.policy parecem ser ignorados.

jap1968
fonte
3
Eu apontaria que você inicia a configuração /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/itweb-settingsse não houver uma maneira fácil de fazer a interface gráfica do usuário.
Radovan Garabík
Que comando posso usar para iniciar esta janela de configuração? Estou usando gelado.
matiu 21/08
1
/usr/bin/itweb-settingslança o IcedTea Web Control Panel.
PLA