public class JdkSslContext extends SslContext
SslContext
。
Constructor and Description |
---|
JdkSslContext(javax.net.ssl.SSLContext sslContext, boolean isClient, ClientAuth clientAuth)
创建一个新 JdkSslContext 从预配置SSLContext 。
|
JdkSslContext(javax.net.ssl.SSLContext sslContext, boolean isClient, java.lang.Iterable<java.lang.String> ciphers, CipherSuiteFilter cipherFilter, ApplicationProtocolConfig apn, ClientAuth clientAuth)
创建一个新 JdkSslContext 从预配置SSLContext 。
|
Modifier and Type | Method and Description |
---|---|
JdkApplicationProtocolNegotiator |
applicationProtocolNegotiator()
返回负责协商TLS NPN / ALPN扩展的应用层协议的对象。
|
protected static javax.net.ssl.KeyManagerFactory |
buildKeyManagerFactory(java.io.File certChainFile, java.io.File keyFile, java.lang.String keyPassword, javax.net.ssl.KeyManagerFactory kmf)
已过时。
将被删除。
|
protected static javax.net.ssl.KeyManagerFactory |
buildKeyManagerFactory(java.io.File certChainFile, java.lang.String keyAlgorithm, java.io.File keyFile, java.lang.String keyPassword, javax.net.ssl.KeyManagerFactory kmf)
已过时。
将被删除。
|
java.util.List<java.lang.String> |
cipherSuites()
按优先顺序返回启用的密码套件列表。
|
javax.net.ssl.SSLContext |
context()
返回此上下文拥有的JDK
SSLContext 对象。
|
boolean |
isClient()
当且仅当此上下文用于客户端时才返回
true 。
|
javax.net.ssl.SSLEngine |
newEngine(ByteBufAllocator alloc)
创建一个新的
SSLEngine 。
|
javax.net.ssl.SSLEngine |
newEngine(ByteBufAllocator alloc, java.lang.String peerHost, int peerPort)
使用咨询对等信息创建新的
SSLEngine 。
|
long |
sessionCacheSize()
返回用于存储SSL会话对象的缓存大小。
|
javax.net.ssl.SSLSessionContext |
sessionContext()
返回此上下文所持有的JDK
SSLSessionContext 对象。
|
long |
sessionTimeout()
以秒为单位返回缓存的SSL会话对象的超时时间。
|
buildTrustManagerFactory, defaultClientProvider, defaultServerProvider, generateKeySpec, isServer, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newHandler, newHandler, newHandler, newHandler, newServerContext, newServerContext, newServerContext, newServerContext, newServerContext, newServerContext, newServerContext, newServerContext, newServerContext, newServerContext, nextProtocols
public JdkSslContext(javax.net.ssl.SSLContext sslContext, boolean isClient, ClientAuth clientAuth)
JdkSslContext
从预配置SSLContext
。
sslContext
- 使用
SSLContext
。
isClient
-
true
如果此上下文应为客户端使用创建
SSLEngine
。
clientAuth
- 使用ClientAuth
。
这仅在false
时才会使用。
public JdkSslContext(javax.net.ssl.SSLContext sslContext, boolean isClient, java.lang.Iterable<java.lang.String> ciphers, CipherSuiteFilter cipherFilter, ApplicationProtocolConfig apn, ClientAuth clientAuth)
JdkSslContext
从预配置SSLContext
。
sslContext
- 使用
SSLContext
。
isClient
-
true
如果此上下文应为客户端使用创建
SSLEngine
。
ciphers
- 要使用的密码或
null
如果应该使用标准。
cipherFilter
- 要使用的过滤器。
apn
- 使用ApplicationProtocolConfig
。
clientAuth
- 使用ClientAuth
。
这仅在false
时才会使用。
public final javax.net.ssl.SSLContext context()
SSLContext
对象。
public final boolean isClient()
SslContext
true
。
isClient
在课堂上
SslContext
public final javax.net.ssl.SSLSessionContext sessionContext()
SSLSessionContext
对象。
sessionContext
在课堂上
SslContext
public final java.util.List<java.lang.String> cipherSuites()
SslContext
cipherSuites
在课堂上
SslContext
public final long sessionCacheSize()
SslContext
sessionCacheSize
在课堂上
SslContext
public final long sessionTimeout()
SslContext
sessionTimeout
在课堂上
SslContext
public final javax.net.ssl.SSLEngine newEngine(ByteBufAllocator alloc)
SslContext
SSLEngine
。
如果使用SslProvider.OPENSSL_REFCNT
,则必须释放该对象。 做到这一点的一种方法是将其封装在SslHandler
中并将其插入管道中。 见SslContext.newHandler(ByteBufAllocator)
。
newEngine
在课堂上
SslContext
SSLEngine
public final javax.net.ssl.SSLEngine newEngine(ByteBufAllocator alloc, java.lang.String peerHost, int peerPort)
SslContext
SSLEngine
。
如果使用SslProvider.OPENSSL_REFCNT
,则必须释放该对象。 做到这一点的一种方法是将SslHandler
换行并将其插入管道中。 见SslContext.newHandler(ByteBufAllocator, String, int)
。
newEngine
在课堂上
SslContext
peerHost
- 主机的非权威名称
peerPort
- 非权威端口
SSLEngine
public final JdkApplicationProtocolNegotiator applicationProtocolNegotiator()
SslContext
applicationProtocolNegotiator
在课堂上
SslContext
@Deprecated protected static javax.net.ssl.KeyManagerFactory buildKeyManagerFactory(java.io.File certChainFile, java.io.File keyFile, java.lang.String keyPassword, javax.net.ssl.KeyManagerFactory kmf) throws java.security.UnrecoverableKeyException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, javax.crypto.NoSuchPaddingException, java.security.spec.InvalidKeySpecException, java.security.InvalidAlgorithmParameterException, java.security.cert.CertificateException, java.security.KeyException, java.io.IOException
KeyManagerFactory
。
certChainFile
- PEM格式的X.509证书链文件
keyFile
- PEM格式的PKCS#8私钥文件
keyPassword
-的的密码keyFile
。
null
如果没有密码保护。
kmf
- 将使用的现有
KeyManagerFactory
如果不是
null
KeyManagerFactory
基于密钥文件,密钥文件密码和证书链。
java.security.UnrecoverableKeyException
java.security.KeyStoreException
java.security.NoSuchAlgorithmException
javax.crypto.NoSuchPaddingException
java.security.spec.InvalidKeySpecException
java.security.InvalidAlgorithmParameterException
java.security.cert.CertificateException
java.security.KeyException
java.io.IOException
@Deprecated protected static javax.net.ssl.KeyManagerFactory buildKeyManagerFactory(java.io.File certChainFile, java.lang.String keyAlgorithm, java.io.File keyFile, java.lang.String keyPassword, javax.net.ssl.KeyManagerFactory kmf) throws java.security.KeyStoreException, java.security.NoSuchAlgorithmException, javax.crypto.NoSuchPaddingException, java.security.spec.InvalidKeySpecException, java.security.InvalidAlgorithmParameterException, java.io.IOException, java.security.cert.CertificateException, java.security.KeyException, java.security.UnrecoverableKeyException
KeyManagerFactory
。
certChainFile
- PEM格式的X.509证书链文件
keyAlgorithm
- 请求算法的标准名称。
有关标准算法名称的信息,请参阅“Java安全套接字扩展参考指南”。
keyFile
- PEM格式的PKCS#8私钥文件
keyPassword
-的的密码keyFile
。
null
如果它没有密码保护。
kmf
- 现有的
KeyManagerFactory
即使不是
null
KeyManagerFactory
基于密钥算法,密钥文件,密钥文件密码和证书链。
java.security.KeyStoreException
java.security.NoSuchAlgorithmException
javax.crypto.NoSuchPaddingException
java.security.spec.InvalidKeySpecException
java.security.InvalidAlgorithmParameterException
java.io.IOException
java.security.cert.CertificateException
java.security.KeyException
java.security.UnrecoverableKeyException
Copyright © 2008–2018 The Netty Project. All rights reserved.