Package org.miaixz.bus.core.net.tls
Class SSLContextBuilder
java.lang.Object
org.miaixz.bus.core.net.tls.SSLContextBuilder
- All Implemented Interfaces:
Serializable,Builder<SSLContext>
SSLContext构建器,可以自定义:
- 协议(protocol),默认TLS
KeyManager,默认空TrustManager,默认TrustAnyTrustManager,即信任全部SecureRandom
SSLContext,通过调用SSLContext.getSocketFactory()获取SSLSocketFactory- Since:
- Java 17+
- Author:
- Kimi Liu
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()构建SSLContext需要处理异常static SSLContextcreateSSLContext(String protocol, KeyManager[] keyManagers, TrustManager[] trustManagers) 创建和初始化SSLContextstatic SSLContextcreateSSLContext(String protocol, KeyManager keyManager, TrustManager trustManager) static SSLContext创建SSLContext,信任全部,协议为TLSstatic SSLContextcreateTrustAnySSLContext(String protocol) 创建SSLContext,信任全部static SSLContext获取默认的SSLContextstatic SSLContextstatic SSLSocketFactorynewSslSocketFactory(X509TrustManager x509TrustManager) 创建SSL证书static X509TrustManagerstatic SSLContextBuilderof()创建 SSLContextBuildersetKeyManagers(KeyManager... keyManagers) 设置 JSSE data managerssetProtocol(String protocol) 设置协议。例如TLS等setSecureRandom(SecureRandom secureRandom) 设置 SecureRandomsetTrustManagers(TrustManager... trustManagers) 设置信任信息
-
Constructor Details
-
SSLContextBuilder
public SSLContextBuilder()
-
-
Method Details
-
of
创建 SSLContextBuilder- Returns:
- SSLContextBuilder
-
getDefault
获取默认的SSLContext- Returns:
SSLContext
-
createTrustAnySSLContext
创建SSLContext,信任全部,协议为TLS- Returns:
SSLContext- Throws:
InternalException- 包装 GeneralSecurityException异常
-
createTrustAnySSLContext
创建SSLContext,信任全部- Parameters:
protocol- SSL协议,例如TLS等,null表示默认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工厂
-
newTrustManager
-
getSSLContext
-
setProtocol
设置协议。例如TLS等- Parameters:
protocol- 协议- Returns:
- 自身
-
setTrustManagers
设置信任信息- Parameters:
trustManagers- TrustManager列表- Returns:
- 自身
-
setKeyManagers
设置 JSSE data managers- Parameters:
keyManagers- JSSE data 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异常
-