JBoss EAP、JBoss AS、WildFlyでJavaエージェントを設定する
注意
バージョン番号を混同しないように注意してください。バージョン7より前のJBoss EAPは、JBoss ASをベースにしています。JBoss EAP 7.xは、WildFlyをベースにしています。
Javaエージェントを使用してJBossを実行
次のいずれかのリポジトリから、Contrast Javaエージェント(JARファイル)をダウンロードします。
JBossは、BATファイルから実行するか、ドメインモードで実行できます。
BATファイル:.confファイルを使用してbatファイル(domain.bat、standalone.bat、またはrun.bat)からJBossを実行する場合は、設定ファイル(.confファイル)を変更します。Contrast JVMパラメータを有効にして、起動スクリプトに返す必要があります。
この変更を行うには、
<YourContrastJarPath>
をContrast JARファイルへのパスに置き換え、ご利用の環境のJBossサーバディレクトリを指定します。そして、.confファイルの最後の行にその行を追加します。Windows:
set "JAVA_OPTS=-javaagent:<YourContrastJarPath> %JAVA_OPTS%"
UNIX:
JAVA_OPTS="-javaagent:<YourContrastJarPath> $JAVA_OPTS"
ドメインモード:domain.batまたはdomain.shを使用して、JBoss 6 EAPまたはJBoss AS 7.xをドメインモードで実行する場合は、$JBOSS_HOME/domain/configuration/domain.xmlのJVMオプションに
-javaagent
スイッチを追加する必要があります。この例では、
<YourContrastJarPath>
をContrast JARファイルへのパスに置き換えてください。<server-group ...> <jvm name="default"> <jvm-options> <option value="-javaagent:<YourContrastJarPath>"/> </jvm-options> </jvm> ... </server-group>
Java 2セキュリティマネージャでのWildFlyの使用
Java 2セキュリティでWildFlyを使用する場合、Javaエージェントを設定できます。WildFlyのバージョン9から20まで対応しています。WildFly 8はサポートされていません。
WildflyでJava 2セキュリティマネージャを有効にするには:
コマンドライン引数
-secmgr
を渡すか、環境変数SECMGR
をtrueに設定します。SECMGR="true"
Javaエージェントの権限を有効にするには、以下のContrastポリシーを$JAVA_HOME/jre/lib/security/java.policy (JDK 6-8の場合)、または$JAVA_HOME/lib/security/default.policy (JDK 9以降の場合)に追加します。
<YourContrastJarPath>
はContrast JARファイルへのパスに置き換えて、以下のコマンドを使用します。grant codeBase "file:<YourContrastJarPath>" { permission java.security.AllPermission; };
エージェントがWildflyのクラスローダーシステムで機能するようにするには、環境変数
JBOSS_MODULES_SYSTEM_PKGS
(本来はorg.jboss.byteman
)の値を変更して、Javaエージェントのベースパッケージcom.contrastsecurity.agent,org.jboss.byteman
も含めるようにします。
ヒント
詳細については、Java EE 7セキュリティマネージャをWildFlyで使用する方法についてや、デフォルトのポリシー実装やポリシーファイルの構文を参照して下さい。