0

読み取り、書き込み、印刷などの許可を与えたいJAppletがあります。このアプレットは、ローカル ファイル システムからのみロードされます

Java チュートリアルの制御アプレットの部分を読んで、ポリシー ファイルを正常に作成し、アクセス許可を与え、コード ベースを指定しました http://docs.oracle.com/javase/tutorial/security/tour1/index.html

サンプル アプレットをローカル システムに正常に書き込むには、この行を java.security ファイルに追加する必要がありました。policy.url.3=file:/home/susanj/test/examplepolicy

問題は、コードを使用して同じ結果をどのように達成するかです。

Policy クラスhttp://docs.oracle.com/javase/6/docs/api/java/security/Policy.html#getInstance%28java.lang.String,%20java.security.Policy.Parametersから始めると仮定します %29

getInstance メソッドのいずれかを使用して新しいポリシーを作成します

ポリシー。getInstance (文字列型,Policy.Parameters パラメータ)

ポリシー。getInstance (文字列型、Policy.Parameters パラメータ、プロバイダ プロバイダ)

ポリシー。getInstance (文字列型、Policy.Parameters パラメータ、文字列プロバイダ)

ポリシーを介して追加します。setPolicy (Policy p) メソッドを使用してから、Policy を使用します。リフレッシュ();

残念ながら、getInstance メソッドではうまくいかないようで、状況がかなり混乱し始めています。アプレットに完全なアクセス許可を与えるために引数として使用する必要があるポリシー パラメータのタイプを知る必要があります。

このアプレットはインターネットからダウンロードしたものではなく、デスクトップ アプリケーションの一部であるため、アプレットがロードされる前にクラス/jar ファイルを完全な権限で実行できます。アプレットがロードされる前に、この方法でポリシー ファイルを設定できると思いますか?

これが実際には正しい方法であると仮定しています。

よろしく

ブレット

4

1 に答える 1

1

サンドボックス内からポリシーを変更できるとしたら、それは本当に悪い考えです...それはあなたがやろうとしているように聞こえます.

必要なアクセス許可を付与するためのポリシー ファイルの設定 を一読してください。

基本的に、アプレットを実行する前に、Java のデフォルト インスタンスでポリシー ファイルを更新する必要があります。

または、署名することもできます。

于 2012-08-16T23:14:18.927 に答える