- java.lang.Object
-
- javax.net.ssl.SSLContextSpi
-
public abstract class SSLContextSpi extends Object
此类定义SSLContext
类的 ( SPI )。此类中的所有抽象方法必须由希望提供特定SSL上下文实现的每个加密服务提供程序实现。
- 从以下版本开始:
- 1.4
- 另请参见:
-
SSLContext
-
-
构造方法摘要
构造方法 构造器 描述 SSLContextSpi()
-
方法摘要
所有方法 实例方法 抽象方法 具体的方法 变量和类型 方法 描述 protected abstract SSLEngine
engineCreateSSLEngine()
使用此上下文创建新的SSLEngine
。protected abstract SSLEngine
engineCreateSSLEngine(String host, int port)
使用此上下文创建SSLEngine
。protected abstract SSLSessionContext
engineGetClientSessionContext()
返回此上下文的客户端SSLSessionContext
对象。protected SSLParameters
engineGetDefaultSSLParameters()
返回SSLParameters的副本,指示此SSL上下文的默认设置。protected abstract SSLSessionContext
engineGetServerSessionContext()
返回此上下文的服务器SSLSessionContext
对象。protected abstract SSLServerSocketFactory
engineGetServerSocketFactory()
返回此上下文的ServerSocketFactory
对象。protected abstract SSLSocketFactory
engineGetSocketFactory()
返回此上下文的SocketFactory
对象。protected SSLParameters
engineGetSupportedSSLParameters()
返回SSLParameters的副本,指示此SSL上下文的最大支持设置。protected abstract void
engineInit(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
-
-