Jetty WebAppのコンテキストパス上のルートディレクトリのみをパスワードで保護したいと考えています。私のコンテキストパスは/ MyAppにあるので、私はアクセスするためのパスワードを要求したいと思います:jettyのurl-patternとルートディレクトリのみを一致させる
http://localhost:8080/MyApp
ではなく、ために:
http://localhost:8080/MyApp/cometd
私の現在のセットアップは、(URLパターンに注意を払う以下であります):
<security-constraint>
<web-resource-collection>
<web-resource-name>Private Page</web-resource-name>
<url-pattern>/</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>moderator</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Test Realm</realm-name>
</login-config>
これは、/ and/*が一般的にどのように動作するのかというだけでは、この動作が期待されます。 http://www.coderanch.com/t/364782/Servlets/java/there-key-difference-between-url
しかし、私の場合、URLパターンのために:
<url-pattern>/</url-pattern>
と
<url-pattern>/*</url-pattern>
は思えまた、私はこのはずかなり多くの仕事をすることを示唆していると信じて、このリソースを見てきました全く同じことをする:
http://localhost:8080/MyApp
および
http://localhost:8080/MyApp/cometd
は、両方ともパスワードで保護されています。もちろん
、私は/ nothingishereに変更した場合、ちょうど健全性テストとして、何も唯一のWebサーブレットのルートディレクトリを保護するためにどのように誰を知っています/ MyAppに/ nothingishere
を除き、パスワードで保護されていませんか?ここで
おかげで、これは私が探していたもの_exactly_です。 – Drewch
私のためにもうまくいきます:) 24時間がたつとすぐに賞金を授与します。 –
もちろん、この回答はjettyだけでなく、すべてのj2ee準拠のWebサーバーでも同様です。だから、見出しを変えたいと思うかもしれません... Btw、喜んで助けました – MaVRoSCy