10.10.2. Java Security Manager 内での JBoss EAP 6 の実行
Java Security Manager ポリシーを指定するには、ブートストラッププロセス中にドメインまたはサーバーインスタンスに渡す Java オプションを編集する必要があります。このため、
domain.sh
スクリプトまたは standalone.sh
スクリプトにパラメーターをオプションとして渡すことはできません。次の手順を実行すると、インスタンスが Java Security Manager ポリシー内で実行されるよう設定できます。
前提条件
- この手順を実行する前に、Java Development Kit (JDK) に含まれる
policytool
コマンドを使用してセキュリティーポリシーを記述する必要があります。この手順では、ポリシーがEAP_HOME/bin/server.policy
にあることを前提としています。この代わりに、テキストエディターを使用してセキュリティーポリシーを書き、EAP_HOME/bin/server.policy
として手作業で保存することもできます。 - 設定ファイルを編集する前に、ドメインまたはスタンドアロンサーバーを完全に停止する必要があります。
複数のシステムにドメインメンバーが分散されている場合は、ドメインの各物理ホストまたはインスタンスに対して次の手順を実行してください。
手順10.34 JBoss EAP 6 向けのセキュリティーマネージャーの設定
設定ファイルを開きます。
編集のために設定ファイルを開きます。このファイルの場所は、管理対象ドメインとスタンドアロンサーバーのどちらを使用しているかによって異なります。このファイルは、サーバーまたはドメインを起動するために使用される実行可能ファイルではありません。管理対象ドメイン
EAP_HOME/bin/domain.conf
スタンドアロンサーバー
EAP_HOME/bin/standalone.conf
ファイルに Java オプションを追加します。
確実に Java オプションが使用されるようにするため、以下で始まるコードブロックに Java オプションを追加します。if [ "x$JAVA_OPTS" = "x" ]; then
-Djava.security.policy
値を変更してセキュリティーポリシーの場所を指定できます。改行をせずに 1 行で指定する必要があります。デバッグレベルを指定して-Djava.security.debug
を変更すると、ログに記録する情報量を変更できます。最も冗長なのはaccess
、policy
、およびaccess:failure
です。JAVA_OPTS="$JAVA_OPTS -Djava.security.manager -Djboss.home.dir=$PWD/.. -Djava.security.policy==$PWD/server.policy -Djava.security.debug=access:failure"
ドメインサーバーを起動します。
ドメインまたはサーバーを通常どおり起動します。