.cabファイルから.jarファイルにアップグレードした署名済みアプレットを Microsoft VM で実行するとセキュリティー例外がスローされる
症状
.cabファイルから.jarファイルに署名済みアプレットをアップグレードすると、そのアプレットは Microsoft VM で動作しなくなります。Sun JRE では正常に実行されます。原因
このエラーは、Microsoft VM に署名済み
.jarファイルのサポートがないために起こります。 While the Microsoft VM supports unsigned.jarfiles through thearchiveattribute of the<APPLET>tag, classes and resources within signed.jarfiles are treated as untrusted in the Microsoft VM.その結果、そのアプレットは Microsoft VM によって信頼されていないものとして扱われることになり、アプレット sandbox 外部にアクセスが必要となるアプレットによるアクションは、セキュリティー例外になる場合があります。
解決方法
Microsoft VM によって認識可能なアプレット署名スキームは、
.cabファイルで使用する Authenticode だけです。回避するには、Sun JVM の場合は、アップグレードした
.jarファイルをarchive属性を通じて指定します。 Microsoft VM の場合はそのまま、.cabファイルをcabbaseを通じて指定します。次に例を示します。
<APPLET code="MyApplet" width=100 height=100>
<PARAM name="cabbase" value="package1.cab, package2.cab">
</APPLET>このコードを次のように変更します。
<APPLET code="MyApplet" archive="package1.jar, package2.jar"
width=100 height=100>
<PARAM name="cabbase" value="package1.cab, package2.cab">
</APPLET>詳細情報
なし