私の会社では、サーバー用の Java アプリケーションを作成し、ローカル アプリケーションを起動するための JNLP ファイルを配布しています。OSX 10.8.4 以降、Gatekeeper を満足させるために、開発者 ID で JNLP ファイルに署名する必要があります (実際には、リリース ノートの一番下にあります)。
問題は、これをどのように達成するかです。知る限り、アプリに署名できます (開発者 ID で署名された Java アプリがいくつかあります) - しかし、JNLP - ファイルは単なるファイルです。
次: 生成された JNLP ファイルでこれを行う方法。プロパティ、ベース URL など、サーバーから取得したものを変更する必要があります。
AFAIK Javaには、 JNLPファイルがそれぞれのJARファイル(メインクラスを保持するファイル)を介して署名されていると言う特定のメカニズムがありますが、Jarファイルは別の証明書で署名されており、ゲートキーパーも満足しません。
ツールなどに署名する方法に関する参考文献を 1 つ見つけましたが、動的ファイルのシナリオには適用されません。
答えとして望まないこと: 右クリックして開くと、ゲートキーパーをオーバーライドしたり、システムまたは Java の設定を変更したりできます。これはオプションではありません。
[更新] OSX 10.9.5 以降、OSX 10.9+ を使用して署名する必要があり、有効なバージョン 2 署名も必要です。これはどのように行われますか?