Java 2 セキュリティーは、いくつかのポリシー・ファイルを使用 して、それぞれの Java プログラムごとに認可されたアクセス権を判別します。
library.policy ファイルが、 共用ライブラリー (Java ライブラリー・クラス) のテンプレートです。 複数のエンタープライズ・アプリケーションで、共用ライブラリーの定義および使用が可能です。共用 ライブラリーの定義および管理方法については、『共用ライブラリーの管理』を参照してください。
共用ライブラリーのデフォルトの許可 (java.policy ファイル、app.policy ファイル、および library.policy ファイルで定義された許可を組み合わせたもの) で十分なら、特に処置を行う必要は ありません。デフォルトのライブラリー・ポリシーが自動的に使用されます。セル内のライブラリーを共用する上で 特定の変更を加える必要がある場合は、library.policy ファイルを更新してください。
ポリシー・ファイルに構文エラーが あると、アプリケーション・サーバーは失敗します。 これらのポリシー・ファイルの編集は、慎重に行ってください。
ポリシー・ファイルを抽出するには、 ご使用の環境に適切な変数値を使用し、 コマンド・プロンプトによって、以下のコマンドを入力します。 説明上の理由から、最初の 2 行は分割されています。
wsadmin> set obj [$AdminConfig extract cells/cell_name/nodes/
node_name/library.policy c:/temp/test/library.policy]
ポリシー・ツールを使用して、抽出された library.policy ファイルを編集します。詳しくは、PolicyTool を使用したポリシー・ファイルの編集 を参照してください。
ポリシー・ファイルをチェックインするには、 ご使用の環境に適切な変数値を使用し、 コマンド・プロンプトによって、以下のコマンドを入力します。 更新された library.policy は、 サーバーの再始動後、共用ライブラリーに適用されます。
wsadmin> $AdminConfig checkin cells/cell_name/nodes/node_name/library.policy
c:/temp/test/library.policy $obj
共用ライブラリーには、java.policy ファイル、app.policy ファイル、および library.policy ファイルに含まれる許可を組み合わせたものが適用されます。 library.policy ファイルは、構成サービスとファイル複製サービスによって管理されます。
grant { };
セル内の共用ライブラリーで、java.policy ファイル 、app.policy ファイル、および library.policy ファイルでデフォルトとして定義されていない 許可が必要な場合は、library.policy ファイルを更新する必要があります。 アクセス権がない場合、java.security.AccessControlException 例外が発生します。 不足しているアクセス権は 、例外データにリストされます。
java.security.AccessControlException: access denied (java.io.FilePermission app_server_root/lib/mail-impl.jar read)上記の行は説明目的のためのみ 2 行に分かれて表示されています。app_server_root 変数は、インストール・ディレクトリーを表します。
Java プログラムがこの例外を受け取り、このアクセス権の追加が認められると、 アクセス権を library.policy ファイルに追加します。
grant { permission java.io.FilePermission "app_server_root/lib/mail-impl.jar", "read"; };上記の行は説明目的のためのみ 2 行に分かれて表示されています。app_server_root 変数は、インストール・ディレクトリーを表します。
library.policy ファイルへの変更を有効にするには、 関連する Java プロセスを再始動します。