ページの先頭行へ戻る
Interstage Application Server/Interstage Web Server J2EE ユーザーズガイド

15.8.2 policytoolコマンドの設定

policytoolコマンドの具体的な設定方法について説明します。ここで使用している画面の例は、以下の環境を元にしたものです

使用ライブラリ

プレインストール型Javaライブラリ

OS

Windows(R) 2003

CORBAクライアントインストールディレクトリ

C:\Interstage\ODWIN

ユーザ名

guest

インポートした証明書の別名

sampleuser

(1)policytoolコマンドの起動

policytoolコマンドを起動します。
表示される「Policy Tool」画面を以下に示します。



注意

policytoolコマンドの初回起動時に、以下のようなエラーを示すダイアログが表示されることがあります。これは、policytoolコマンドが起動と同時にユーザのセキュリティポリシーファイルの読込みを行うが、初回起動時にセキュリティポリシーファイルが存在しないためであり、動作上問題ありません。
ただし、2回目以降のpolicytoolコマンドの起動でこのダイアログが表示される場合は、セキュリティポリシーファイルが指定された格納位置にあるかを確認してください。


(2)キーストア(証明書データベース)の格納位置の指定

キーストアファイルの格納位置、およびキーストアのタイプを指定します。
policytool起動後最初に表示される「Policy Tool」画面内で、プルダウンメニュー「編集」→「キーストアの変更」を選択すると、以下のような「キーストア」画面が表示されます。



「新規キーストアのURL」フィールドへ使用するキーストアの格納位置を指定し、「新規キーストアのタイプ」フィールドにはキーストアタイプを指定します。それぞれのフィールドへ指定する内容を以下に示します。
設定後は、「キーストア」画面上の「了解」ボタンを押下してください。

「新規キーストアのURL」フィールド

(5)証明書のインポート”で作成されたキーストアの格納位置をキーストアファイル名も含めてURL形式で指定します。
デフォルトで格納されるディレクトリは使用するOSによって異なります。
各OSでの格納先を以下に示します。

OS

格納先

Windows(R) 2000
Windows Server(R) 2003
Windows(R) XP

ログインユーザのプロファイルディレクトリ
例) ログイン名guestの場合、以下を指定
[キーストア格納位置] file:c:/Documents and Settings/guest/.keystore
[ポリシーファイル格納位置] c:\Documents and Settings\guest\.java.policy

Windows Vista(R)
Windows Server(R) 2008

ログインユーザのプロファイルディレクトリ
例) ログイン名guestの場合、以下を指定
[キーストア格納位置] file:c:/Users/guest/.keystore
[ポリシーファイル格納位置] c:\Users\guest\.java.policy

Solaris
Linux

ログインユーザのホームディレクトリ

ポイント

  • キーストアの格納位置には、URL上のキーストアを指定することも可能です。URL上のキーストアを指定する場合は、“(4)証明書のエクスポート”、“(5)証明書のインポート”の手順は不要となります。

  • キーストアのファイル名は、デフォルト名で「.keystore」です。

  • ポリシーファイルのファイル名は、デフォルト名で「.java.policy」です。

「新規キーストアのタイプ:」フィールド

「jks」を指定します。

「キーストア」画面の設定例

設定画面の例を以下に示します。



(3)エントリの作成

キーストアの格納位置を指定すると、「キーストア:」フィールドに設定した内容が反映されます。



「Policy Tool」画面上の「ポリシーエントリの追加」ボタンを押下し、以下のような「ポリシーエントリ」画面で各権限を設定します。



(4)権限の設定

「ポリシーエントリ」画面上の「アクセス権の追加」ボタンを押下し、「アクセス権」画面を表示します。この画面上で権限を設定します。



「アクセス権」画面上での権限の設定は、一組の「アクセス権:/ターゲット名:/アクション:」の値を設定し、「了解」ボタンを押下します。この結果、「ポリシーエントリ」画面に戻ります。(次の一組の値を設定するには、再度「アクセス権の追加」ボタンを押下します。これを繰り返し、必要な情報を設定します。)設定する権限は「プレインストール型Javaライブラリ」を使用する場合と「Portable-ORB」を使用する場合で異なります。
設定が必要となる権限を以下に記載します。


プレインストール型Javaライブラリの場合


通常運用で必要な権限

通常の運用では、セキュリティ上の安全性を確保するため、この権限以外は設定しないでください。

権限種別

設定を行う権限

アクセス権

ターゲット名

アクション

ランタイム権限

RuntimePermission
(java.lang.RuntimePermission)

loadLibrary.<ライブラリ名> (注)

設定不要

プロパティ権限

PropertyPermission
(java.util.PropertyPermission)

com.fujitsu.*

read

) インストールしている機能、および使用するJDK/JREにより以下のダイナミックリンクライブラリ(DLL)名を指定します(拡張子は指定不要)。

インストールしている機能

ダイナミックリンクライブラリ

CORBAサービスクライアント(クライアント機能)

ODjava4

CORBAサービス(サーバ機能)

ODjavas4

CORBAサービスの内部ログを採取する場合に必要な権限 (注1)

権限種別

設定を行う権限

アクセス権

ターゲット名

アクション

プロパティ権限

PropertyPermission
(java.util.PropertyPermission)

user.dir

read

java.class.path

read

ファイル権限

FilePermission
(java.io.FilePermission)

${user.dir}\*

read,write

%OD_HOME%\etc\config (注2)

read

注1) CORBAサービスの内部ログの詳細は、“チューニングガイド”の“config”を参照してください。なお、ログ採取後は追加した権限を削除してください。
注2) %OD_HOME%は、CORBAサービス、CORBAサービスクライアントのインストールパスを指定します(デフォルトは、C:\Interstage\ODWIN)。


