Interface PasswordProvider
- All Superinterfaces:
OracleResourceProvider
A provider of passwords for authentication with Oracle Database.
The
oracle.jdbc.provider.password
connection property identifies the name of a
PasswordProvider implementation. Connection properties under the
namespace of oracle.jdbc.provider.password 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.password=example-provider oracle.jdbc.provider.password.vaultId=9999-8888-7777
ServiceLoader locates implementations of
PasswordProvider declared by a
META-INF/services/oracle.jdbc.spi.PasswordProvider file in the
class path, or by a module-info.java file with a
"provides oracle.jdbc.spi.PasswordProvider" directive in the
module path. Typically, these files are distributed within a jar file that
contains a PasswordProvider implementation.
- Since:
- 23
-
Nested Class Summary
Nested classes/interfaces inherited from interface oracle.jdbc.spi.OracleResourceProvider
OracleResourceProvider.Parameter -
Method Summary
Modifier and TypeMethodDescriptionchar[]getPassword(Map<OracleResourceProvider.Parameter, CharSequence> parameterValues) Returns a password for authentication with Oracle Database.Methods inherited from interface oracle.jdbc.spi.OracleResourceProvider
getName, getParameters
-
Method Details
-
getPassword
Returns a password for authentication with Oracle Database.
The
parameterValuespassed to this method is aMapcomprised as follows:-
The key set is the same as, or a subset of, the
Parameterobjects returned by an invocation ofOracleResourceProvider.getParameters()on this provider. -
If no value is configured for a parameter, then the
Mapcontains the default value of thatParameter, if any. If the parameter has no default value, then the map does not contain an entry for thatParameter. -
The
Mapdoes not contain entries having null values.
parameterValuesMapmay contain aCharSequencehaving a security sensitive value. After this method returns, the caller may wipe the contents of theseCharSequencevalues from memory. Implementations of this method should not retain a reference to theseCharSequenceobjects.- Parameters:
parameterValues- Parameters configured by connection properties . Not null. May be empty.- Returns:
- A password. Not null.
- Throws:
IllegalArgumentException- If the value of a parameter can not be parsed or interpreted.IllegalStateException- If an implementation-specific failure prevents a resource from being provided.
-
The key set is the same as, or a subset of, the
-