If an application requires its own authentication scheme, then it can implement this interface and register as the authentication scheme that Derby should call upon connection requests to the system. See the dcoumentation for the property derby.authentication.provider
A typical example would be to implement user authentication using LDAP, Sun NIS+, or even Windows User Domain, using this interface.
Note
Additional connection attributes can be specified on the database connection URL and/or Properties object on jdbc connection. Values for these attributes can be retrieved at runtime by the (specialized) authentication scheme to further help user authentication, if one needs additional info other than user, password, and database name.
| Modifier and Type | Method and Description |
|---|---|
| public boolean | Returns: false if the connection request should be denied, true if the connection request should proceed. If false is returned the connection attempt will receive a SQLException with SQL State 08004.The user's name for the connection request. May be
null. The user name is passed in as is from the
connection request.
Derby will pass in the user name that is set on
connection request as is, without changing the
casing and without removing the delimiter quotes
if any. userName, String The user's password for the connection request.
May be null. userPassword, String The database that the user wants to connect to.
Will be null if this is system level authentication. databaseName, Properties A Properties object that contains additional
connection information, that can help to
authenticate the user. It has properties of the
'info' object passed as part of
DriverManager.getConnection() call and any
attributes set on the JDBC URL. info)Authenticate a user's credentials. |
| authenticateUser | back to summary |
|---|---|
| public boolean authenticateUser(String userName, String userPassword, String databaseName, Properties info) throws SQLException Authenticate a user's credentials.
| |