policytoolコマンドの具体的な設定方法について、以下の環境を例に説明します。
使用ライブラリ | プレインストール型Javaライブラリ |
オペレーティングシステム | Microsoft(R) Windows Server(R) 2012 |
Javaのバージョン | JDK/JRE 8 |
CORBAクライアントのインストールディレクトリ | C:\Interstage\ODWIN |
ユーザ名 | guest |
インポートした証明書の別名 | sampleuser |
(1)policytoolコマンドの起動
policytoolコマンドを起動します。
表示される「Policy Tool」画面を以下に示します。
(2)キーストア(証明書データベース)の格納位置の指定
キーストアファイルの格納位置、およびキーストアのタイプを指定します。
policytool起動後最初に表示される「Policy Tool」画面内で、プルダウンメニュー「編集」→「キーストアの変更」を選択すると、以下のような「キーストア」画面が表示されます。
「新規キーストアのURL」フィールドへ使用するキーストアの格納位置を指定し、「新規キーストアのタイプ」フィールドにはキーストアタイプを指定します。それぞれのフィールドへ指定する内容を以下に示します。
設定後は、「キーストア」画面上の「了解」ボタンを押下してください。
[キーストアURL]フィールドに、“(5)証明書のインポート”で作成されたキーストアの格納位置をキーストアファイル名も含めてURL形式で指定します。
デフォルトの場合の格納先、キーストアおよびポリシーファイルのファイル名を以下に示します。
格納先 | キーストアファイル | ポリシーファイル | |
---|---|---|---|
ログインユーザのプロファイルディレクトリ 例 「Microsoft(R) Windows Server(R) 2012」およびログイン名「guest」の場合 キーストア格納位置 file:c:/Users/guest/.keystore ポリシーファイル格納位置 c:\Users\guest\.java.policy | .keystore | .java.policy | |
ログインユーザのホームディレクトリ |
ポイント
キーストアの格納位置には、URL上のキーストアを指定することも可能です。URL上のキーストアを指定する場合は、“(4)証明書のエクスポート”、“(5)証明書のインポート”の手順は不要となります。
[キーストアタイプ]フィールドに、「jks」を指定します。
設定画面の例を以下に示します。
(3)エントリの作成
[ポリシー・ツール]画面の[ポリシー・エントリの追加]ボタンをクリックすると、以下の[ポリシー・エントリ]画面が表示されます。
本画面で各権限を設定します。
(4)権限の設定
「ポリシーエントリ」画面上の「アクセス権の追加」ボタンを押下し、「アクセス権」画面を表示します。この画面上で権限を設定します。
1組の[アクセス権:]、[ターゲット名:]、および[アクション:]の値を指定し、[OK]ボタンをクリックして権限を設定します。[OK]ボタンをクリックすると、[ポリシー・エントリ]画面に戻ります。次の1組の値を設定する場合は、[アクセス権の追加]ボタンを再度クリックして、本操作を繰り返し、必要な情報を設定します。
なお、設定する権限は、「プレインストール型Javaライブラリを使用する場合」と「Portable-ORBを使用する場合」で異なります。
設定が必要な権限を以下に示します。
◇通常運用で必要な権限
通常の運用では、セキュリティ上の安全性を確保するため、この権限以外は設定しないでください。
権限種別 | 設定する権限 | ||
---|---|---|---|
アクセス権 | ターゲット名 | アクション | |
ランタイム権限 | RuntimePermission | loadLibrary.<ライブラリ名> (注1) | 設定不要 |
プロパティ権限 | PropertyPermission | com.fujitsu.* | read |
注1)インストールしている機能により以下のダイナミックリンクライブラリ(DLL)名を指定します。なお、拡張子を指定する必要はありません。
インストールしている機能 | ダイナミックリンクライブラリ |
---|---|
CORBAサービスクライアント(クライアント機能) | ODjava4 |
CORBAサービス(サーバ機能) | 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)。
◇通常運用で必要な権限
通常の運用では、セキュリティ上の安全性を確保するため、この権限以外は設定しないでください。
権限種別 | 設定する権限 | ||
---|---|---|---|
アクセス権 | ターゲット名 | アクション | |
通信権限 | SocketPermission | 通信先サーバ名 (注1) | connect |
注1)JavaアプレットをダウンロードしたWebサーバ以外のサーバマシンと通信する場合に、通信先サーバ分の通信先サーバ名を設定します。通信するサーバマシンがJavaアプレットをダウンロードしたWebサーバだけの場合、設定する必要はありません。
通信先サーバ名として、以下のホスト名を指定します。
porbeditenvコマンドの「ホスト情報」で設定したホスト名
詳細については、“リファレンスマニュアル(コマンド編)”の“porbeditenv”を参照してください。
通信するサーバアプリケーションのオブジェクトリファレンスに設定されているホスト名
odlistnsコマンド(-lオプション指定)で表示される「オブジェクトのホスト名」です。
◇EJBアプリケーションを使用する場合に必要な権限 (注2)
権限種別 | 設定する権限 | ||
---|---|---|---|
アクセス権 | ターゲット名 | アクション | |
プロパティ権限 | PropertyPermission | com.fujitsu.* | read |
java.class.path | read | ||
ランタイム権限 | RuntimePermission | getClassLoader | (指定不要) |
注) EJBアプリケーションの詳細については、“第3部 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回目以降は、[ポリシー・ツール]画面の[ポリシーファイル:]フィールドで指定します。
デフォルトで指定するディレクトリは使用するオペレーティングシステムにより異なります。格納ディレクトリについては、[キーストアのURL]フィールドの表を参照してください。
プルダウンメニューの[ファイル]の[保存]をクリックすると、ポリシーファイルから以下のダイアログメッセージが表示されます。
(8)policytoolコマンドの終了
[ポリシーファイル:]フィールドに保存されたポリシーファイルが表示されていることを確認し、[ポリシー・ツール]画面で、プルダウンメニューの[ファイル]の[終了]をクリックします。