- - PR -
WEB.XMLのurl-patternについて
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-04-20 22:14
フォルダ構成は以下のようになっており
webapps-TEST-controller -TEST2 TEST以下に対して認証をかけたいのですが、 <url-pattern>/TEST/*</url-pattern> では認証はかからず <url-pattern>*</url-pattern> ではTEST,TEST2にもかかってしまいました。 どうしたらうまくいくんでしょう。 <対象WEB.XML> $CATALINA_HOME/conf/web.xml <URL例> http://localhost/TEST/controller/AAA <対象コード部> <security-constraint> <web-resource-collection> <web-resource-name>Authentication of FormAuth</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <auth-constraint> <role-name>*</role-name> </auth-constraint> </security-constraint> |
|
投稿日時: 2005-04-21 10:00
こんにちわ。
直接的な回答じゃないんですが $CATALINA_HOME/conf/web.xmlではなくて $CATALINA_HOME/webapps/TEST/WEB-INF/web.xmlに個々のアプリケーションの 設定を書けば一発で解決ではないんでしょうか? $CATALINA_HOME/webapps/TEST/WEB-INF/web.xmlであれば <url-pattern>*</url-pattern> でご希望の動作がかなうはずです。 そもそも$CATALINA_HOME/conf/web.xmlは複数のアプリケーション共通で 使用するための設定ですので、認証などのアプリケーションごとの設定 を書くことはお作法としてはあまり頂けないのではないでしょうか。 どうでしょう。 |
|
投稿日時: 2005-04-21 12:13
ご返答ありがとうございます。
すいません。その点についてはどうしても変更できないため、、、 現状の方法で打開策はないでしょうか? よろしくお願いいたします。 |
|
投稿日時: 2005-04-22 10:28
私はそのような使い方はしてこなかったもので知らなかったのですが
少し試してみたところご希望の動作は不可能であるということがわか りました。 全アプリケーションに共通ということで以下のような挙動になるようです。 $CATALINA_HOME/conf/web.xmlに以下を記述 <security-constraint> <web-resource-collection> <web-resource-name>Authentication of FormAuth</web-resource-name> <url-pattern>/admin/*</url-pattern> </web-resource-collection> <auth-constraint> <role-name>*</role-name> </auth-constraint> </security-constraint> WEBアプリケーションとして以下を配備 work1 work2 各々のコンテキスト配下にadminディレクトリを設置 この設定で、両アプリケーションのadmin配下にセキュリティがかかりました。 つまり、$CATALINA_HOME/conf/web.xmlに記述される/(ルート)は既に各 アプリケーションのルートであるということです。 |
1