Interface UsernameProvider
-
- All Superinterfaces:
OracleResourceProvider
public interface UsernameProvider extends OracleResourceProvider
A provider of usernames for authentication with Oracle Database.
The oracle.jdbc.provider.username connection property identifies the name of a
UsernameProviderimplementation. Connection properties under the namespace oforacle.jdbc.provider.usernameconfigure 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.username=example-provider oracle.jdbc.provider.username.vaultId=9999-8888-7777
ServiceLoaderlocates implementations ofUsernameProviderdeclared by aMETA-INF/services/oracle.jdbc.spi.UsernameProviderfile in the class path, or by amodule-info.javafile with a "provides oracle.jdbc.spi.UsernameProvider" directive in the module path. Typically, these files are distributed within a jar file that contains aUsernameProviderimplementation.- Since:
- 23
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface oracle.jdbc.spi.OracleResourceProvider
OracleResourceProvider.Parameter
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.StringgetUsername(java.util.Map<OracleResourceProvider.Parameter,java.lang.CharSequence> parameterValues)Returns a username for authentication with Oracle Database.-
Methods inherited from interface oracle.jdbc.spi.OracleResourceProvider
getName, getParameters
-
-
-
-
Method Detail
-
getUsername
java.lang.String getUsername(java.util.Map<OracleResourceProvider.Parameter,java.lang.CharSequence> parameterValues)
Returns a username 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 username. Not null.
- Throws:
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.
-
The key set is the same as, or a subset of, the
-
-