public final class SslContextClientBuilder extends Object implements Supplier<SSLContext>
The class that builds SSLContext
for the client from keystore, truststore. Provides a cached
Supplier
from the built or user provided SSLContext
.
The class is used internally by JerseyClientBuilder
, or it can be used by connectors supporting setting
the SSLContext
per request.
Constructor and Description |
---|
SslContextClientBuilder() |
Modifier and Type | Method and Description |
---|---|
SSLContext |
build()
Build SSLContext from the Builder.
|
protected SslContextClientBuilder |
defaultSslContextProvider(DefaultSslContextProvider defaultSslContextProvider)
Set the default SSL context provider.
|
SSLContext |
get()
Supply SSLContext from this builder.
|
boolean |
isDefaultSslContext()
Get information about used
SSLContext . |
SslContextClientBuilder |
keyStore(KeyStore keyStore,
char[] password)
Set the client-side key store.
|
SslContextClientBuilder |
keyStore(KeyStore keyStore,
String password)
Set the client-side key store.
|
SslContextClientBuilder |
sslContext(SSLContext sslContext)
Set the SSL context that will be used when creating secured transport connections
to server endpoints from
web targets created by the client
instance that is using this SSL context. |
SslContextClientBuilder |
trustStore(KeyStore trustStore)
Set the client-side trust store.
|
public SslContextClientBuilder sslContext(SSLContext sslContext)
web targets
created by the client
instance that is using this SSL context. The SSL context is expected to have all the
security infrastructure initialized, including the key and trust managers.
Setting a SSL context instance resets any key store
or trust store
values previously
specified.
sslContext
- secure socket protocol implementation which acts as a factory
for secure socket factories or SSL engines
. Must not be null
.NullPointerException
- in case the sslContext
parameter is null
.keyStore(java.security.KeyStore, char[])
,
keyStore(java.security.KeyStore, String)
,
trustStore(java.security.KeyStore)
public SslContextClientBuilder keyStore(KeyStore keyStore, char[] password)
Setting a key store instance resets any SSL context instance
value previously specified.
Note that for improved security of working with password data and avoid storing passwords in Java string
objects, the keyStore(java.security.KeyStore, char[])
version of the method can be utilized.
Also note that a custom key store is only required if you want to enable a custom setup of a 2-way SSL
connections (client certificate authentication).
keyStore
- client-side key store. Must not be null
.password
- client key password. Must not be null
.NullPointerException
- in case any of the supplied parameters is null
.sslContext
,
keyStore(java.security.KeyStore, char[])
,
trustStore(java.security.KeyStore)
public SslContextClientBuilder trustStore(KeyStore trustStore)
Setting a trust store instance resets any SSL context instance
value previously specified.
In case a custom trust store or custom SSL context is not specified, the trust management will be configured to use the default Java runtime settings.
trustStore
- client-side trust store. Must not be null
.NullPointerException
- in case the supplied trust store parameter is null
.sslContext
,
keyStore(java.security.KeyStore, char[])
,
keyStore(java.security.KeyStore, String)
public SslContextClientBuilder keyStore(KeyStore keyStore, String password)
Setting a key store instance resets any SSL context instance
value previously specified.
Note that for improved security of working with password data and avoid storing passwords in Java string
objects, the keyStore(java.security.KeyStore, char[])
version of the method can be utilized.
Also note that a custom key store is only required if you want to enable a custom setup of a 2-way SSL
connections (client certificate authentication).
keyStore
- client-side key store. Must not be null
.password
- client key password. Must not be null
.NullPointerException
- in case any of the supplied parameters is null
.sslContext
,
keyStore(java.security.KeyStore, char[])
,
trustStore(java.security.KeyStore)
public boolean isDefaultSslContext()
SSLContext
.true
when used SSLContext
is acquired from SslConfigurator.getDefaultContext()
,
false
otherwise.public SSLContext get()
get
in interface Supplier<SSLContext>
SSLContext
public SSLContext build()
SSLContext
protected SslContextClientBuilder defaultSslContextProvider(DefaultSslContextProvider defaultSslContextProvider)
defaultSslContextProvider
- the default SSL context provider.Copyright © 2007-2023, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.