I have searched through all the LDAP messages in the archives and haven't 
really found a definitive answer on what works.  From what I gathered 
there is turbine support but it doesn't work?  Or perhaps Turbine works 
but the Jetspeed integration doesn't?

Here is what I find in the TurbineResources.properties file:

I tried commenting out the DBUserManger and replacing it with the 
LDAPUserManager

#services.SecurityService.user.manager=org.apache.turbine.services.security.db.DBUserManager
services.SecurityService.user.manager=org.apache.turbine.services.security.LDAP.LDAPUserManager

#There is no Jetspeed.services.security.JetspeedLDAPSecurityService? 
Perhaps this is where it falls short?  I left this as is.
services.SecurityService.classname=org.apache.jetspeed.services.security.JetspeedDBSecurityService

# Made the necessary changes here
services.SecurityService.ldap.security.athentication=simple
services.SecurityService.ldap.port=<LDAP PORT>
services.SecurityService.ldap.host=<LDAP HOST>
services.SecurityService.ldap.admin.username=<ADMIN USERNAME>
services.SecurityService.ldap.admin.password=<ADMIN PASSWORD>
services.SecurityService.ldap.user.basesearch=<SEARCH PATTERN>
services.SecurityService.ldap.user.search.filter=<SEARCH FILTER>
services.SecurityService.ldap.dn.attribute=userPrincipalName
services.SecurityService.ldap.provider=com.sun.jndi.ldap.LdapCtxFactory

I tried these changes for kicks using 1.3a2 release build and received the 
following message upon login:

The exception is:
java.lang.NullPointerException
        at 
org.apache.turbine.services.security.ldap.LDAPUserManager.retrieve(LDAPUserManager.java:172)
        at 
org.apache.turbine.services.security.ldap.LDAPUserManager.retrieve(LDAPUserManager.java:281)
        at 
org.apache.turbine.services.security.BaseSecurityService.getAuthenticatedUser(BaseSecurityService.java:312)
        at 
org.apache.turbine.services.security.TurbineSecurity.getAuthenticatedUser(TurbineSecurity.java:199)
        at 
org.apache.turbine.modules.actions.LoginUser.doPerform(LoginUser.java:111)
        .....


So it at least found the LDAPUserManger class.  I think it got the null 
pointer exception because the adminUser object is null.

Has anyone gotten any further on this?  My end goal is the ability to 
authenticate against LDAP, but I would like to use the rest of the 
Jetspeed security system (roles, groups).

Any help is appreciated.

-Jim

Reply via email to