Class KeyStoreSSLContext


  • public class KeyStoreSSLContext
    extends java.lang.Object
    KeyStoreSSLContext 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 class  KeyStoreSSLContext.Mode
      Connection Mode for TLS.
    • 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 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)  
      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)  
      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)  
      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)  
      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)  
      javax.net.ssl.SSLContext createSSLContext()  
      javax.net.ssl.SSLEngine createSSLEngine()  
      javax.net.ssl.SSLEngine createSSLEngine​(java.lang.String peerHost, int peerPort)  
      javax.net.ssl.SSLContext getSslContext()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 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.GeneralSecurityException
        java.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.GeneralSecurityException
        java.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.GeneralSecurityException
        java.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.GeneralSecurityException
        java.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.GeneralSecurityException
        java.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.GeneralSecurityException
        java.io.IOException