2008-09-16 12 views
0

アプレットの一部だけに署名することはできますか?つまり、署名に関するセキュリティ警告が表示されないアプレットがありますが、(特権が必要な)特定の関数が使用されている場合は、署名付きのjarファイルを使用しますか?Java Applet - 部分的に署名されていますか?

実行時に権限を要求しなくても、(おそらくほとんどの)ブラウザでは、署名付きアプレットの警告が表示されます。私はむしろそれを避けたい。

答えて

1

コードを署名されていないjarと署名付きのjarに分割してください。

+0

良いアイデアのように聞こえます...試してみます。 – jsight

-1

私は、Sunがアプレットの作成を妨げてJava Web Startの使用を奨励したいという印象を与えられました。私はアプレットに署名するこの問題は問題の一部だと思う。 Sunのこのマニュアルを参照:Java Web start FAQ

私はこれを試したことはありませんが、ユーザがこれらのjarファイルの機能を必要とする場合にのみ許可チェックを必要とする個別のjarファイルに署名する必要がある機能を分割できますか?

+0

新しい(大幅に改良された)プラグインを開発するためのSunの最近の努力が示されるべきであるから、それはまったく真実ではない。 Web Startはまったく別の動物ですが、2人は一緒に近づいています。 JNLPAppletLauncherで動作するはずのものがなければ、マルチジャーを試してみましょう。 – jsight

1

理論的には(符号付き+符号なしのjar)ことができますが、実際にはコードは符号なしとして処理されます。アクセスの決定は、直接の呼び出し元ではなくスレッドから行う必要があります。スレッドが、符号なしコードからオブジェクトからの呼び出しをスタックに格納している場合は、呼び出し全体を符号なしとして扱う必要があります。これを回避すると、バグが見つかりました。

... いいえです。

私が不思議に思っていない場合は、なぜあなたのコードに部分的に署名したいのですか?

+0

これを試してみましたが、うまくいきました。 SunはJava3DとJOGLをアプレットでも動作させるために、実際には非常に似通っていますが、これはバグとはみなされません。アプリケーション全体に署名すると、アプレットの読み込み時にセキュリティダイアログが表示されます。機能がほとんど必要ないので、これは悪いことです。 – jsight

関連する問題