4.4. バルブを使用するように Web アプリケーションを設定する
グローバルバルブとしてインストールされていないバルブは、アプリケーションに含まれ、
jboss-web.xml
デプロイメント記述子で設定されている必要があります。
重要
グローバルバルブとしてインストールされたバルブは、展開されたすべてのアプリケーションに自動的に適用されます。グローバルバルブを設定する方法については、JBoss EAP 『管理および設定ガイド』 の 『グローバルバルブ』 を参照してください。
前提条件
- バルブを作成して、アプリケーションのクラスパスに含める必要があります。これは、アプリケーションの WAR ファイルまたは依存関係として追加されたモジュールに含めることで実行できます。このようなモジュールの例には、サーバーにインストールされた静的モジュールや、WAR が EAR にデプロイされている場合は EAR アーカイブの
lib/
ディレクトリーにある JAR ファイルが含まれます。 - アプリケーションには、
jboss-web.xml
デプロイメント記述子が含まれている必要があります。
手順4.1 ローカルバルブのアプリケーションを設定します
バルブを設定する
作成するvalve
を含む要素class-name
アプリケーションのjboss-web.xml
ファイルの子要素。Theclass-name
バルブクラスの名前です。<valve> <class-name>VALVE_CLASS_NAME</class-name> </valve>
例4.1 jboss-web.xml ファイルで設定されたバルブ要素
<valve> <class-name>org.jboss.security.negotiation.NegotiationAuthenticator</class-name> </valve>
カスタムバルブを設定する
バルブに設定可能なパラメーターがある場合は、param
子要素valve
各パラメーターの要素、指定param-name
とparam-value
それぞれのために。例4.2 jboss-web.xml ファイルで設定されたカスタムバルブエレメント
<valve> <class-name>org.jboss.web.tomcat.security.GenericHeaderAuthenticator</class-name> <param> <param-name>httpHeaderForSSOAuth</param-name> <param-value>sm_ssoid,ct-remote-user,HTTP_OBLIX_UID</param-value> </param> <param> <param-name>sessionCookieForSSOAuth</param-name> <param-value>SMSESSION,CTSESSION,ObSSOCookie</param-value> </param> </valve>
アプリケーションがデプロイされると、指定された設定のアプリケーションに対してバルブが有効になります。
例4.3 jboss-web.xml バルブ設定
<valve> <class-name>org.jboss.samplevalves.RestrictedUserAgentsValve</class-name> <param> <param-name>restrictedUserAgents</param-name> <param-value>^.*MS Web Services Client Protocol.*$</param-value> </param> </valve>