- java.lang.Object
-
- javax.net.ssl.SSLContextSpi
-
public abstract class SSLContextSpi extends Object
此类定义SSLContext类的 ( SPI )。此类中的所有抽象方法必须由希望提供特定SSL上下文实现的每个加密服务提供程序实现。
- 从以下版本开始:
- 1.4
- 另请参见:
-
SSLContext
-
-
构造方法摘要
构造方法 构造器 描述 SSLContextSpi()
-
方法摘要
所有方法 实例方法 抽象方法 具体的方法 变量和类型 方法 描述 protected abstract SSLEngineengineCreateSSLEngine()使用此上下文创建新的SSLEngine。protected abstract SSLEngineengineCreateSSLEngine(String host, int port)使用此上下文创建SSLEngine。protected abstract SSLSessionContextengineGetClientSessionContext()返回此上下文的客户端SSLSessionContext对象。protected SSLParametersengineGetDefaultSSLParameters()返回SSLParameters的副本,指示此SSL上下文的默认设置。protected abstract SSLSessionContextengineGetServerSessionContext()返回此上下文的服务器SSLSessionContext对象。protected abstract SSLServerSocketFactoryengineGetServerSocketFactory()返回此上下文的ServerSocketFactory对象。protected abstract SSLSocketFactoryengineGetSocketFactory()返回此上下文的SocketFactory对象。protected SSLParametersengineGetSupportedSSLParameters()返回SSLParameters的副本,指示此SSL上下文的最大支持设置。protected abstract voidengineInit(KeyManager[] km, TrustManager[] tm, SecureRandom sr)初始化此上下文。
-
-
-
方法详细信息
-
engineInit
protected abstract void engineInit(KeyManager[] km, TrustManager[] tm, SecureRandom sr) throws KeyManagementException
初始化此上下文。- 参数
-
km- 身份验证密钥的来源 -
tm- 对等身份验证信任决策的来源 -
sr- 随机性的来源 - 异常
-
KeyManagementException- 如果此操作失败 - 另请参见:
-
SSLContext.init(KeyManager [], TrustManager [], SecureRandom)
-
engineGetSocketFactory
protected abstract SSLSocketFactory engineGetSocketFactory()
返回此上下文的SocketFactory对象。- 结果
-
SocketFactory对象 - 异常
-
UnsupportedOperationException- 如果基础提供程序未实现该操作。 -
IllegalStateException- 如果SSLContextImpl需要初始化并且尚未调用engineInit() - 另请参见:
-
SSLContext.getSocketFactory()
-
engineGetServerSocketFactory
protected abstract SSLServerSocketFactory engineGetServerSocketFactory()
返回此上下文的ServerSocketFactory对象。- 结果
-
ServerSocketFactory对象 - 异常
-
UnsupportedOperationException- 如果基础提供程序未实现该操作。 -
IllegalStateException- 如果SSLContextImpl需要初始化并且尚未调用engineInit() - 另请参见:
-
SSLContext.getServerSocketFactory()
-
engineCreateSSLEngine
protected abstract SSLEngine engineCreateSSLEngine()
使用此上下文创建新的SSLEngine。使用此工厂方法的应用程序不提供内部会话重用策略的提示。 如果需要提示,则应使用
engineCreateSSLEngine(String, int)。某些密码套件(例如Kerberos)需要远程主机名信息,在这种情况下,不应使用此工厂方法。
- 结果
-
SSLEngine对象 - 异常
-
IllegalStateException- 如果SSLContextImpl需要初始化并且尚未调用engineInit() - 从以下版本开始:
- 1.5
- 另请参见:
-
SSLContext.createSSLEngine()
-
engineCreateSSLEngine
protected abstract SSLEngine engineCreateSSLEngine(String host, int port)
使用此上下文创建SSLEngine。使用此工厂方法的应用程序正在为内部会话重用策略提供提示。
某些密码套件(例如Kerberos)需要远程主机名信息,在这种情况下需要指定peerHost。
- 参数
-
host- 主机的非权威名称 -
port- 非权威端口 - 结果
-
SSLEngine对象 - 异常
-
IllegalStateException- 如果SSLContextImpl需要初始化并且尚未调用engineInit() - 从以下版本开始:
- 1.5
- 另请参见:
-
SSLContext.createSSLEngine(String, int)
-
engineGetServerSessionContext
protected abstract SSLSessionContext engineGetServerSessionContext()
返回此上下文的服务器SSLSessionContext对象。- 结果
-
SSLSessionContext对象 - 另请参见:
-
SSLContext.getServerSessionContext()
-
engineGetClientSessionContext
protected abstract SSLSessionContext engineGetClientSessionContext()
返回此上下文的客户端SSLSessionContext对象。- 结果
-
SSLSessionContext对象 - 另请参见:
-
SSLContext.getClientSessionContext()
-
engineGetDefaultSSLParameters
protected SSLParameters engineGetDefaultSSLParameters()
返回SSLParameters的副本,指示此SSL上下文的默认设置。参数将始终将密码组和协议数组设置为非空值。
默认实现从通过调用此上下文的SocketFactory的SocketFactory.createSocket()方法创建的SSLSocket获取参数。
- 结果
- 具有默认设置的SSLParameters对象的副本
- 异常
-
UnsupportedOperationException- 如果无法获取默认SSL参数。 - 从以下版本开始:
- 1.6
-
engineGetSupportedSSLParameters
protected SSLParameters engineGetSupportedSSLParameters()
返回SSLParameters的副本,指示此SSL上下文的最大支持设置。参数将始终将密码组和协议数组设置为非空值。
默认实现从通过调用此上下文的SocketFactory的SocketFactory.createSocket()方法创建的SSLSocket获取参数。
- 结果
- 具有最大支持设置的SSLParameters对象的副本
- 异常
-
UnsupportedOperationException- 如果无法获取支持的SSL参数。 - 从以下版本开始:
- 1.6
-
-