署名されていないjavawsコードの実行


19

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デバイスから送信されるため、コードを変更したり署名したりする機会はありません。

  • この1つのアプレットが署名なしで実行しても構わないとJavaに伝えることはできますか?
    • そうでない場合:そのドメインのすべてのアプレットを実行しているJavaに署名なしで実行してもよいかどうかを確認できますか?
      • そうでない場合:すべてのアプレットを実行しているJavaに署名なしで実行してもかまいませんか?
  • コードを変更できない場合、より良いオプションはありますか?

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

回答:


11

署名されていないJARを許可する

に:

.java / deployment / deployment.properties

追加:

deployment.security.level=ALLOW_UNSIGNED

注意:

.java / deployment

のエイリアスです

.config / icedtea-web


弱い署名のJARを許可する:

上記が機能しない場合は、次の行をコメントアウトしてください。

disabledAlgorithms

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

java.securityから

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


これは私のために働いた。ありがとう。元のエラーメッセージは多くの異なることを意味するようです。
ダスティンオプレア

Dell Poweredge M1000e の場合、ブレードサーバーへのリモートコンソールを修正MD5から削除jdk.jar.disabledAlgorithmsjava
Stuart Cardall

6

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 /


この投稿は私の問題を解決し、java.securityファイルを修正しました。velenux.wordpress.com/2017/06/07/...
Code_G

あなたのコメントを回答に編集しました。リンクを自分のしたことの説明に置き換えてもらえますか?(リンクが切れます)。
フォルカーシーゲル

-nosecurity代わりに-nonsecurity
-asdmin

5

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

コントロールパネルでポリシーファイルを変更できるようになりました

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

所有されていないコードの実行を許可する

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


3
/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/itweb-settings簡単なGUIの方法がない場合は、構成を起動することを指摘します。
ラドバンガラビック

この構成ウィンドウを起動するには、どのコマンドを使用できますか?私はアイスティーを使用しています。
マティウ

1
/usr/bin/itweb-settingsIcedTea Webコントロールパネルを起動します。
人民解放軍
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.