クラス HttpMessageContextWrapper

  • 実装されたすべてのインターフェース:
    HttpMessageContext

    public class HttpMessageContextWrapper
    extends ObjectSE
    implements HttpMessageContext
    このクラスは、HttpMessageContext インターフェースの実装であり、追加または異なる機能を提供したい開発者がサブクラス化できます。

    すべてのメソッドは、デフォルトでラップされたオブジェクトを呼び出します。

    • コンストラクターの詳細

      • HttpMessageContextWrapper

        public HttpMessageContextWrapper​(HttpMessageContext httpMessageContext)
    • メソッドの詳細

      • isProtected

        public boolean isProtected()
        インターフェースからコピーされた説明: HttpMessageContext
        現在リクエストされているリソースが保護されているかどうかを確認します。保護されたリソースとは、制約が定義されているリソース(Jakarta Servlet、Jakarta Faces ページ、Jakarta Server Pages ページなど)です。web.xml
        次で指定:
        インターフェース HttpMessageContextisProtected 
        戻り値:
        保護されたリソースがリクエストされた場合は true、パブリックリソースがリクエストされた場合は false。
      • isAuthenticationRequest

        public boolean isAuthenticationRequest()
        インターフェースからコピーされた説明: HttpMessageContext
        認証メカニズムへの現在の呼び出しが、アプリケーションが SecurityContext.authenticate(HttpServletRequest, HttpServletResponse, AuthenticationParameters) を呼び出した結果であるかどうかを確認します

        SecurityContext#authenticate が呼び出されなかった場合、認証メカニズムは、リクエストの開始時にコンテナーによって呼び出された可能性があります。

        次で指定:
        インターフェース HttpMessageContextisAuthenticationRequest 
        戻り値:
        SecurityContext#authenticate が呼び出された場合は true、呼び出されなかった場合は false。
      • isRegisterSession

        public boolean isRegisterSession()
        インターフェースからコピーされた説明: HttpMessageContext
        現在のリクエスト中に認証セッションを登録するようにランタイムがリクエストされているかどうかを確認します。
        次で指定:
        インターフェース HttpMessageContextisRegisterSession 
        戻り値:
        コードが認証セッションの登録を要求した場合は true、それ以外の場合は false。
      • setRegisterSession

        public void setRegisterSession​(StringSE callerName,
                                       SetSE<StringSE> groups)
        インターフェースからコピーされた説明: HttpMessageContext
        認証セッションを登録するようにランタイムにリクエストします。これにより、現在の HTTP セッションが有効である限り、ログインステータスが自動的に記憶されます。これがリクエストされない場合、HttpAuthenticationMechanism は、各リクエストの開始時にランタイムで手動で再認証する必要があります。
        次で指定:
        インターフェース HttpMessageContextsetRegisterSession 
        パラメーター:
        callerName - 認証を記憶する必要がある発信者名
        groups - 認証を記憶する必要があるグループ。
      • getAuthParameters

        public AuthenticationParameters getAuthParameters()
        インターフェースからコピーされた説明: HttpMessageContext
        SecurityContext#authenticate(AuthParameters)呼び出しで提供されたパラメーターを返します。
        次で指定:
        インターフェース HttpMessageContextgetAuthParameters 
        戻り値:
        SecurityContext#authenticate(AuthParameters)呼び出しで提供されたパラメーター、またはデフォルトのインスタンス。null になることはありません。
      • getHandler

        public CallbackHandlerSE getHandler()
        インターフェースからコピーされた説明: HttpMessageContext
        この HttpMessageContext の作成時にランタイムが提供し、このコンテキストが認証の詳細をランタイムに伝達するために使用する低レベルの Jakarta Authentication ハンドラーを返します。

        メモ : これは低レベルのオブジェクトであり、ほとんどの高レベルのコードで直接使用する必要はありません。

        次で指定:
        インターフェース HttpMessageContextgetHandler 
        戻り値:
        ランタイムがこのコンテキストに提供したハンドラー
      • getMessageInfo

        public MessageInfo getMessageInfo()
        インターフェースからコピーされた説明: HttpMessageContext
        現在のリクエストの低レベルの Jakarta Authentication メッセージ情報インスタンスを返します。

        メモ : これは低レベルのオブジェクトであり、ほとんどの高レベルのコードで直接使用する必要はありません。

        次で指定:
        インターフェース HttpMessageContextgetMessageInfo 
        戻り値:
        現在のリクエストのメッセージ情報インスタンス。
      • getClientSubject

        public SubjectSE getClientSubject()
        インターフェースからコピーされた説明: HttpMessageContext
        認証が行われるサブジェクトを返します。

        メモ : これは低レベルのオブジェクトであり、ほとんどの高レベルのコードで直接使用する必要はありません。

        次で指定:
        インターフェース HttpMessageContextgetClientSubject 
        戻り値:
        認証が行われる対象。
      • getRequest

        public HttpServletRequest getRequest()
        インターフェースからコピーされた説明: HttpMessageContext
        現在のリクエストに関連付けられているリクエストオブジェクトを返します。
        次で指定:
        インターフェース HttpMessageContextgetRequest 
        戻り値:
        現在のリクエストに関連付けられているリクエストオブジェクト。
      • setRequest

        public void setRequest​(HttpServletRequest request)
        インターフェースからコピーされた説明: HttpMessageContext
        リクエストオブジェクトを設定します。
        次で指定:
        インターフェース HttpMessageContextsetRequest 
        パラメーター:
        request - 設定するリクエストオブジェクト
      • withRequest

        public HttpMessageContext withRequest​(HttpServletRequest request)
        インターフェースからコピーされた説明: HttpMessageContext
        リクエストオブジェクトを設定します。
        次で指定:
        インターフェース HttpMessageContextwithRequest 
        パラメーター:
        request - 設定されるリクエストオブジェクト。
        戻り値:
        このメソッドが呼び出された HttpMessageContext インスタンスは、流れるようなスタイルの呼び出しチェーンに役立ちます。
      • getResponse

        public HttpServletResponse getResponse()
        インターフェースからコピーされた説明: HttpMessageContext
        現在のリクエストに関連付けられているレスポンスオブジェクトを返します。
        次で指定:
        インターフェース HttpMessageContextgetResponse 
        戻り値:
        現在のリクエストに関連付けられているレスポンスオブジェクト。
      • setResponse

        public void setResponse​(HttpServletResponse response)
        インターフェースからコピーされた説明: HttpMessageContext
        レスポンスオブジェクトを設定します。
        次で指定:
        インターフェース HttpMessageContextsetResponse 
        パラメーター:
        response - 設定するレスポンスオブジェクト。
      • notifyContainerAboutLogin

        public AuthenticationStatus notifyContainerAboutLogin​(StringSE username,
                                                              SetSE<StringSE> roles)
        インターフェースからコピーされた説明: HttpMessageContext
        SecurityContext.isCallerInRole(String) などで使用するためにアプリケーションで使用できるようにするために、指定された呼び出し元の名前とグループを登録するようにコンテナーに要求します。

        この呼び出しが返された後、認証された ID はすぐにはアクティブにならないことに注意してください。これは、この呼び出しが行われる認証メカニズムが制御をコンテナーに戻した後(実行時)にのみ発生します(エラーが発生しない場合)。

        便宜上、このメソッドは SUCCESS を返すため、このメソッドは HttpAuthenticationMechanism からの 1 つの流れるような return ステートメントで使用できます。

        次で指定:
        インターフェース HttpMessageContextnotifyContainerAboutLogin 
        パラメーター:
        username - 発信者プリンシパルとなる発信者名
        roles - 発信者プリンシパルに関連付けられているグループ
        戻り値:
        AuthenticationStatus.SUCCESS
      • notifyContainerAboutLogin

        public AuthenticationStatus notifyContainerAboutLogin​(PrincipalSE principal,
                                                              SetSE<StringSE> roles)
        インターフェースからコピーされた説明: HttpMessageContext
        SecurityContext.isCallerInRole(String) などで使用するためにアプリケーションで使用できるようにするために、指定された呼び出し元のプリンシパルとグループを登録するようにコンテナーに要求します。

        この呼び出しにより、コンテナーは、呼び出し元の ID を表す 2 つの呼び出し元プリンシパルを確立する可能性があることに注意してください。ここでは、プリンシパルパラメーターとして提供されるプリンシパルと、コンテナーの呼び出し元 ID の表現として使用される 2 番目のプリンシパルです。2 番目のプリンシパルは、コンテナーが呼び出し元を表すために異なるプリンシパル型を使用する場合にのみ追加されます。型が同じである場合、1 つのプリンシパルのみが追加されます。

        2 番目のプリンシパルが追加された場合、Principal.getName() によって返される値は両方のプリンシパルで同じになります。

        2 つのプリンシパルが追加されると、コンテナーの呼び出し元プリンシパルが SecurityContext.getCallerPrincipal() から返され、ここでパラメーターとして指定されたプリンシパルは SecurityContext.getPrincipalsByType(Class) を使用して取得できます。1 つだけ追加すると、SecurityContext.getCallerPrincipal() によって返されます。

        この呼び出しが返された後、認証された ID はすぐにはアクティブにならないことに注意してください。これは、この呼び出しが行われる認証メカニズムが制御をコンテナーに戻した後(実行時)にのみ発生します(エラーが発生しない場合)。

        便宜上、このメソッドは SUCCESS を返すため、このメソッドは HttpAuthenticationMechanism からの 1 つの流れるような return ステートメントで使用できます。

        次で指定:
        インターフェース HttpMessageContextnotifyContainerAboutLogin 
        パラメーター:
        principal - 発信者プリンシパルになるプリンシパル
        roles - 発信者プリンシパルに関連付けられているグループ
        戻り値:
        AuthenticationStatus.SUCCESS
      • doNothing

        public AuthenticationStatus doNothing()
        インターフェースからコピーされた説明: HttpMessageContext
        コンテナーに「何もしない」ように指示します。

        何もしない場合、Jakarta Security 認証メカニズムは、戻り値を介してこれを明示的に示す必要があります。

        便宜上、このメソッドは NOT_DONE を返すため、このメソッドは HttpAuthenticationMechanism からの 1 つの流れるような return ステートメントで使用できます。

        次で指定:
        インターフェース HttpMessageContextdoNothing 
        戻り値:
        AuthenticationStatus.NOT_DONE
      • getCallerPrincipal

        public PrincipalSE getCallerPrincipal()
        インターフェースからコピーされた説明: HttpMessageContext
        notifyContainerAboutLogin() の呼び出しによって設定されたプリンシパルを取得します。
        次で指定:
        インターフェース HttpMessageContextgetCallerPrincipal 
        戻り値:
        発信者のプリンシパル
      • getGroups

        public SetSE<StringSE> getGroups()
        インターフェースからコピーされた説明: HttpMessageContext
        notifyContainerAboutLogin() の呼び出しによって設定されたグループを取得します。
        次で指定:
        インターフェース HttpMessageContextgetGroups 
        戻り値:
        グループ