パッケージ jakarta.servlet

インターフェース SessionCookieConfig


  • public interface SessionCookieConfig
    セッショントラッキングの目的で使用される Cookie のさまざまなプロパティを構成するために使用されるクラス。

    このクラスのインスタンスは、ServletContext.getSessionCookieConfig() の呼び出しによって取得されます。

    導入:
    Servlet 3.0
    • メソッドのサマリー

      すべてのメソッド   インスタンスメソッド   抽象メソッド   非推奨のメソッド  
      修飾子と型 メソッド 説明
      StringSEgetAttribute​(StringSE name)
      特定のセッション Cookie 属性の値を取得します。
      MapSE<StringSE,​StringSE>getAttributes()
      この SessionCookieConfig の属性固有の setter (バージョンを除く) を介して設定されたものを含む、すべての属性と値のマップ (キーは大文字と小文字を区別しません) を取得します。
      StringSEgetComment()
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      これは、RFC 6265 では不要になりました。
      StringSEgetDomain()
      この SessionCookieConfig の取得元である ServletContext によって表されるアプリケーションの代わりに作成されたセッショントラッキング Cookie に割り当てられるドメイン名を取得します。
      intgetMaxAge()
      この SessionCookieConfig の取得元である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie の有効期間(秒単位)を取得します。
      StringSEgetName()
      この SessionCookieConfig の取得元である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie に割り当てられる名前を取得します。
      StringSEgetPath()
      この SessionCookieConfig の取得元である ServletContext で表されるアプリケーションの代わりに作成されたセッショントラッキング Cookie に割り当てられるパスを取得します。
      booleanisHttpOnly()
      この SessionCookieConfig の取得である ServletContext によって表されるアプリケーションの代わりに作成されたセッショントラッキング Cookie が HttpOnly としてマークされるかどうかを確認します。
      booleanisSecure()
      対応するセッションを開始したリクエストが HTTPS ではなくプレーン HTTP を使用している場合でも、この SessionCookieConfig の取得である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie が安全であるとマークされるかどうかを確認します。
      voidsetAttribute​(StringSE name, StringSE value)
      指定されたセッション Cookie 属性の値を設定します。
      voidsetComment​(StringSE comment)
      非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
      これは、RFC 6265 では不要になりました。
      voidsetDomain​(StringSE domain)
      この SessionCookieConfig の取得元である ServletContext で表されるアプリケーションの代わりに作成されたセッショントラッキング Cookie に割り当てられるドメイン名を設定します。
      voidsetHttpOnly​(boolean httpOnly)
      この SessionCookieConfigHttpOnly として取得された ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie をマークまたはマーク解除します。
      voidsetMaxAge​(int maxAge)
      この SessionCookieConfig の取得元である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie の有効期間(秒単位)を設定します。
      voidsetName​(StringSE name)
      この SessionCookieConfig の取得元である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie に割り当てられる名前を設定します。
      voidsetPath​(StringSE path)
      この SessionCookieConfig の取得元である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie に割り当てられるパスを設定します。
      voidsetSecure​(boolean secure)
      この SessionCookieConfig安全であるとして取得された ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie をマークまたはマーク解除します。
    • メソッドの詳細

      • setName

        void setName​(StringSE name)
        この SessionCookieConfig の取得元である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie に割り当てられる名前を設定します。

        NOTE: セッショントラッキング Cookie の名前を変更すると、Cookie 名がデフォルトの JSESSIONID と等しいと想定する他の層(たとえば、負荷分散フロントエンド)が壊れる可能性があるため、慎重に行う必要があります。

        パラメーター:
        name - 使用する Cookie 名
        例外:
        IllegalStateExceptionSE - この SessionCookieConfig を取得した ServletContext がすでに初期化されている場合
      • getName

        StringSE getName()
        この SessionCookieConfig の取得元である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie に割り当てられる名前を取得します。

        デフォルトでは、 JSESSIONID が Cookie 名として使用されます。

        戻り値:
        setName(java.lang.String) を介して設定された Cookie 名。setName(java.lang.String) が呼び出されなかった場合は null
        関連事項:
        Cookie.getName()
      • setDomain

        void setDomain​(StringSE domain)
        この SessionCookieConfig の取得元である ServletContext で表されるアプリケーションの代わりに作成されたセッショントラッキング Cookie に割り当てられるドメイン名を設定します。
        パラメーター:
        domain - 使用する Cookie ドメイン
        例外:
        IllegalStateExceptionSE - この SessionCookieConfig を取得した ServletContext がすでに初期化されている場合
        関連事項:
        Cookie.setDomain(String)
      • getDomain

        StringSE getDomain()
        この SessionCookieConfig の取得元である ServletContext によって表されるアプリケーションの代わりに作成されたセッショントラッキング Cookie に割り当てられるドメイン名を取得します。
        戻り値:
        setDomain(java.lang.String) を介して設定された Cookie ドメイン。setDomain(java.lang.String) が呼び出されなかった場合は null
        関連事項:
        Cookie.getDomain()
      • setPath

        void setPath​(StringSE path)
        この SessionCookieConfig の取得元である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie に割り当てられるパスを設定します。
        パラメーター:
        path - 使用する Cookie パス
        例外:
        IllegalStateExceptionSE - この SessionCookieConfig を取得した ServletContext がすでに初期化されている場合
        関連事項:
        Cookie.setPath(String)
      • getPath

        StringSE getPath()
        この SessionCookieConfig の取得元である ServletContext で表されるアプリケーションの代わりに作成されたセッショントラッキング Cookie に割り当てられるパスを取得します。

        デフォルトでは、この SessionCookieConfig を取得した ServletContext のコンテキストパスが使用されます。

        戻り値:
        setPath(java.lang.String) を介して設定された Cookie パス、または setPath(java.lang.String) が呼び出されなかった場合は null
        関連事項:
        Cookie.getPath()
      • setComment

        @DeprecatedSE(since="Servlet 6.0",
                    forRemoval=true)
        void setComment​(StringSE comment)
        非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
        これは、RFC 6265 では不要になりました。
        RFC 6265 のサポートの採用により、このメソッドは使用されなくなりました。

        呼び出された場合、このメソッドは効果がありません。

        パラメーター:
        comment - 無視
        例外:
        IllegalStateExceptionSE - この SessionCookieConfig を取得した ServletContext がすでに初期化されている場合
        関連事項:
        Cookie.setComment(String), Cookie.getVersion()
      • getComment

        @DeprecatedSE(since="Servlet 6.0",
                    forRemoval=true)
        StringSE getComment()
        非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
        これは、RFC 6265 では不要になりました。
        RFC 6265 のサポートの採用により、このメソッドは使用されなくなりました。
        戻り値:
        常に null
        関連事項:
        Cookie.getComment()
      • setHttpOnly

        void setHttpOnly​(boolean httpOnly)
        この SessionCookieConfigHttpOnly として取得された ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie をマークまたはマーク解除します。

        クッキーは、それに HttpOnly 属性を追加することにより、HttpOnly としてマークされています。HttpOnly Cookie はクライアント側のスクリプトコードに公開されていないため、特定の種類のクロスサイトスクリプティング攻撃の緩和に役立つ場合があります。

        パラメーター:
        httpOnly - この SessionCookieConfig の取得である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie が HttpOnly としてマークされる場合は true、そうでない場合は false
        例外:
        IllegalStateExceptionSE - この SessionCookieConfig を取得した ServletContext がすでに初期化されている場合
        関連事項:
        Cookie.setHttpOnly(boolean)
      • isHttpOnly

        boolean isHttpOnly()
        この SessionCookieConfig の取得である ServletContext によって表されるアプリケーションの代わりに作成されたセッショントラッキング Cookie が HttpOnly としてマークされるかどうかを確認します。
        戻り値:
        この SessionCookieConfig の取得である ServletContext によって表されるアプリケーションの代わりに作成されたセッショントラッキング Cookie が HttpOnly としてマークされる場合は true、そうでない場合は false
        関連事項:
        Cookie.isHttpOnly()
      • setSecure

        void setSecure​(boolean secure)
        この SessionCookieConfig安全であるとして取得された ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie をマークまたはマーク解除します。

        セッショントラッキング Cookie を secure としてマークする 1 つの使用例は、セッションを開始したリクエストが HTTP 経由で来たとしても、SSL オフロードロードバランサーによって Web コンテナーがフロントエンドであるトポロジをサポートすることです。この場合、クライアントとロードバランサー間のトラフィックは HTTPS を経由しますが、ロードバランサーと Web コンテナー間のトラフィックは HTTP を経由します。

        パラメーター:
        secure - この SessionCookieConfig の取得である ServletContext によって表されるアプリケーションの代わりに作成されたセッショントラッキング Cookie が、対応するセッションを開始したリクエストが HTTPS ではなくプレーン HTTP を使用している場合でもセキュアとしてマークされる場合は true、そうでなければ false 対応するセッションを開始したリクエストも安全だった場合にのみ、 安全とマークされます
        例外:
        IllegalStateExceptionSE - この SessionCookieConfig を取得した ServletContext がすでに初期化されている場合
        関連事項:
        Cookie.setSecure(boolean), ServletRequest.isSecure()
      • isSecure

        boolean isSecure()
        対応するセッションを開始したリクエストが HTTPS ではなくプレーン HTTP を使用している場合でも、この SessionCookieConfig の取得である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie が安全であるとマークされるかどうかを確認します。
        戻り値:
        対応するセッションを開始したリクエストが HTTPS ではなくプレーン HTTP を使用している場合でも、この SessionCookieConfig の取得である ServletContext によって表されるアプリケーションの代わりに作成されたセッショントラッキング Cookie が安全であるとマークされる場合は true、そうでない場合は false 対応するセッションを開始したリクエストも安全だった場合にのみ、 安全とマークされます
        関連事項:
        Cookie.getSecure(), ServletRequest.isSecure()
      • setMaxAge

        void setMaxAge​(int maxAge)
        この SessionCookieConfig の取得元である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie の有効期間(秒単位)を設定します。
        パラメーター:
        maxAge - この SessionCookieConfig の取得元である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie の存続時間(秒単位)。
        例外:
        IllegalStateExceptionSE - この SessionCookieConfig を取得した ServletContext がすでに初期化されている場合
        関連事項:
        Cookie.setMaxAge(int)
      • getMaxAge

        int getMaxAge()
        この SessionCookieConfig の取得元である ServletContext によって表されるアプリケーションのために作成されたセッショントラッキング Cookie の有効期間(秒単位)を取得します。

        デフォルトでは、 -1 が返されます。

        戻り値:
        この SessionCookieConfig の取得元である ServletContext で表されるアプリケーションに代わって作成されたセッショントラッキング Cookie の存続時間(秒単位)、または -1 (デフォルト)
        関連事項:
        Cookie.getMaxAge()
      • setAttribute

        void setAttribute​(StringSE name,
                          StringSE value)
        指定されたセッション Cookie 属性の値を設定します。このメソッドを介して値が設定される場合、属性固有の getter (存在する場合) によって返される値は、このメソッドを介して設定された値と一致する必要があります。
        パラメーター:
        name - 設定する属性の名前。大文字と小文字は区別されません
        value - 属性値
        例外:
        IllegalStateExceptionSE - 関連する ServletContext がすでに初期化されている場合
        IllegalArgumentExceptionSE - 属性名が null であるか、Cookie 名での使用が許可されていない文字が含まれている場合。
        NumberFormatExceptionSE - 属性が数値であることがわかっているが、指定された値を数値に解析できない場合。
        導入:
        Servlet 6.0
      • getAttribute

        StringSE getAttribute​(StringSE name)
        特定のセッション Cookie 属性の値を取得します。このメソッドから返される値は、このクラスの属性固有の getter および setter によって設定および返される値と一致している必要があります。
        パラメーター:
        name - 返される属性の名前、大文字と小文字は区別されません
        戻り値:
        指定された属性の値
        導入:
        Servlet 6.0
      • getAttributes

        MapSE<StringSE,​StringSE> getAttributes()
        この SessionCookieConfig の属性固有の setter (バージョンを除く) を介して設定されたものを含む、すべての属性と値のマップ (キーは大文字と小文字を区別しません) を取得します。
        戻り値:
        バージョンを除く、値への属性の読み取り専用マップ。
        導入:
        Servlet 6.0