問題タブ [signed-applet]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 署名されたJavaアプレットはローカルファイルシステムにアクセスできません
ファイルを比較するアプレットを作成しました。CRC32チェックサムを計算してから、同じチェックサムのファイルを出力します。
これは、appletviewerからスタンドアロンアプリとして優れたパフォーマンスを発揮します。だから私はそれを詰めて署名しました。ただし、ブラウザで起動すると動作しません。
うまく起動します。ブラウザは、この署名のアクセス許可について尋ねます。JFileChooserダイアログが表示され、ターゲットフォルダを選択できます。
問題は、何も返さないことです。ファイルの反復やチェックサムの計算に関しては、静かにつぶれているようです。(私はファイルの反復とチェックサムの計算にapache.commons FileUtilsを使用しました)
.txtファイルを開いて、その内容を読み取ることができます。Linuxでも、さまざまなブラウザ、さまざまなセキュリティ設定でテストしました。
「AccessController.doPrivileged」を使用してコードを次のように書き直そうとしました。
...そしてそれはまだ何もしません。その問題は何ですか?
前もって感謝します。
java - Java アプレットの署名
Verisign 証明書を使用して Java アプレット jar に署名しました。
Java アプレットを html/javascript から実行すると、不明な証明書を信頼する必要があるかどうか、および Java アプリケーションを実行する必要があるかどうかを尋ねるダイアログ ボックスが表示されます。[実行] ボタン (同意したことを示す) をクリックし、ユーザーに毎回確認しないことを示すチェックボックスをチェック (オン) すると、Java アプレット ウィンドウが表示されます。
Verisign のような信頼できるサードパーティ認証機関 (CA) に属する証明書を使用して Java アプレットに署名した後でも、信頼できない Java アプリケーションを実行するかどうかの確認を求める最初の警告ダイアログが正常に表示されるかどうかを確認してください。
java - java.util.PropertyPermission user.home 読み取り (アクセスが拒否されました)
JFilechooser を使用してローカル ファイル システムからファイルを参照し、アップロードする署名付きアプレットがあります。Windows と Mac で正常に動作します。しかし、Linux ではエラーAccess Denied (java.util.PropertyPermission user.home read)が表示されます。インターネットで検索したところ、1 つの解決策が見つかりました。それに応じて行いましたが、問題を解決できませんでした。
ホームフォルダー内にファイル .java.policy ファイルを作成しました。
「参照」ボタンをクリックしても Linux で JFileChooser ダイアログを表示できませんでしたが、 Exception: Access Denied (java.util.PropertyPermission user.home read)が表示されます。どうすれば Linux で実行できますか? 私はあなたの助けに感謝します。
最近のアップデート:
ターミナルから java.policy ファイルを検索しました
ファイル /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/security/java.policy に次の行を追加しました
いいえ、JFileChoose ダイアログが表示されます。今、私は別の問題を抱えています。アプレットのファイル選択ダイアログで、ホーム ディレクトリのファイルが表示されませんでした。
java - 署名付きアプレットへのプロバイダーの追加
新しいプロバイダーを追加する署名付きアプレットを使用しています。アプレットが署名されている場合、そのようなコードは信頼できると見なされます。
プライベート メソッドの場合:
config
PKCS11 の名前とライブラリを含む文字列です。
netbeans でデバッグすると、アプレットは完全に機能し、新しいプロバイダーが追加されますが、html ファイルでアプレットを実行すると、アプレットが初期化されません。そして、プロバイダーが追加された次の行のコメントを外すと、html のアプレットが初期化されます。
次に、プロバイダーの追加に問題があります。
アプレットが初期化されないのは、次の行だけです。
私は挿入しましたtry {}
しかし、アプレットが初期化されていないように、例外は発生していません 何か提案はありますか?
アンドリューさん、コメントありがとうございます。
私はあなたの提案を追加しましたが、今はエラーが発生しています:
ログには次のように表示されます。
例外プロバイダー:
Throwable.Cause: java.security.AccessControlException: アクセスが拒否されました (java.lang.RuntimePermission accessClassInPackage.sun.security.util)
java - appletviewerでアクセス許可の例外をスローする署名されたjar
署名されたjarがappletviewerで機能しない問題のトラブルシューティングを試みています。私の主な目標はブラウザの外で実行することなので、appletviewerを使用してみました。他に提案があれば教えてください。
コンテキストは次のとおりです。
- Ubuntu 11.10
Java:
/li>
ここに問題があります:
- 中にアプレットを含むjarmyjar.jarがあります
- ブラウザでは正しく動作しますが、appletviewerで実行した場合は動作しません
瓶は署名されています:
/li>
また、中間署名証明書(上記のyyy)は存在しませんが、ルート証明書(zzz-またはalias1)は次のとおりです。
これを実行する:
与える:
質問セット1:
- ルート証明書が存在する場合、後続のすべての中間証明書が検証目的で受け入れ可能であると想定されていますか?上記の場合、cacertsファイルにyyyを含める必要がありますか?
- myjar.jarのように、jarが署名されている場合、appletviewerは制限なしで実行されると想定されますか?
- これを回避するためにそれを実行するためのより良い方法はありますか?
- これがブラウザとappletviewerで異なる動作をするのはなぜですか?
上記がよくわからないので、cacerts2という別のローカルファイルに証明書を追加してみました。私はそれを確認することができます:
- keytoolは、その証明書をcacertsにリストします
jarsignerの出力は次のようになります。
/li>
これで、出力に中間エイリアス(yyy-またはalias2)が存在し、alias1とalias2の両方に対して検証されていることに注意してください。次のようにappletviewerを実行します。
それでも同じ例外が発生します。
質問セット2:
- 上記はトラストストアに供給する正しい方法ですか?
- 上記は、appletviewerが検証目的で-keystoreコマンドを渡されたときにjarsignerと同じように使用することを意味しますか?
私が試した3番目のことは、次のようなポリシーファイルを作成することです(これはmypolicy.policyにあります)。
そしてこのように実行します:
そしてこのように:
結果:
- signedBy仕様が機能せずに付与するため、ポリシーが適用されていることを確認できます
- いずれかのsignedByによる付与が失敗している
質問セット3:
- これは、ポリシーとsignedByを指定する正しい方法ですか?このトピックに関するOracleのドキュメントは不完全です。
- jarが署名されている場合でもポリシーファイルは使用されますか?
- 他のアイデアはありますか?:)
java - ZipInputStream と JarInputStream の ZipEntry サイズの不一致
ZipInputStream を使用して読み取り、アプレットから ZipEntry を反復処理している zip ファイルに多数の画像ファイルがあります。
ただし、これらの画像を署名済みの jar に入れると、" ze.getSize()
" が -1 になり、画像ファイルが正しく読み取られません。
この点で誰かが私を助けることができますか?
applet - 新しいブラウザ ウィンドウを生成するときに、アプレット用に別の Java 環境を確保することは可能ですか?
2 つの異なる Web ページが相互に問題を引き起こしているように見えるアプレットに署名しているという問題を解決しようとしています。最初のページには、新しいブラウザ ウィンドウを生成し、URL を 2 番目のページに設定するアプレットが含まれています。このようなもの...
一部のトレース情報は、2 つのアプレットが同じヒープを共有していることを示唆しており、これが問題の原因である可能性があります。
完全な分離を保証する方法はありますか?
java - 署名付きアプレットが機能しない
私はアプレットを作ります:
Firefox と AppletViewer で動作していますが、署名すると動作しません ( http://java.sun.com/developer/onlineTraining/Programming/JDCBook/signed.html ) アクセス許可と開始について尋ねられますが、読み込みが行われます停止。どこが間違い?
java - 署名済みアプレットからのローカル Jar の使用
アプレットにローカル jar を使用させることは可能ですか?
私のアプレット アプリケーションには、いくつかの依存関係 (66Mb 相当の jar) が必要です。ユーザーは事前に jar をインストールできますが、アプレットからどのように使用できますか?
それらをデフォルトの場所 c:/myApp および /usr/local/myApp に保存できます
私はそれらをロードしようとしました:
しかし、jar はクラスパスに自動的に追加されません。つまり、各クラスを個別にロードする必要があります。
次の作業を行う:
しかし、すべてのクラスをアプレット ローダーに追加できますか?
PS私は Applet を使用すべきではないことを知っていますが、それでも私の種類のアプリケーションには Applet が最適です。