モジュール java.base
パッケージ javax.net.ssl

インタフェースSSLSessionContext


  • public interface SSLSessionContext
    SSLSessionContextは、1つのエンティティに関連付けられている一連のSSLSessionを表します。 たとえば、並行して複数のセッションに参加しているサーバーまたはクライアントを、特定のエンティティに関連付けることができます。

    セッション・コンテキストは、一部の環境では使用できません。

    SSLSessionContextパラメータを使用すれば、セッションの格納方法を制御できます。

    • 指定された制限時間が経過すると、セッションを無効にすることができる。
    • コンテキストに格納できるセッションの数を制限できる。
    セッションは、セッションIDに基づいて取り出すことができます。SSLSessionContext内のセッションIDは一覧表示できます。

    導入されたバージョン:
    1.4
    関連項目:
    SSLSession
    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 抽象メソッド 
      修飾子と型 メソッド 説明
      Enumeration<byte[]> getIds()
      このSSLSessionContextの下にグループ化されているすべてのセッションIDの列挙を返します。
      SSLSession getSession​(byte[] sessionId)
      指定されたセッションIDにバインドされているSSLSessionを返します。
      int getSessionCacheSize()
      このSSLSessionContextの下にグループ化されているSSLSessionオブジェクトを格納するために使用されるキャッシュのサイズを返します。
      int getSessionTimeout()
      このSSLSessionContextの下にグループ化されているSSLSessionオブジェクトのタイム・アウト制限を返します。
      void setSessionCacheSize​(int size)
      このSSLSessionContextの下にグループ化されているSSLSessionオブジェクトを格納するために使用されるキャッシュのサイズを設定します。
      void setSessionTimeout​(int seconds)
      このSSLSessionContextの下にグループ化されているSSLSessionオブジェクトのタイム・アウト制限を設定します。
    • メソッドの詳細

      • getSession

        SSLSession getSession​(byte[] sessionId)
        指定されたセッションIDにバインドされているSSLSessionを返します。
        パラメータ:
        sessionId - セッション識別子
        戻り値:
        SSLSession。指定されたセッションIDが有効なSSLSessionを指していない場合はnull。
        例外:
        NullPointerException - sessionIdがnullである場合。
      • getIds

        Enumeration<byte[]> getIds()
        このSSLSessionContextの下にグループ化されているすべてのセッションIDの列挙を返します。
        戻り値:
        すべてのセッションIDの列挙
      • setSessionTimeout

        void setSessionTimeout​(int seconds)
                        throws IllegalArgumentException
        このSSLSessionContextの下にグループ化されているSSLSessionオブジェクトのタイム・アウト制限を設定します。

        タイム・アウト制限がt秒に設定されている場合、作成時刻からt秒経過したセッションはタイム・アウト制限を超えます。 セッションのタイム・アウト制限を超えると、SSLSessionオブジェクトが無効にされ、以降の接続でそのセッションを再開したり、そのセッションにふたたび参加したりすることはできません。 SSLSessionContextのタイム・アウト制限を変更すると、タイム・アウトを超えたセッションの確認がただちに行われます。

        パラメータ:
        seconds - 新しいタイム・アウト制限(秒単位)。ゼロは制限なし。
        例外:
        IllegalArgumentException - 指定されたタイムアウト制限が0より小さい場合。
        関連項目:
        getSessionTimeout()
      • getSessionTimeout

        int getSessionTimeout()
        このSSLSessionContextの下にグループ化されているSSLSessionオブジェクトのタイム・アウト制限を返します。

        タイム・アウト制限がt秒に設定されている場合、作成時刻からt秒経過したセッションはタイム・アウト制限を超えます。 セッションのタイム・アウト制限を超えると、SSLSessionオブジェクトが無効にされ、以降の接続でそのセッションを再開したり、そのセッションにふたたび参加したりすることはできません。 SSLSessionContextのタイム・アウト制限を変更すると、タイム・アウト制限を超えたセッションの確認がただちに行われます。

        戻り値:
        タイム・アウト制限(秒単位)。ゼロは制限なし。
        関連項目:
        setSessionTimeout(int)
      • setSessionCacheSize

        void setSessionCacheSize​(int size)
                          throws IllegalArgumentException
        このSSLSessionContextの下にグループ化されているSSLSessionオブジェクトを格納するために使用されるキャッシュのサイズを設定します。
        パラメータ:
        size - セッション・キャッシュの新しいサイズ制限。ゼロは制限なし。
        例外:
        IllegalArgumentException - 指定されたサイズが0より小さい場合。
        関連項目:
        getSessionCacheSize()
      • getSessionCacheSize

        int getSessionCacheSize()
        このSSLSessionContextの下にグループ化されているSSLSessionオブジェクトを格納するために使用されるキャッシュのサイズを返します。
        戻り値:
        セッション・キャッシュのサイズ。ゼロは制限なし。
        関連項目:
        setSessionCacheSize(int)