LDAP with caching DNs in derby.user.userName as database property does not work
-------------------------------------------------------------------------------
Key: DERBY-1026
URL: http://issues.apache.org/jira/browse/DERBY-1026
Project: Derby
Type: Bug
Components: Security
Versions: 10.2.0.0, 10.1.2.2, 10.1.2.0, 10.1.2.1, 10.1.1.2, 10.1.1.0,
10.1.1.1, 10.0.2.1, 10.0.2.0
Reporter: Sunitha Kambhampati
Priority: Minor
The documentation talks about LDAP support with mapping user names to derby
users using the derby.user.'userName' property.
See links
http://db.apache.org/derby/docs/dev/tuning/rtunproper37341.html
http://db.apache.org/derby/docs/dev/tuning/rtunproper27355.html
Per the documentation, one can use the derby.user property to set the DN for a
user,and when using LDAP, setting the search filter to derby.user will pick up
the DN from this property if available. This is not working when I tried it out
by caching a user's dn as a database-level property.
Found the following issues:
1)Setting the database property derby.user.userName to a DN does not work:
Problem in AuthenticationServiceBase#map.
-- If there is a system property derby.authentication.provider=LDAP, setting of
derby.user.userName to a DN value as a database property will encrypt the DN
value and store it. The code seems to expect that the
derby.authentication.provider is set to LDAP as a database property, else it
considers it as a password and encrypts the value.
-- it doesnt return the correct mapped value for the property for the LDAP and
derby.user.userName case. Returns null instead of returning the clear text DN
value.
2) the LDAP code itself doesnt pick up the userDN.
In LDAPAuthenticationSchemeImpl#authenticateUser
if (useUserPropertyAsDN)
userDN =
authenticationService.getProperty(
org.apache.derby.iapi.reference.Property.USER_PROPERTY_PREFIX)
Here USER_PROPERTY_PREFIX is derby.user.
The key should be USER_PROPERTY_PREFIX+userName.
3) After the code issues are fixed, it would be nice if documentation can be
added to give a full example of how to go about doing LDAP authentication with
caching DNs in derby.user.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira