public interface TlsConfigurationProvider extends OracleResourceProvider
A provider of keys and/or certificates for TLS communication with Oracle Database.
The
oracle.jdbc.provider.tlsConfiguration
connection property identifies the name of a
TlsConfigurationProvider
implementation. Connection properties under the
namespace of oracle.jdbc.provider.tlsConfiguration
configure any
parameters that an implementation defines. To illustrate, the connection
properties below would identify a provider named "example-provider", and
configure a parameter named "vaultId":
oracle.jdbc.provider.tlsConfiguration=example-provider oracle.jdbc.provider.tlsConfiguration.vaultId=9999-8888-7777
ServiceLoader
locates implementations of
TlsConfigurationProvider
declared by a
META-INF/services/oracle.jdbc.spi.TlsConfigurationProvider
file in
the class path, or by a module-info.java
file with a
"provides oracle.jdbc.spi.TlsConfigurationProvider
" directive in
the module path. Typically, these files are distributed within a jar file
that contains a TlsConfigurationProvider
implementation.
OracleResourceProvider.Parameter
Modifier and Type | Method and Description |
---|---|
javax.net.ssl.SSLContext |
getSSLContext(java.util.Map<OracleResourceProvider.Parameter,java.lang.CharSequence> parameterValues)
Returns an
SSLContext that has been
initialized
with keys and/or certificates for TLS communication with Oracle Database. |
getName, getParameters
javax.net.ssl.SSLContext getSSLContext(java.util.Map<OracleResourceProvider.Parameter,java.lang.CharSequence> parameterValues)
Returns an SSLContext
that has been
initialized
with keys and/or certificates for TLS communication with Oracle Database.
The parameterValues
passed to this method is a Map
comprised as follows:
Parameter
objects returned by an invocation of
OracleResourceProvider.getParameters()
on this provider.
Map
contains the default value of that
Parameter
, if any. If the parameter has no default value, then the
map does not contain an entry for that Parameter
.
Map
does not contain entries having null values.
parameterValues
Map
may contain a CharSequence
having a
security sensitive value. After this
method returns, the caller may wipe the contents of these
CharSequence
values from memory. Implementations of this method
should not retain a reference to these CharSequence
objects.
parameterValues
- Parameters
configured by connection properties
. Not null. May be empty.SSLContext
. Not null.java.lang.IllegalArgumentException
- If the value of a parameter can not be
parsed or interpreted.java.lang.IllegalStateException
- If an implementation-specific failure
prevents a resource from being provided.