1

Tomcat で非常に奇妙な問題に遭遇しました。Tomcat 6 で実行されている Web アプリケーションは、BASIC 認証で問題なく動作します。ただし、FORM ベースの認証に切り替えたいと考えています。しかし、web.xml を次のように変更すると:

<login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>my realm</realm-name>
</login-config>

ここまで

<login-config>
    <auth-method>FORM</auth-method>
    <form-login-config>
      <form-login-page>/login.html</form-login-page>
      <form-error-page>/loginfail.html</form-error-page>
    </form-login-config>
    <realm-name>my realm</realm-name>
</login-config>

Tomcat は引き続き BASIC 認証を使用します。

  • 両方のログイン ファイルが存在します。
  • catalina.err/out にエラーはありません。
  • realm 要素を省略すると、ブラウザーにレルム名の代わりに「認証が必要」と表示されます (引き続き BASIC を使用します)。

FORM ベースの認証が使用されていない条件はありますか?

4

1 に答える 1

0

私の場合、webapp をリロードするだけでは不十分だったようです。

FORM認証でTomcatを再起動した後、使用中です。

追加: FORM 認証は、BASIC/DIGEST とは異なるダイジェスト アルゴリズムを使用しています。したがって、古いユーザー認証データベースは再利用できません。しかし、これは別のトピックです。:)

于 2013-10-11T09:43:10.880 に答える