public abstract class SSLContextSpi
extends Object
java.lang.Object | |
↳ | javax.net.ssl.SSLContextSpi |
该类定义了 SSLContext
类的 ( SPI )。
这个类中的所有抽象方法必须由希望提供特定SSL上下文的实现的每个加密服务提供者来实现。
也可以看看:
Public constructors |
|
---|---|
SSLContextSpi() |
Protected methods |
|
---|---|
abstract SSLEngine |
engineCreateSSLEngine() 使用此上下文创建新的 |
abstract SSLEngine |
engineCreateSSLEngine(String host, int port) 使用此上下文创建一个 |
abstract SSLSessionContext |
engineGetClientSessionContext() 返回此上下文的客户端 |
SSLParameters |
engineGetDefaultSSLParameters() 返回指示此SSL上下文的默认设置的SSLParameters的副本。 |
abstract SSLSessionContext |
engineGetServerSessionContext() 返回此上下文的服务器 |
abstract SSLServerSocketFactory |
engineGetServerSocketFactory() 为此上下文返回一个 |
abstract SSLSocketFactory |
engineGetSocketFactory() 为此上下文返回一个 |
SSLParameters |
engineGetSupportedSSLParameters() 返回SSLParameters的副本,指示此SSL上下文支持的最大设置。 |
abstract void |
engineInit(KeyManager[] km, TrustManager[] tm, SecureRandom sr) 初始化此上下文。 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
SSLEngine engineCreateSSLEngine ()
使用此上下文创建新的 SSLEngine
。
使用这种工厂方法的应用程序没有提供内部会话重用策略的提示。 如果需要提示,应该使用engineCreateSSLEngine(String, int)
。
某些密码套件(如Kerberos)需要远程主机名信息,在这种情况下,不应使用此工厂方法。
Returns | |
---|---|
SSLEngine |
the SSLEngine Object |
Throws | |
---|---|
IllegalStateException |
if the SSLContextImpl requires initialization and the engineInit() has not been called |
也可以看看:
SSLEngine engineCreateSSLEngine (String host, int port)
使用此上下文创建一个 SSLEngine
。
使用此工厂方法的应用程序为内部会话重用策略提供了提示。
某些密码套件(如Kerberos)需要远程主机名信息,在这种情况下,需要指定peerHost。
Parameters | |
---|---|
host |
String : the non-authoritative name of the host |
port |
int : the non-authoritative port |
Returns | |
---|---|
SSLEngine |
the SSLEngine Object |
Throws | |
---|---|
IllegalStateException |
if the SSLContextImpl requires initialization and the engineInit() has not been called |
也可以看看:
SSLSessionContext engineGetClientSessionContext ()
返回此上下文的客户端 SSLSessionContext
对象。
Returns | |
---|---|
SSLSessionContext |
the SSLSessionContext object |
也可以看看:
SSLParameters engineGetDefaultSSLParameters ()
返回指示此SSL上下文的默认设置的SSLParameters的副本。
参数将始终将密码套件和协议数组设置为非空值。
默认实现从通过调用此上下文的SocketFactory的 SocketFactory.createSocket()方法创建的SSLSocket获取参数。
Returns | |
---|---|
SSLParameters |
a copy of the SSLParameters object with the default settings |
Throws | |
---|---|
UnsupportedOperationException |
if the default SSL parameters could not be obtained. |
SSLSessionContext engineGetServerSessionContext ()
返回此上下文的服务器 SSLSessionContext
对象。
Returns | |
---|---|
SSLSessionContext |
the SSLSessionContext object |
也可以看看:
SSLServerSocketFactory engineGetServerSocketFactory ()
为此上下文返回一个 ServerSocketFactory
对象。
Returns | |
---|---|
SSLServerSocketFactory |
the ServerSocketFactory object |
Throws | |
---|---|
IllegalStateException |
if the SSLContextImpl requires initialization and the engineInit() has not been called |
也可以看看:
SSLSocketFactory engineGetSocketFactory ()
为此上下文返回一个 SocketFactory
对象。
Returns | |
---|---|
SSLSocketFactory |
the SocketFactory object |
Throws | |
---|---|
IllegalStateException |
if the SSLContextImpl requires initialization and the engineInit() has not been called |
也可以看看:
SSLParameters engineGetSupportedSSLParameters ()
返回SSLParameters的副本,指示此SSL上下文支持的最大设置。
参数将始终将密码套件和协议数组设置为非空值。
默认实现从通过调用此上下文的SocketFactory的 SocketFactory.createSocket()方法创建的SSLSocket获取参数。
Returns | |
---|---|
SSLParameters |
a copy of the SSLParameters object with the maximum supported settings |
Throws | |
---|---|
UnsupportedOperationException |
if the supported SSL parameters could not be obtained. |
void engineInit (KeyManager[] km, TrustManager[] tm, SecureRandom sr)
初始化此上下文。
Parameters | |
---|---|
km |
KeyManager : the sources of authentication keys |
tm |
TrustManager : the sources of peer authentication trust decisions |
sr |
SecureRandom : the source of randomness |
Throws | |
---|---|
KeyManagementException |
if this operation fails |