クラスSSLContextSpi

java.lang.Object
javax.net.ssl.SSLContextSpi

public abstract class SSLContextSpi extends Object
このクラスは、SSLContextクラスのサービス・プロバイダ・インタフェース (SPI)を定義します。

特定のSSLコンテキストの実装を提供する各暗号サービス・プロバイダは、このクラスのすべての抽象メソッドを実装する必要があります。

導入されたバージョン:
1.4
関連項目:
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    サブクラスが呼び出すためのコンストラクタ。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    protected abstract SSLEngine
    このコンテキストを使用して、新しいSSLEngineを作成します。
    protected abstract SSLEngine
    engineCreateSSLEngine(String host, int port)
    このコンテキストを使用するSSLEngineを作成します。
    protected abstract SSLSessionContext
    このコンテキストのSSLSessionContextクライアント・オブジェクトを返します。
    protected SSLParameters
    このSSLコンテキストのデフォルト設定を示すSSLParametersのコピーを返します。
    protected abstract SSLSessionContext
    このコンテキストのSSLSessionContextサーバー・オブジェクトを返します。
    protected abstract SSLServerSocketFactory
    このコンテキストのServerSocketFactoryオブジェクトを返します。
    protected abstract SSLSocketFactory
    このコンテキストのSocketFactoryオブジェクトを返します。
    protected SSLParameters
    このSSLコンテキストでサポートされる最大の設定を示すSSLParametersのコピーを返します。
    protected abstract void
    このコンテキストを初期化します。

    クラスオブジェクトで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected Object
    このオブジェクトのコピーを作成して、返します。
    boolean
    このオブジェクトと他のオブジェクトが等しいかどうかを示します。
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    int
    このオブジェクトに対するハッシュ・コード値を返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    オブジェクトの文字列表現を返します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • コンストラクタの詳細

    • SSLContextSpi

      public SSLContextSpi()
      サブクラスが呼び出すためのコンストラクタ。
  • メソッドの詳細

    • engineInit

      protected abstract void engineInit(KeyManager[] km, TrustManager[] tm, SecureRandom sr) throws KeyManagementException
      このコンテキストを初期化します。
      パラメータ:
      km - 認証キーのソース
      tm - ピア認証の信頼を判断するソース
      sr - 乱数発生の元
      スロー:
      KeyManagementException - この操作が失敗した場合
      関連項目:
    • engineGetSocketFactory

      protected abstract SSLSocketFactory engineGetSocketFactory()
      このコンテキストのSocketFactoryオブジェクトを返します。
      戻り値:
      SocketFactoryオブジェクト
      スロー:
      UnsupportedOperationException - ベースとなるプロバイダがこの操作を実装していない場合。
      IllegalStateException - SSLContextImplに初期化が必要であり、engineInit()が呼び出されていない場合
      関連項目:
    • engineGetServerSocketFactory

      protected abstract SSLServerSocketFactory engineGetServerSocketFactory()
      このコンテキストのServerSocketFactoryオブジェクトを返します。
      戻り値:
      ServerSocketFactoryオブジェクト
      スロー:
      UnsupportedOperationException - ベースとなるプロバイダがこの操作を実装していない場合。
      IllegalStateException - SSLContextImplに初期化が必要であり、engineInit()が呼び出されていない場合
      関連項目:
    • engineCreateSSLEngine

      protected abstract SSLEngine engineCreateSSLEngine()
      このコンテキストを使用して、新しいSSLEngineを作成します。

      このファクトリ・メソッドを使用しているアプリケーションは、内部セッションの再利用に関するヒントを提供しません。 ヒントが必要な場合は、代わりにengineCreateSSLEngine(String, int)を使用するようにしてください。

      Kerberosなど、リモート・ホスト名の情報を必要とする暗号化方式群もあります。この場合は、このファクトリ・メソッドを使用しないでください。

      実装上のノート:
      返されるSSLEngineが(D)TLS接続にデフォルトでクライアントまたはサーバー・モードを使用する場合、プロバイダ固有です。 JDK SunJSSEプロバイダの実装では、デフォルトでサーバー・モードが使用されます。 ただし、SSLEngineの他のメソッドを呼び出す前に、SSLEngine.setUseClientMode()をコールして、常に目的のモードを明示的に設定することをお薦めします。
      戻り値:
      SSLEngineオブジェクト
      スロー:
      IllegalStateException - SSLContextImplに初期化が必要であり、engineInit()が呼び出されていない場合
      導入されたバージョン:
      1.5
      関連項目:
    • engineCreateSSLEngine

      protected abstract SSLEngine engineCreateSSLEngine(String host, int port)
      このコンテキストを使用するSSLEngineを作成します。

      このファクトリ・メソッドを使用しているアプリケーションは、内部セッションの再利用に関するヒントを提供します。

      Kerberosなど、リモート・ホスト名の情報を必要とする暗号化方式群もあります。この場合は、peerHostを指定する必要があります。

      実装上のノート:
      返されるSSLEngineが(D)TLS接続にデフォルトでクライアントまたはサーバー・モードを使用する場合、プロバイダ固有です。 JDK SunJSSEプロバイダの実装では、デフォルトでサーバー・モードが使用されます。 ただし、SSLEngineの他のメソッドを呼び出す前に、SSLEngine.setUseClientMode()をコールして、常に目的のモードを明示的に設定することをお薦めします。
      パラメータ:
      host - ホストの権限のない名前
      port - 権限のないポート
      戻り値:
      SSLEngineオブジェクト
      スロー:
      IllegalStateException - SSLContextImplに初期化が必要であり、engineInit()が呼び出されていない場合
      導入されたバージョン:
      1.5
      関連項目:
    • engineGetServerSessionContext

      protected abstract SSLSessionContext engineGetServerSessionContext()
      このコンテキストのSSLSessionContextサーバー・オブジェクトを返します。
      戻り値:
      SSLSessionContextオブジェクト
      関連項目:
    • engineGetClientSessionContext

      protected abstract SSLSessionContext engineGetClientSessionContext()
      このコンテキストのSSLSessionContextクライアント・オブジェクトを返します。
      戻り値:
      SSLSessionContextオブジェクト
      関連項目:
    • engineGetDefaultSSLParameters

      protected SSLParameters engineGetDefaultSSLParameters()
      このSSLコンテキストのデフォルト設定を示すSSLParametersのコピーを返します。

      パラメータは、null値以外に設定された暗号化方式群とプロトコル配列を常に持ちます。

      デフォルトの実装では、このコンテキストのSocketFactoryのSocketFactory.createSocket()メソッドを呼び出すことによって作成されたSSLSocketからパラメータを取得します。

      戻り値:
      デフォルト設定を持つSSLParametersオブジェクトのコピー
      スロー:
      UnsupportedOperationException - デフォルトのSSLパラメータを取得できなかった場合。
      導入されたバージョン:
      1.6
    • engineGetSupportedSSLParameters

      protected SSLParameters engineGetSupportedSSLParameters()
      このSSLコンテキストでサポートされる最大の設定を示すSSLParametersのコピーを返します。

      パラメータは、null値以外に設定された暗号化方式群とプロトコル配列を常に持ちます。

      デフォルトの実装では、このコンテキストのSocketFactoryのSocketFactory.createSocket()メソッドを呼び出すことによって作成されたSSLSocketからパラメータを取得します。

      戻り値:
      サポートされる最大の設定を持つSSLParametersオブジェクトのコピー
      スロー:
      UnsupportedOperationException - サポートされるSSLパラメータを取得できなかった場合。
      導入されたバージョン:
      1.6