Package org.aoju.bus.core.net.tls
Class SSLContextBuilder
java.lang.Object
org.aoju.bus.core.net.tls.SSLContextBuilder
- All Implemented Interfaces:
Serializable,Builder<SSLContext>
SSLContext构建器,可以自定义:
- 协议(protocol),默认TLS
KeyManager,默认空TrustManager,默认DefaultTrustManager,即信任全部SecureRandom
构建后可获得SSLContext,通过调用SSLContext.getSocketFactory()获取SSLSocketFactory
- Since:
- Java 17+
- Author:
- Kimi Liu
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.aoju.bus.core.builder.Builder
Builder.HashKey -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()构建SSLContext需要处理异常static SSLContextcreateSSLContext(String protocol) 创建SSLContext,默认新人全部static SSLContextcreateSSLContext(String protocol, KeyManager[] keyManagers, TrustManager[] trustManagers) 创建和初始化SSLContextstatic SSLContextcreateSSLContext(String protocol, KeyManager keyManager, TrustManager trustManager) static SSLContextstatic SSLSocketFactorynewSslSocketFactory(X509TrustManager x509TrustManager) 创建SSL证书static X509TrustManagerstatic SSLContextBuilderof()创建 SSLContextBuildersetKeyManagers(KeyManager... keyManagers) 设置 JSSE key managerssetProtocol(String protocol) 设置协议。setSecureRandom(SecureRandom secureRandom) 设置 SecureRandomsetTrustManagers(TrustManager... trustManagers) 设置信任信息
-
Constructor Details
-
SSLContextBuilder
public SSLContextBuilder()
-
-
Method Details
-
of
-
createSSLContext
创建SSLContext,默认新人全部- Parameters:
protocol- SSL协议,例如TLS等- Returns:
SSLContext- Throws:
InternalException- 包装 GeneralSecurityException异常
-
createSSLContext
public static SSLContext createSSLContext(String protocol, KeyManager keyManager, TrustManager trustManager) throws InternalException - Parameters:
protocol- SSL协议,例如TLS等keyManager- 密钥管理器,null表示无trustManager- 信任管理器,null表示无- Returns:
SSLContext- Throws:
InternalException- 包装 GeneralSecurityException异常
-
createSSLContext
public static SSLContext createSSLContext(String protocol, KeyManager[] keyManagers, TrustManager[] trustManagers) throws InternalException 创建和初始化SSLContext- Parameters:
protocol- SSL协议,例如TLS等keyManagers- 密钥管理器,null表示无trustManagers- 信任管理器,null表示无- Returns:
SSLContext- Throws:
InternalException- 包装 GeneralSecurityException异常
-
newSslSocketFactory
创建SSL证书- Parameters:
x509TrustManager- 证书信息- Returns:
- SSLSocketFactory ssl socket工厂
-
getSSLContext
-
newTrustManager
-
setProtocol
设置协议。例如TLS等- Parameters:
protocol- 协议- Returns:
- 自身
-
setTrustManagers
设置信任信息- Parameters:
trustManagers- TrustManager列表- Returns:
- 自身
-
setKeyManagers
设置 JSSE key managers- Parameters:
keyManagers- JSSE key managers- Returns:
- 自身
-
setSecureRandom
设置 SecureRandom- Parameters:
secureRandom- SecureRandom- Returns:
- 自己
-
build
- Specified by:
buildin interfaceBuilder<SSLContext>- Returns:
SSLContext
-
buildChecked
构建SSLContext需要处理异常- Returns:
SSLContext- Throws:
NoSuchAlgorithmException- 无此算法异常KeyManagementException- 密钥管理异常
-
buildQuietly
- Returns:
SSLContext- Throws:
InternalException- 包装 GeneralSecurityException异常
-