policytoolコマンドの具体的な設定方法について説明します。ここで使用している画面の例は、以下の環境を元にしたものです
プレインストール型Javaライブラリ
Windows(R) 2003
JDK/JRE5.0
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 Vista(R) | ログインユーザのプロファイルディレクトリ |
Solaris | ログインユーザのホームディレクトリ |
キーストアの格納位置には、URL上のキーストアを指定することもできます。URL上のキーストアを指定する場合、“(4)証明書のエクスポート”、“(5)証明書のインポート”の手順は必要ありません。
キーストアのファイル名は、デフォルト名で「.keystore」です。
ポリシーファイルのファイル名は、デフォルト名で「.java.policy」です。
「New KeyStore Type」フィールド
「jks」を指定します。
設定画面の例を以下に示します。
(3)エントリの作成
キーストアの格納位置を指定すると、「Keystore:」フィールドに設定した内容が反映されます。
「Policy Tool」画面上の「ポリシーエントリの追加」ボタンを押下し、以下のような「ポリシーエントリ」画面で各権限を設定します。
(4)権限の設定
「ポリシーエントリ」画面上の「アクセス権の追加」ボタンを押下し、「アクセス権」画面を表示します。この画面上で権限を設定します。
「アクセス権」画面上での権限の設定は、一組の「アクセス権:/ターゲット名:/アクション:」の値を設定し、「了解」ボタンを押下します。この結果、「ポリシーエントリ」画面に戻ります(次の一組の値を設定するには、再度「アクセス権の追加」ボタンを押下します。これを繰り返し、必要な情報を設定します。
設定する権限は「プレインストール型Javaライブラリ」を使用する場合と「Portable-ORB」を使用する場合で異なります。
設定が必要となる権限を以下に示します。
プレインストール型Javaライブラリの場合
◇通常運用で必要な権限
通常の運用では、セキュリティ上の安全性を確保するため、この権限以外は設定しないでください。
権限種別 | 設定を行う権限 | ||
---|---|---|---|
アクセス権 | ターゲット名 | アクション | |
ランタイム権限 | RuntimePermission | loadLibrary.<ライブラリ名> (注1) | 設定不要 |
プロパティ権限 | PropertyPermission | com.fujitsu.* | read |
注1) インストールしている機能、および使用するJDK/JREにより以下のダイナミックリンクライブラリ(DLL)名を指定します。なお、拡張子を指定する必要がありません。
インストールしている機能 | JDK/JRE | ダイナミックリンクライブラリ |
---|---|---|
CORBAサービスクライアント(クライアント機能) | JDK/JRE1.4.2以降 | ODjava4 |
JDK/JRE1.3.1 | ODjava2 | |
CORBAサービス(サーバ機能) | JDK/JRE1.4.2以降 | ODjavas4 |
◇CORBAサービスの内部ログを採取する場合に必要な権限 (注2)
権限種別 | 設定を行う権限 | ||
---|---|---|---|
アクセス権 | ターゲット名 | アクション | |
プロパティ権限 | PropertyPermission | user.dir | read |
java.class.path | read | ||
ファイル権限 | FilePermission | ${user.dir}\* | read, write |
%OD_HOME%\etc\config (注3) | read |
注2) CORBAサービスの内部ログの詳細については、“チューニングガイド”の“config”を参照してください。なお、ログ採取後は追加した権限を削除してください。
注3) %OD_HOME%は、CORBAサービス、CORBAサービスクライアントのインストールパス(デフォルト:C:\Interstage\ODWIN)を指定します。
Portable-ORBの場合
◇通常運用で必要な権限
通常の運用では、セキュリティ上の安全性を確保するため、この権限以外は設定しないでください。
権限種別 | 設定を行う権限 | ||
---|---|---|---|
アクセス権 | ターゲット名 | アクション | |
通信権限 | SocketPermission | 通信先サーバ名 (注1) | connect |
注1)JavaアプレットをダウンロードしたWebサーバ以外のサーバマシンと通信する場合に、通信先サーバ分の通信先サーバ名を設定します。通信するサーバマシンがJavaアプレットをダウンロードしたWebサーバのみの場合、設定する必要はありません。
通信先サーバ名として、以下のホスト名を指定します。
porbeditenvコマンドの「ホスト情報」で設定したホスト名
詳細については、“リファレンスマニュアル(コマンド編)”の“porbeditenv”を参照してください。
通信するサーバアプリケーションのオブジェクトリファレンスに設定されているホスト名
odlistnsコマンド(-lオプション指定)で表示される「オブジェクトのホスト名」です。
URLスキーマに指定したホスト名
詳細については、“9.5 URLスキーマ”および“13.4 corbaloc URLスキーマ”を参照してください。
なお、通信先サーバとして、serverA.interstage.co.jpとserverB.interstage.co.jpが存在する場合、通信先サーバ名としてserverA.interstage.co.jpとserverB.interstage.co.jpの2組の通信権限を設定します。または、信頼できる範囲を確認した上でワイルドカード(*)を使用して、*.interstage.co.jpと設定することもできます。ただし、ワイルドカード(*)のみの指定(不特定のサーバマシンとの通信)は、セキュリティ上の安全を確保するため、指定しないでください。
◇EJBアプリケーションを使用する場合に必要な権限 (注2)
権限種別 | 設定を行う権限 | ||
---|---|---|---|
アクセス権 | ターゲット名 | アクション | |
プロパティ権限 | PropertyPermission | com.fujitsu.* | read |
java.class.path | read | ||
ランタイム権限 | RuntimePermission | getClassLoader | (指定不要) |
注2)EJBアプリケーションの詳細については、“J2EE ユーザーズガイド”の“EJB編”を参照してください。
◇Portable-ORBのログ情報を採取する場合に必要な権限 (注3)
権限種別 | 設定を行う権限 | ||
---|---|---|---|
アクセス権 | ターゲット名 | アクション | |
ファイル権限 | FilePermission | ログ採取ファイル (注4) | read, write, delete |
ログ採取ディレクトリ (注5) | read |
注3)Portable-ORBのログ情報の詳細については、“リファレンスマニュアル(コマンド編)”の“porbeditenv”を参照してください。なお、ログを採取する場合は、porbeditenvコマンドの「ログ格納ディレクトリ」で指定したディレクトリを事前に作成しておく必要があります。また、「ログ格納ディレクトリ」にはログ採取ファイル以外のユーザ資源などを格納しないでください。ログ採取後は、追加した権限を削除してください。
注4)porbeditenvコマンドの「ログ格納ディレクトリ」で指定したディレクトリ名に「\*」を付加したパスを指定します。「ログ格納ディレクトリ」に「c:\log\porb」と指定した場合は「c:\log\porb\*」です。
注5)porbeditenvコマンドの「ログ格納ディレクトリ」で指定したディレクトリ名を指定します。
◇SSL連携機能を使用する場合に必要な権限 (注6)
権限種別 | 設定を行う権限 | ||
---|---|---|---|
アクセス権 | ターゲット名 | アクション | |
ファイル権限 | FilePermission | keystoreディレクトリ (注7) | read |
注6)SSL連携機能の詳細については、“セキュリティシステム運用ガイド”の“Portable-ORBでSSLを利用する方法”を参照してください。
注7)porbeditenvコマンドの「キーストア格納位置」で指定した格納位置、または-ORB_FJ_PORB_SSLPathパラメタで指定した格納位置を指定します。たとえば、格納位置が「C:\Interstage\PORB\etc\keystore」の場合、「C:\Interstage\PORB\etc\keystore」です。キーストアの格納位置がネットワーク上(HTTP指定)である場合、指定する必要はありません。
◇サーバアプリケーションでユーザ情報獲得用のAPIを使用する場合に必要な権限 (注8)
権限種別 | 設定を行う権限 | ||
---|---|---|---|
アクセス権 | ターゲット名 | アクション | |
プロパティ権限 | PropertyPermission | user.name | read |
注8)ユーザ情報獲得用の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」画面上でプルダウンメニュー「ファイル」→「終了」を選択し、終了します。