public class SSLContextBuilder
extends java.lang.Object
SSLContext instances.
Please note: the default Oracle JSSE implementation of SSLContext.init(KeyManager[], TrustManager[], SecureRandom)
accepts multiple key and trust managers, however only only first matching type is ever used.
See for example:
SSLContext.html#init
TODO Specify which Oracle JSSE versions the above has been verified.
| Constructor and Description |
|---|
SSLContextBuilder() |
| Modifier and Type | Method and Description |
|---|---|
javax.net.ssl.SSLContext |
build() |
static SSLContextBuilder |
create() |
protected void |
initSSLContext(javax.net.ssl.SSLContext sslContext,
java.util.Collection<javax.net.ssl.KeyManager> keyManagers,
java.util.Collection<javax.net.ssl.TrustManager> trustManagers,
java.security.SecureRandom secureRandom) |
SSLContextBuilder |
loadKeyMaterial(java.io.File file,
char[] storePassword,
char[] keyPassword) |
SSLContextBuilder |
loadKeyMaterial(java.io.File file,
char[] storePassword,
char[] keyPassword,
PrivateKeyStrategy aliasStrategy) |
SSLContextBuilder |
loadKeyMaterial(java.security.KeyStore keystore,
char[] keyPassword) |
SSLContextBuilder |
loadKeyMaterial(java.security.KeyStore keystore,
char[] keyPassword,
PrivateKeyStrategy aliasStrategy) |
SSLContextBuilder |
loadKeyMaterial(java.net.URL url,
char[] storePassword,
char[] keyPassword) |
SSLContextBuilder |
loadKeyMaterial(java.net.URL url,
char[] storePassword,
char[] keyPassword,
PrivateKeyStrategy aliasStrategy) |
SSLContextBuilder |
loadTrustMaterial(java.io.File file) |
SSLContextBuilder |
loadTrustMaterial(java.io.File file,
char[] storePassword) |
SSLContextBuilder |
loadTrustMaterial(java.io.File file,
char[] storePassword,
TrustStrategy trustStrategy) |
SSLContextBuilder |
loadTrustMaterial(java.security.KeyStore truststore,
TrustStrategy trustStrategy) |
SSLContextBuilder |
loadTrustMaterial(TrustStrategy trustStrategy) |
SSLContextBuilder |
loadTrustMaterial(java.net.URL url,
char[] storePassword) |
SSLContextBuilder |
loadTrustMaterial(java.net.URL url,
char[] storePassword,
TrustStrategy trustStrategy) |
SSLContextBuilder |
setKeyManagerFactoryAlgorithm(java.lang.String keyManagerFactoryAlgorithm)
Sets the key manager factory algorithm name.
|
SSLContextBuilder |
setKeyStoreType(java.lang.String keyStoreType)
Sets the key store type.
|
SSLContextBuilder |
setProtocol(java.lang.String protocol)
Sets the SSLContext protocol algorithm name.
|
SSLContextBuilder |
setProvider(java.security.Provider provider) |
SSLContextBuilder |
setProvider(java.lang.String name) |
SSLContextBuilder |
setSecureRandom(java.security.SecureRandom secureRandom) |
SSLContextBuilder |
setTrustManagerFactoryAlgorithm(java.lang.String trustManagerFactoryAlgorithm)
Sets the trust manager factory algorithm name.
|
java.lang.String |
toString() |
SSLContextBuilder |
useProtocol(java.lang.String protocol)
Deprecated.
Use
setProtocol(String). |
public static SSLContextBuilder create()
@Deprecated public SSLContextBuilder useProtocol(java.lang.String protocol)
setProtocol(String).protocol - the SSLContext protocol algorithm name of the requested protocol. See
the SSLContext section in the Java
Cryptography Architecture Standard Algorithm Name
Documentation for more information.public SSLContextBuilder setProtocol(java.lang.String protocol)
protocol - the SSLContext protocol algorithm name of the requested protocol. See
the SSLContext section in the Java
Cryptography Architecture Standard Algorithm Name
Documentation for more information.public SSLContextBuilder setSecureRandom(java.security.SecureRandom secureRandom)
public SSLContextBuilder setProvider(java.security.Provider provider)
public SSLContextBuilder setProvider(java.lang.String name)
public SSLContextBuilder setKeyStoreType(java.lang.String keyStoreType)
keyStoreType - the SSLkey store type. See
the KeyStore section in the Java
Cryptography Architecture Standard Algorithm Name
Documentation for more information.public SSLContextBuilder setKeyManagerFactoryAlgorithm(java.lang.String keyManagerFactoryAlgorithm)
keyManagerFactoryAlgorithm - the key manager factory algorithm name of the requested protocol. See
the KeyManagerFactory section in the Java
Cryptography Architecture Standard Algorithm Name
Documentation for more information.public SSLContextBuilder setTrustManagerFactoryAlgorithm(java.lang.String trustManagerFactoryAlgorithm)
trustManagerFactoryAlgorithm - the trust manager algorithm name of the requested protocol. See
the TrustManagerFactory section in the Java
Cryptography Architecture Standard Algorithm Name
Documentation for more information.public SSLContextBuilder loadTrustMaterial(java.security.KeyStore truststore, TrustStrategy trustStrategy) throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException
java.security.NoSuchAlgorithmExceptionjava.security.KeyStoreExceptionpublic SSLContextBuilder loadTrustMaterial(TrustStrategy trustStrategy) throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException
java.security.NoSuchAlgorithmExceptionjava.security.KeyStoreExceptionpublic SSLContextBuilder loadTrustMaterial(java.io.File file, char[] storePassword, TrustStrategy trustStrategy) throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException
java.security.NoSuchAlgorithmExceptionjava.security.KeyStoreExceptionjava.security.cert.CertificateExceptionjava.io.IOExceptionpublic SSLContextBuilder loadTrustMaterial(java.io.File file, char[] storePassword) throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException
java.security.NoSuchAlgorithmExceptionjava.security.KeyStoreExceptionjava.security.cert.CertificateExceptionjava.io.IOExceptionpublic SSLContextBuilder loadTrustMaterial(java.io.File file) throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException
java.security.NoSuchAlgorithmExceptionjava.security.KeyStoreExceptionjava.security.cert.CertificateExceptionjava.io.IOExceptionpublic SSLContextBuilder loadTrustMaterial(java.net.URL url, char[] storePassword, TrustStrategy trustStrategy) throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException
java.security.NoSuchAlgorithmExceptionjava.security.KeyStoreExceptionjava.security.cert.CertificateExceptionjava.io.IOExceptionpublic SSLContextBuilder loadTrustMaterial(java.net.URL url, char[] storePassword) throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException
java.security.NoSuchAlgorithmExceptionjava.security.KeyStoreExceptionjava.security.cert.CertificateExceptionjava.io.IOExceptionpublic SSLContextBuilder loadKeyMaterial(java.security.KeyStore keystore, char[] keyPassword, PrivateKeyStrategy aliasStrategy) throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.UnrecoverableKeyException
java.security.NoSuchAlgorithmExceptionjava.security.KeyStoreExceptionjava.security.UnrecoverableKeyExceptionpublic SSLContextBuilder loadKeyMaterial(java.security.KeyStore keystore, char[] keyPassword) throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.UnrecoverableKeyException
java.security.NoSuchAlgorithmExceptionjava.security.KeyStoreExceptionjava.security.UnrecoverableKeyExceptionpublic SSLContextBuilder loadKeyMaterial(java.io.File file, char[] storePassword, char[] keyPassword, PrivateKeyStrategy aliasStrategy) throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.UnrecoverableKeyException, java.security.cert.CertificateException, java.io.IOException
java.security.NoSuchAlgorithmExceptionjava.security.KeyStoreExceptionjava.security.UnrecoverableKeyExceptionjava.security.cert.CertificateExceptionjava.io.IOExceptionpublic SSLContextBuilder loadKeyMaterial(java.io.File file, char[] storePassword, char[] keyPassword) throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.UnrecoverableKeyException, java.security.cert.CertificateException, java.io.IOException
java.security.NoSuchAlgorithmExceptionjava.security.KeyStoreExceptionjava.security.UnrecoverableKeyExceptionjava.security.cert.CertificateExceptionjava.io.IOExceptionpublic SSLContextBuilder loadKeyMaterial(java.net.URL url, char[] storePassword, char[] keyPassword, PrivateKeyStrategy aliasStrategy) throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.UnrecoverableKeyException, java.security.cert.CertificateException, java.io.IOException
java.security.NoSuchAlgorithmExceptionjava.security.KeyStoreExceptionjava.security.UnrecoverableKeyExceptionjava.security.cert.CertificateExceptionjava.io.IOExceptionpublic SSLContextBuilder loadKeyMaterial(java.net.URL url, char[] storePassword, char[] keyPassword) throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.UnrecoverableKeyException, java.security.cert.CertificateException, java.io.IOException
java.security.NoSuchAlgorithmExceptionjava.security.KeyStoreExceptionjava.security.UnrecoverableKeyExceptionjava.security.cert.CertificateExceptionjava.io.IOExceptionprotected void initSSLContext(javax.net.ssl.SSLContext sslContext,
java.util.Collection<javax.net.ssl.KeyManager> keyManagers,
java.util.Collection<javax.net.ssl.TrustManager> trustManagers,
java.security.SecureRandom secureRandom)
throws java.security.KeyManagementException
java.security.KeyManagementExceptionpublic javax.net.ssl.SSLContext build()
throws java.security.NoSuchAlgorithmException,
java.security.KeyManagementException
java.security.NoSuchAlgorithmExceptionjava.security.KeyManagementExceptionpublic java.lang.String toString()
toString in class java.lang.Object