JBoss EAP、JBoss ASまたはWildFly用のJavaエージェントの設定

注意

バージョン番号を混同しないように気を付けてください。バージョン7より前のJBoss EAPは、JBoss ASに基づいています。JBoss EAP 7.Xは、WildFlyに基づいています。

JavaエージェントでのJBossの実行

  1. 次のいずれかのリポジトリから、Contrast Javaエージェント(JARファイル)をダウンロードします。

  2. JBossは、BATファイルから、またはドメインモードで実行できます。

    • BATファイル:.confファイルを使用して、domain.batstandalone.bat、またはrun.batからJBossを実行する場合は、設定ファイルを変更します。これにより、Contrast JVMパラメータを有効化し、起動スクリプトに戻ります。

      これを行うには、<YourContrastJarPath>Contrast JARファイルへのパスに置き換え、ご使用の環境のJBossサーバディレクトリを使用します。次に以下の行を.confファイルの末尾に追加します。

      • Windows:

        set JAVA_OPTS=-javaagent:<YourContrastJarPath> %JAVA_OPTS%
      • UNIX/Linux:

        JAVA_OPTS=-javaagent:<YourContrastJarPath> $JAVA_OPTS
    • ドメインモード:domain.batまたはdomain.shを使用して、JBoss 6 EAPまたはJBoss AS 7.Xをドメインモードで実行する場合は、-javaagentスイッチを$JBOSS_HOME/domain/configuration/domain.xmlのJVMオプションに追加する必要があります。

      この例では、<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セキュリティマネージャを有効化するには:

  1. コマンドライン引数-secmgrを渡すか、環境変数SECMGRをtrueに設定します。

    SECMGR="true"
  2. 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;
    };
  3. エージェントがWildflyのクラスローダーシステムとともに機能するようにするには、環境変数JBOSS_MODULES_SYSTEM_PKGS (もともとはorg.jboss.byteman)の値を変更して、Javaエージェントベースのパッケージcom.contrastsecurity.agent,org.jboss.bytemanも含めます。

ヒント

WildFlyでのJava EE 7セキュリティマネージャの使用について詳細をご確認いただくか、デフォルトのポリシー実装とポリシーファイル構文についてお読みください。