トップ 差分 一覧 ソース 置換 検索 ヘルプ PDF RSS ログイン

セキュリティポリシーの設定

http://msugai.fc2web.com/java/security/digest.html
http://www.ne.jp/asahi/hishidama/home/tech/java/security.html

 セキュリティーポリシーファイル

デフォルトで読み込まれるポリシーファイル

デフォルトで以下のポリシーファイルが読み込まれる

${java.home}/lib/security/java.policy
${user.home}/.java.policy

これらは、 JRE以下の lib/security/java.security に書かれている

ポリシーファイルを指定する場合

java -Djava.security.manager -Djava.security.policy=ポリシーファイル 実行対象クラス

でポリシーファイルを指定できる。

 ポリシーファイルの書き方

grant { 
	permission 〜許可する権限〜 ;
};

な感じ。

grant の後にコードベースを指定する事が出来る。

grant { 〜 };			←全てに対しての権限許可
grant codeBase "URL" { 〜 };	←特定のコードベースに対しての権限許可

コードベースとは、ロードされるクラスの元となった場所。
指定するのはあくまで「コードベース」、つまり各パッケージのルートディレクトリーに相当する部分のみ。パッケージ毎・個別のクラス毎に指定することは出来ない。
URLとしての指定なので、Windowsであってもスラッシュ「/」で区切る。
また、「*」や「-」をワイルドカードとして使用できる。

codeBaseの指定例 該当するクラスの例 説明
file:C:/workspace/- C:\workspace\配下のクラス
C:\workspace\sample1\classes配下のクラス
C:\workspace\sample2\classes配下のクラス
C:\workspace\hoge.jar内のクラス
C:\workspace\sample1\bin\hoge.jar内のクラス
末尾が「/-」の場合、
サブディレクトリーまで再帰的に含めた全ての
classファイル及びjarファイル。
file:C:/workspace/* C:\workspace\配下のクラス
C:\workspace\hoge.jar内のクラス
末尾が「/*」の場合、その場所の
classファイル及びjarファイル。
file:C:/workspace/ C:\workspace\配下のクラス 末尾が「/」の場合、その場所の
classファイル。

 サンプル

とりあえず、全許可

grant {
	permission java.security.AllPermission;	←全権限を許可
};

とりあえず、codeベース指定して全許可

grant codeBase "不正なリンクです。

	permission java.security.AllPermission;	←全権限を許可
};

[カテゴリ: プログラミング言語 > Java]



  • Hatenaブックマークに追加
  • livedoorクリップに追加
  • del.icio.usに追加
  • FC2ブックマークに追加

最終更新時間:2010年08月19日 21時36分49秒