いくつかのネイティブの「.exe」ユーティリティを利用するJavaWeb-Startベースのアプリケーションがあります。すべてのjarが署名され、アプリはユーザーからすべての可能なアクセス許可を取得します(<security><all-permissions/></security>
.jnlp記述子内)。問題は、これらの「.exe」ユーティリティの1つが何らかのポートで開いてリッスンしようとするため、標準のWindowsファイアウォールウィンドウがポップアップすることです。例:
(出典:7tutorials.com)
JNLPの起動中にアプリに無制限のアクセス許可を与えることに同意した後、ユーザーにそのようなメッセージが表示されないようにしたいと思います。私の知る限り、ファイアウォールルールをプログラムで追加するには、netshツールを使用するか、レジストリを操作することで実行できます。どちらも管理者権限が必要です。
Elevation PowerToysを試して、Javaから呼び出しようとしましたが、管理者権限を明示的に要求する別のメッセージが表示されます。
質問:追加のアクセス許可要求によってユーザーを苛立たせることなく、「。exe」ユーティリティのルールをWindowsファイアウォールに追加する方法はありますか?