web-dev-qa-db-ja.com

未署名のjavawsコードの実行

KVMリモートコンソールの場合、jnlpファイルを実行できるようにする必要があります。実行すると、次のようになります。

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

ブラウザで任意の未署名のコードを実行したくない理由を理解しています。

しかし、KVMデバイスからのものであるため、この状況では、コードを変更したり署名したりする機会はありません。

  • Javaこの1つのアプレットは署名なしで実行しても問題ないことを教えてもらえますか?
    • そうでない場合:Javaそのドメインからのすべてのアプレットの実行は署名なしで実行しても問題ありませんか?
      • そうでない場合:Java実行中のすべてのアプレットは署名なしで実行しても問題ありませんか?
  • コードを変更できないので、もっと良いオプションはありますか?

現在Linux MintとChromeを使用しています。

20
Ole Tange

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.
_

_jre-1.8.0-openjdk.x86_64_とicedtea icedtea-web 1.6.2 (rhel-1.el6-x86_64)を使用しています

もう走る

_$ javaws -nosecurity main.jnlp
_

この投稿で問題が解決し、Java.securityファイルを変更しました。
https://velenux.wordpress.com/2017/06/07/workaround-for-javaws-jnpl-error-cannot-grant-permissions-to-unsigned-jars/

6
Code_G

Ubuntu 14.04に含まれているicedTeaのバージョンには、実際に機能するポリシーを構成する可能性を含む新しいコントロールパネルがあります。

The Control Panel now allows to modify the Policy File

これで非所有コードの実行を許可できます。セキュリティが心配な場合は、アプリケーションの特定のCodeBaseからのみその権限を許可してください

Allow the execution of unowned code

Ubuntu 12.04.xでも同じことを試みましたが、まったく成功しませんでした。以前のUbuntuバージョンでは、Java.policyファイルは無視されているようです。

5
jap1968