Class KeyStoreSSLContext
- java.lang.Object
-
- org.apache.pulsar.common.util.keystoretls.KeyStoreSSLContext
-
public class KeyStoreSSLContext extends java.lang.ObjectKeyStoreSSLContext that mainly wrap a SSLContext to provide SSL context for both webservice and netty.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classKeyStoreSSLContext.ModeConnection Mode for TLS.
-
Field Summary
Fields Modifier and Type Field Description static java.security.ProviderBC_PROVIDERstatic java.lang.StringDEFAULT_KEYSTORE_TYPEstatic java.lang.StringDEFAULT_SSL_ENABLED_PROTOCOLSstatic java.lang.StringDEFAULT_SSL_KEYMANGER_ALGORITHMstatic java.lang.StringDEFAULT_SSL_PROTOCOLstatic java.lang.StringDEFAULT_SSL_TRUSTMANAGER_ALGORITHM
-
Constructor Summary
Constructors Constructor Description KeyStoreSSLContext(KeyStoreSSLContext.Mode mode, java.lang.String sslProviderString, java.lang.String keyStoreTypeString, java.lang.String keyStorePath, java.lang.String keyStorePassword, boolean allowInsecureConnection, java.lang.String trustStoreTypeString, java.lang.String trustStorePath, java.lang.String trustStorePassword, boolean requireTrustedClientCertOnConnect, java.util.Set<java.lang.String> ciphers, java.util.Set<java.lang.String> protocols)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static KeyStoreSSLContextcreateClientKeyStoreSslContext(java.lang.String sslProviderString, java.lang.String keyStoreTypeString, java.lang.String keyStorePath, java.lang.String keyStorePassword, boolean allowInsecureConnection, java.lang.String trustStoreTypeString, java.lang.String trustStorePath, java.lang.String trustStorePassword, java.util.Set<java.lang.String> ciphers, java.util.Set<java.lang.String> protocols)static javax.net.ssl.SSLContextcreateClientSslContext(java.lang.String sslProviderString, java.lang.String keyStoreTypeString, java.lang.String keyStorePath, java.lang.String keyStorePassword, boolean allowInsecureConnection, java.lang.String trustStoreTypeString, java.lang.String trustStorePath, java.lang.String trustStorePassword, java.util.Set<java.lang.String> ciphers, java.util.Set<java.lang.String> protocol)static javax.net.ssl.SSLContextcreateClientSslContext(java.lang.String keyStoreTypeString, java.lang.String keyStorePath, java.lang.String keyStorePassword, java.lang.String trustStoreTypeString, java.lang.String trustStorePath, java.lang.String trustStorePassword)static KeyStoreSSLContextcreateServerKeyStoreSslContext(java.lang.String sslProviderString, java.lang.String keyStoreTypeString, java.lang.String keyStorePath, java.lang.String keyStorePassword, boolean allowInsecureConnection, java.lang.String trustStoreTypeString, java.lang.String trustStorePath, java.lang.String trustStorePassword, boolean requireTrustedClientCertOnConnect, java.util.Set<java.lang.String> ciphers, java.util.Set<java.lang.String> protocols)static javax.net.ssl.SSLContextcreateServerSslContext(java.lang.String sslProviderString, java.lang.String keyStoreTypeString, java.lang.String keyStorePath, java.lang.String keyStorePassword, boolean allowInsecureConnection, java.lang.String trustStoreTypeString, java.lang.String trustStorePath, java.lang.String trustStorePassword, boolean requireTrustedClientCertOnConnect)javax.net.ssl.SSLContextcreateSSLContext()javax.net.ssl.SSLEnginecreateSSLEngine()javax.net.ssl.SSLEnginecreateSSLEngine(java.lang.String peerHost, int peerPort)javax.net.ssl.SSLContextgetSslContext()
-
-
-
Field Detail
-
DEFAULT_KEYSTORE_TYPE
public static final java.lang.String DEFAULT_KEYSTORE_TYPE
- See Also:
- Constant Field Values
-
DEFAULT_SSL_PROTOCOL
public static final java.lang.String DEFAULT_SSL_PROTOCOL
- See Also:
- Constant Field Values
-
DEFAULT_SSL_ENABLED_PROTOCOLS
public static final java.lang.String DEFAULT_SSL_ENABLED_PROTOCOLS
- See Also:
- Constant Field Values
-
DEFAULT_SSL_KEYMANGER_ALGORITHM
public static final java.lang.String DEFAULT_SSL_KEYMANGER_ALGORITHM
-
DEFAULT_SSL_TRUSTMANAGER_ALGORITHM
public static final java.lang.String DEFAULT_SSL_TRUSTMANAGER_ALGORITHM
-
BC_PROVIDER
public static final java.security.Provider BC_PROVIDER
-
-
Constructor Detail
-
KeyStoreSSLContext
public KeyStoreSSLContext(KeyStoreSSLContext.Mode mode, java.lang.String sslProviderString, java.lang.String keyStoreTypeString, java.lang.String keyStorePath, java.lang.String keyStorePassword, boolean allowInsecureConnection, java.lang.String trustStoreTypeString, java.lang.String trustStorePath, java.lang.String trustStorePassword, boolean requireTrustedClientCertOnConnect, java.util.Set<java.lang.String> ciphers, java.util.Set<java.lang.String> protocols)
-
-
Method Detail
-
createSSLContext
public javax.net.ssl.SSLContext createSSLContext() throws java.security.GeneralSecurityException, java.io.IOException- Throws:
java.security.GeneralSecurityExceptionjava.io.IOException
-
getSslContext
public javax.net.ssl.SSLContext getSslContext()
-
createSSLEngine
public javax.net.ssl.SSLEngine createSSLEngine()
-
createSSLEngine
public javax.net.ssl.SSLEngine createSSLEngine(java.lang.String peerHost, int peerPort)
-
createClientKeyStoreSslContext
public static KeyStoreSSLContext createClientKeyStoreSslContext(java.lang.String sslProviderString, java.lang.String keyStoreTypeString, java.lang.String keyStorePath, java.lang.String keyStorePassword, boolean allowInsecureConnection, java.lang.String trustStoreTypeString, java.lang.String trustStorePath, java.lang.String trustStorePassword, java.util.Set<java.lang.String> ciphers, java.util.Set<java.lang.String> protocols) throws java.security.GeneralSecurityException, java.io.IOException
- Throws:
java.security.GeneralSecurityExceptionjava.io.IOException
-
createServerKeyStoreSslContext
public static KeyStoreSSLContext createServerKeyStoreSslContext(java.lang.String sslProviderString, java.lang.String keyStoreTypeString, java.lang.String keyStorePath, java.lang.String keyStorePassword, boolean allowInsecureConnection, java.lang.String trustStoreTypeString, java.lang.String trustStorePath, java.lang.String trustStorePassword, boolean requireTrustedClientCertOnConnect, java.util.Set<java.lang.String> ciphers, java.util.Set<java.lang.String> protocols) throws java.security.GeneralSecurityException, java.io.IOException
- Throws:
java.security.GeneralSecurityExceptionjava.io.IOException
-
createServerSslContext
public static javax.net.ssl.SSLContext createServerSslContext(java.lang.String sslProviderString, java.lang.String keyStoreTypeString, java.lang.String keyStorePath, java.lang.String keyStorePassword, boolean allowInsecureConnection, java.lang.String trustStoreTypeString, java.lang.String trustStorePath, java.lang.String trustStorePassword, boolean requireTrustedClientCertOnConnect) throws java.security.GeneralSecurityException, java.io.IOException- Throws:
java.security.GeneralSecurityExceptionjava.io.IOException
-
createClientSslContext
public static javax.net.ssl.SSLContext createClientSslContext(java.lang.String sslProviderString, java.lang.String keyStoreTypeString, java.lang.String keyStorePath, java.lang.String keyStorePassword, boolean allowInsecureConnection, java.lang.String trustStoreTypeString, java.lang.String trustStorePath, java.lang.String trustStorePassword, java.util.Set<java.lang.String> ciphers, java.util.Set<java.lang.String> protocol) throws java.security.GeneralSecurityException, java.io.IOException- Throws:
java.security.GeneralSecurityExceptionjava.io.IOException
-
createClientSslContext
public static javax.net.ssl.SSLContext createClientSslContext(java.lang.String keyStoreTypeString, java.lang.String keyStorePath, java.lang.String keyStorePassword, java.lang.String trustStoreTypeString, java.lang.String trustStorePath, java.lang.String trustStorePassword) throws java.security.GeneralSecurityException, java.io.IOException- Throws:
java.security.GeneralSecurityExceptionjava.io.IOException
-
-