2017-06-13 5 views
0

を失敗した私は、web.xmlのJSP Tomcatのセキュリティ制約は常に

<security-constraint> 
    <web-resource-collection> 
     <url-pattern>/*</url-pattern> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>rolename</role-name> 
    </auth-constraint> 
</security-constraint> 
<login-config> 
    <auth-method>BASIC</auth-method> 
</login-config> 
<security-role> 
    <role-name>rolename</role-name> 
</security-role> 

に次そしてまた私のtomcat-users.xmlのファイルに次のように持っています

<role rolename="rolename"/> 
<user username="username" password="password" roles="rolename"/> 

認証が必要ですダイアログボックスが表示されますが、正しい資格情報を入力してもダイアログボックスがただちに更新され、何も起こりません。

これが動作しない理由は何ですか? auth-methodが示唆するように基本的には思われません。

+0

IDEを使用していますか?またはTomcatを直接実行していますか? –

+0

NetBeans 8.2を使用しています。上記のコードを私のウェブサーバにデプロイしたところ、それはうまく動作します。だから、これは、ローカルホストのdevのマシン上で何か異なる必要があるように思えます。私は、IDEを除外するために、コマンドラインでサーバーを起動して停止することに挑戦しようとしています。 –

答えて

1

についてはこちらをご覧くださいたとえば、あなたが持っている場合:

enter image description here

あなたがTomcatのファイルのキャッシュの場所があるNetbeansのが埋め込まれていますTomcatサーバー、例えばを使用している場合:

C:\ Users \ユーザーユーザー\のAppData \ローミング\ NetBeansの8.2 \ apacheの-tomcatに-8.0 \ .27.0_base \ confにあなたがTomcatのフォルダに滞在キャッシュファイルをEclipse IDEを使用した場合には

enter image description here

C:\プロジェクト\ localhostを-config設定でのTomcat V8.5サーバー\ワークスペース\サーバー

enter image description here

+0

これは大変ありがとうございます。私はNetBeansを使用していますし、独自のtomcat-users.xmlファイルを使用しています。なぜユーザーとロールが存在しなかったのかが分からない理由を説明しています。 –

0

security-roleタグをsecurity-constraintタグのレベルに配置するのを忘れたのでしょうか。

<security-role> 
     <role-name>rolename</role-name> 
    </security-role> 

    <security-constraint> 
     <web-resource-collection> 
      <url-pattern>/*</url-pattern> 
     </web-resource-collection> 
     <auth-constraint> 
      <role-name>rolename</role-name> 
     </auth-constraint> 
    </security-constraint> 
    <login-config> 
     <auth-method>BASIC</auth-method> 
    </login-config> 

は設定は、サーバーを追加するときは、NetBeansを使用するときは、管理者またはマネージャスクリプトの役割内の既存のユーザーとパスワードを設定し、正しく見える例

http://docs.oracle.com/javaee/5/tutorial/doc/bncbe.html

+0

私はsecurity-constraintタグをsecurity-constraintの外に追加しましたが(あなたの例と同じレベルです)、それでも問題は解決しません。 –

関連する問題