インターフェース HttpAuthenticationMechanism
- すべての既知の実装クラス:
- HttpAuthenticationMechanismWrapper
 - public interface HttpAuthenticationMechanism- HttpAuthenticationMechanismは、必要に応じて HTTP プロトコルを使用して、何らかの方法で呼び出し元の資格情報を取得するためのメカニズムです。- これは、Jakarta RESTful Web Services エンドポイントや Jakarta Faces ビューのように Jakarta Servlets 上に構築される可能性のあるエンドポイントを含む、Jakarta Servlet エンドポイントを保護するために使用されます。特に、リモート Jakarta Enterprise Beans または(Jakarta Messaging)メッセージ駆動型 Bean などのエンドポイントに は使用されません。 - HttpAuthenticationMechanismは本質的に Jakarta Servlet 固有であり、サーブレットコンテナープロファイルに準拠する- ServerAuthModuleの CDI 対応バージョンです。詳細については、Jakarta Authentication 仕様を参照してください。- このクラスの実装は、 - HttpMessageContext.notifyContainerAboutLogin(java.security.Principal, java.util.Set)メソッドを使用して、認証が成功したことを Jakarta Servlet コンテナーに通知できます。- 実装は、 - IdentityStoreにオプションのグループを持つ呼び出し側の名前の実際の資格情報の検証および / または検索を委譲することが期待され、奨励されています。ただし、これは必須ではなく、実装は認証の検証チェックを完全に自律的に行うか、プロセスの特定の側面のみをストアに委譲することができます(たとえば、認証されたユーザーが属するグループの取得にのみストアを使用します)。
- メソッドのサマリー- すべてのメソッド インスタンスメソッド 抽象メソッド デフォルトメソッド - 修飾子と型 - メソッド - 説明 - default void- cleanSubject(HttpServletRequest request, HttpServletResponse response, HttpMessageContext httpMessageContext)サブジェクトからメカニズム固有のプリンシパルとクレデンシャルを削除し、メカニズムが使用した可能性のあるその他の状態を削除します。- default AuthenticationStatus- secureResponse(HttpServletRequest request, HttpServletResponse response, HttpMessageContext httpMessageContext)オプションで、レスポンスを保護します。- AuthenticationStatus- validateRequest(HttpServletRequest request, HttpServletResponse response, HttpMessageContext httpMessageContext)HTTP リクエストを認証します。
 
- メソッドの詳細- validateRequest- AuthenticationStatus validateRequest(HttpServletRequest request, HttpServletResponse response, HttpMessageContext httpMessageContext) throws AuthenticationException HTTP リクエストを認証します。- このメソッドは、リソースに対する HTTP クライアントリクエストに応じて呼び出され、常に - Filterまたは- HttpServletの前に呼び出されます。さらに、このメソッドは- HttpServletRequest.authenticate(HttpServletResponse)にレスポンスして呼び出されます- デフォルトでは、このメソッドは、リクエストが保護されたリソースまたは保護されていないリソースに対するものであるかどうか、同じ HTTP セッション内で呼び出し元が正常に認証されたかどうかに関係なく、すべてのリクエストに対して常に呼び出されることに注意してください。 - CDI/Interceptor 仕様インターセプターを使用して、必要に応じてこのメソッドの呼び出しを防ぐことができます。2 つの例については、 - AutoApplySessionおよび- RememberMeを参照してください。- パラメーター:
- request- クライアントが行ったリクエストが含まれています
- response- クライアントに送信されるレスポンスが含まれています
- httpMessageContext- コンテナーと対話するためのコンテキスト
- 戻り値:
- このメソッドによって実行された処理の完了ステータス
- 例外:
- AuthenticationException- 処理が失敗したとき
 
 - secureResponse- default AuthenticationStatus secureResponse(HttpServletRequest request, HttpServletResponse response, HttpMessageContext httpMessageContext) throws AuthenticationException オプションで、レスポンスを保護します。- このメソッドは、リクエストに対して後処理を行うために呼び出され、 常に - Filterまたは- HttpServletの後に呼び出されます。- このメソッドは、(サーブレット)リソースが実際に呼び出されたときにのみ呼び出されることに注意してください。つまり、 - Filterまたは- HttpServletが SUCCESS を返す前に呼び出された- validateRequestへの以前の呼び出しが呼び出された場合のみです。- パラメーター:
- request- クライアントが行ったリクエストが含まれています
- response- クライアントに送信されるレスポンスが含まれています
- httpMessageContext- コンテナーと対話するためのコンテキスト
- 戻り値:
- このメソッドによって実行された処理の完了ステータス
- 例外:
- AuthenticationException- 処理が失敗したとき
 
 - cleanSubject- default void cleanSubject(HttpServletRequest request, HttpServletResponse response, HttpMessageContext httpMessageContext) サブジェクトからメカニズム固有のプリンシパルとクレデンシャルを削除し、メカニズムが使用した可能性のあるその他の状態を削除します。- このメソッドは - HttpServletRequest.logout()にレスポンスして呼び出され、認証メカニズムに、以前に確立された認証済み ID に関連付けられた状態を削除するオプションを提供します。例: Cookie 内に状態を保存する認証メカニズムは、ここでその Cookie を削除して送信できます。- パラメーター:
- request- クライアントが行ったリクエストが含まれています
- response- クライアントに送信されるレスポンスが含まれています
- httpMessageContext- コンテナーと対話するためのコンテキスト