Search code examples
python-2.7plonepython-ldap

Plone @@usergroup-userprefs crashes with plone.app.ldap


I have installed Plone 4.2.1 and plone.app.ldap 1.3. If the ldap server is activated, the ldap user can login, but the admin cannot access the @@usergroup-userprefs page. It throws up some errors as follows:

Traceback (innermost last):
  Module ZPublisher.Publish, line 126, in publish
  Module ZPublisher.mapply, line 77, in mapply
  Module ZPublisher.Publish, line 46, in call_object
  Module plone.app.controlpanel.usergroups, line 198, in __call__
  Module plone.app.controlpanel.usergroups, line 224, in doSearch
  Module Products.PluggableAuthService.PluggableAuthService, line 211, in getUserById
  Module Products.PluggableAuthService.PluggableAuthService, line 794, in _verifyUser
  Module Products.LDAPMultiPlugins.LDAPMultiPlugin, line 190, in enumerateUsers
  Module Products.LDAPUserFolder.LDAPUserFolder, line 810, in getUserById
  Module Products.LDAPUserFolder.LDAPUserFolder, line 758, in getUserByAttr
IndexError: list index out of range

On disabling the ldap server, the admin can access the @@usergroup-userprefs page of the plone site. OpenLDAP is also installed. When I run the command $dpkg -l|grep OpenLDAP, I get the follwing listing.

ii  ldap-utils                        2.4.23-7.3                   OpenLDAP utilities
ii  libldap-2.4-2                     2.4.23-7.3                   OpenLDAP libraries
ii  libldap2-dev                      2.4.23-7.3                   OpenLDAP development libraries
ii  slapd                             2.4.23-7.3                   OpenLDAP server (slapd)

Solution

  • If the LDAP entries with uid and SN attribute are not populated for some of the users,or the uid includes space before or after the uid value. On a whole this problem occurs if the ldap data is not correctly added, then the above users and groups sub-menu in plone throws up errors as above.