Portable-ORBの場合


通常運用で必要な権限

通常の運用では、セキュリティ上の安全性を確保するため、この権限以外は設定しないでください。

権限種別

設定を行う権限

アクセス権

ターゲット名

アクション

通信権限

SocketPermission
(java.net.SocketPermission)

通信先サーバ名 (注)

connect

) JavaアプレットをダウンロードしたWebサーバ以外のサーバマシンと通信する場合に、通信先サーバ分の通信先サーバ名を設定します。通信するサーバマシンがJavaアプレットをダウンロードしたWebサーバのみの場合は、設定する必要はありません。
通信先サーバ名として、以下のホスト名を指定します。

  • porbeditenvコマンドの「ホスト情報」で設定したホスト名
    (詳細は、“リファレンスマニュアル(コマンド編)”の“porbeditenv”参照)。

  • 通信するサーバアプリケーションのオブジェクトリファレンスに設定されているホスト名
    (odlistnsコマンド(-lオプション指定)で表示される「オブジェクトのホスト名」)。

EJBアプリケーションを使用する場合に必要な権限 (注)

権限種別

設定を行う権限

アクセス権

ターゲット名

アクション

ランタイム権限

RuntimePermission
(java.lang.RuntimePermission)

getClassLoader

設定不要

プロパティ権限

PropertyPermission
(java.util.PropertyPermission)

com.fujitsu.*

read

java.class.path

read

) EJBアプリケーションの詳細については、“EJB編”を参照してください。

Portable-ORBのログ情報を採取する場合に必要な権限 (注1)

権限種別

設定を行う権限

アクセス権

ターゲット名

アクション

ファイル権限

FilePermission
(java.io.FilePermission)

ログ採取ファイル (注2)

read,write,delete

ログ採取ディレクトリ (注3)

read

注1) Portable-ORBのログ情報の詳細は、“リファレンスマニュアル(コマンド編)”の“porbeditenv”を参照してください。なお、ログを採取する場合は、porbeditenvコマンドの「ログ格納ディレクトリ」で指定したディレクトリを事前に作成しておく必要があります。また、「ログ格納ディレクトリ」にはログ採取ファイル以外のユーザ資源などを格納しないでください。ログ採取後は、追加した権限を削除してください。
注2) porbeditenvコマンドの「ログ格納ディレクトリ」で指定したディレクトリ名に「\*」を付加したパスを指定します(「ログ格納ディレクトリ」に「c:\log\porb」と指定した場合は「c:\log\porb\*」)。
注3) porbeditenvコマンドの「ログ格納ディレクトリ」で指定したディレクトリ名を指定します。

SSL連携機能を使用する場合に必要な権限 (注1)

権限種別

設定を行う権限

アクセス権

ターゲット名

アクション

ファイル権限

FilePermission
(java.io.FilePermission)

keystoreディレクトリ (注2)

read

注1) SSL連携機能の詳細は、“セキュリティシステム運用ガイド”の“Portable-ORBでSSLを利用する方法”を参照してください。
注2) porbeditenvコマンドの「キーストア格納位置」で指定した格納位置、または-ORB_FJ_PORB_SSLPathパラメタで指定した格納位置を指定します(格納位置が「C:\Interstage\PORB\etc\keystore」の場合、「C:\Interstage\PORB\etc\keystore」)。キーストアの格納位置がネットワーク上(HTTP指定)である場合は、指定する必要はありません。

サーバアプリケーションでユーザ情報獲得用のAPIを使用する場合に必要な権限 (注)

権限種別

設定を行う権限

アクセス権

ターゲット名

アクション

プロパティ権限

PropertyPermission
(java.util.PropertyPermission)

user.name

read

注) ユーザ情報獲得用のAPIの詳細は、“リファレンスマニュアル(API編)”の“TD_get_user_information”/“TD::get_user_information”/“TDGETUSERINFORMATION”を参照してください。

「アクセス権」画面の設定例

ランタイム権限の設定画面の例を以下に示します。



プロパティ権限の設定画面の例を以下に示します。



(5)署名付きJavaクラスのための証明書の指定

どの証明書に対する権限かを指定するため、「SignedBy:」フィールドにキーストアにインポートした名前(別名)を指定します。入力後、「完了」ボタンを押下します。



(6)プレインストール型Javaライブラリの権限の設定

プレインストール型Javaライブラリの権限を設定します。
「ポリシーエントリの追加」ボタンを押下して、ランタイム権限/プロパティ権限/ファイル権限をそれぞれ設定します(“(3)エントリの作成”、“(4)権限の設定”)。
それぞれの権限の設定後、「ポリシーエントリ」画面の「CodeBase:」フィールドにプレインストール型Javaライブラリを指定します。入力後、「完了」ボタンを押下します。



(7)保存

設定した権限をセキュリティポリシーファイルとして保存を行います。
初回作成時は、プルダウンメニュー「ファイル」の「別名保存」を選択してポリシーファイルの名前と格納位置を指定します。2回目以降は、「Policy Tool」画面上の「ポリシーファイル:」フィールドで指定します。
デフォルトで指定するディレクトリは使用するOSによって異なります。
各OSでの格納ディレクトリは、「新規キーストアのURL」フィールドで説明されている格納ディレクトリの表を参照してください。
プルダウンメニューの「ファイル」→「保存」を選択します。保存が完了すると、ポリシーファイルから以下のようなダイアログが表示されます。



(8)policytoolコマンドの終了

保存後、「ポリシーファイル:」フィールドに保存したポリシーファイルが入っていることが確認できます。
「Policy Tool」画面上でプルダウンメニュー「ファイル」→「終了」を選択し、終了します。