8.2.8. フォームベースの認証の有効化


フォームベースの認証では、ログイン用にカスタム JSP/HTML ページを柔軟に定義でき、ログイン時にエラーが発生する場合にユーザーにダイレクトする別のページを利用できます。
フォームベースの認証は、デプロイメント記述子 web.xml<auth-method>FORM</auth-method> 要素に <login-config> を含めることで定義されます。ログインおよびエラーページは、以下のように <login-config> でも定義されています。
<login-config>
  <auth-method>FORM</auth-method>
  <form-login-config>
    <form-login-page>/login.html</form-login-page>
    <form-error-page>/error.html</form-error-page>
  </form-login-config>
</login-config>
Copy to Clipboard Toggle word wrap
フォームベースの認証のある Web アプリケーションがデプロイされると、Web コンテナーは FormAuthenticator を使用してユーザーを適切なページに転送します。JBoss EAP はセッションプールを維持するため、各リクエストに認証情報を追加する必要はありません。FormAuthenticator がリクエストを受信すると、既存のセッションに対して org.apache.catalina.session.Manager をクエリーします。セッションが存在しない場合は、新しいセッションが作成されます。FormAuthenticator は、セッションの認証情報を検証します。
認証要求
各セッションは、ランダムな値から生成される 16 バイトの文字列であるセッション ID で識別されます。この値はデフォルトで /dev/urandom (Linux)から取得され、MD5 でハッシュ化されます。チェックはセッション ID の作成時に実行され、作成された ID が一意であることを確認します。
確認されると、セッション ID はクッキーの一部として割り当てられ、クライアントに戻ります。このクッキーは後続のクライアント要求で予想され、ユーザーセッションを識別するために使用されます。
クライアントに渡されるクッキーは、複数の任意の属性を持つ名前/値のペアです。識別子属性は JSESSIONID と呼ばれます。この値は、セッション ID の 16 進文字列です。このクッキーは永続的ではないように設定されています。つまり、クライアント側ではブラウザーが終了すると削除されます。サーバー側では、セッションが 30 分後に非アクティブになると有効期限が切れ、セッションオブジェクトとその認証情報情報が削除されます。
ユーザーがフォームベースの認証で保護されている Web アプリケーションにアクセスしようとするとします。FormAuthenticator はリクエストをキャッシュし、必要に応じて新しいセッションを作成し、ユーザーを login-config で定義されたログインページにリダイレクトします。(上記の例のコードでは、ログインページは login.html です。) 次に、ユーザーは提供された HTML フォームにユーザー名とパスワードを入力します。ユーザー名とパスワードは、j_security_check フォームアクションを介して FormAuthenticator に渡されます。
次に FormAuthenticator は、Web アプリケーションコンテキストに割り当てられたレルムに対してユーザー名とパスワードを認証します。JBoss Enterprise Application Platform では、レルムは JBossWebRealm です。認証に成功すると、FormAuthenticator はキャッシュから保存されたリクエストを取得し、ユーザーを元の要求にリダイレクトします。
注記
サーバーは、URI が /j_security_check で終わり、少なくとも j_username および j_password パラメーターが存在する場合のみ、フォーム認証要求を認識します。
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る