Cannot search Users after upgrade to Crowd 2.12
Asked by perfecto25:

Hello, we have 2 crowd servers, one prod, one dev

I upgraded our dev instance to latest 2.12, followd the upgrade guide and everything seems to be working except for our User search.

The group search works correctly, connection to our LDAP server is ok, yet the User search fails, the settings for the search are exactly the same as on our Prod instance, yet it works on Prod and does not work on Dev,

heres the User configuration

User DN = blank  
User object class = user  
User object filter = (\|(\&(objectCategory=Person)(memberOf:1.2.840.113556.1.4.1941:=CN=SEC-HUMANS,OU=Security,OU=Groups,DC=MYCOMPANY,DC=local))(CN=MYCOMPANYApp)(sAMAccountName=jira\*)(CN=svn\*)(CN=teamcity\*))

User Name attribute = sAMAccountName  
User name RDN attribute = cn  
User first name attribute = givenName  
User last name attribute = sn  
User display name attribute = displayName  
User email attribute = mail  
User group attribute = memberOf  
User password attribute = unicode Pwd  
User unique Identifier = objectGUID  

The logs dont show any activity when I "test search", I cant detect why its not able to search the tree. thanks.


Answers:
author: perfecto25
body: Hello, is this something that is part of design or a bug? We need to upgrade our crowd servers but I cant move forward until I know that I can use that Expried USers feature.

comments: author: Marcin Kempa
body: I think that at this point it would be best to contact Atlassian support.

In 2.12.0 we've fixed the handling of expired AD accounts in Crowd (<https://jira.atlassian.com/browse/CWD-4736>). However, with your setup it seems that etiher **accountExpires**is not present or Crowd does not handle its value correctly.


author: perfecto25
body: Also checked our AD user trees, we dont have a "accountExpires" attribute anywhere


author: perfecto25
body: I checked debug logs from both instances, only diffrence I can spot is that the nonworking Dev instance is doing a search with this "accountExpires" attribute. I think this is messing up the search, whats weird is that I dont have that attribute configured anywhere in my settings, its picking it up from somewhere and adding it to the search string.

with a paging size of: 999  
2017-07-12 14:32:22,520 http-bio-127.0.0.1-8095-exec-20 DEBUG \[crowd.directory.ldap.SpringLdapTemplateWrapper\] Timed call for search with handler on baseDN: dc=COMP,dc=local, filter: (\&(\|(\&(objectCategory=Person)(memberOf:1.2.840.113556.1.4.1941:=CN=SEC-HUMANS,OU=Security,OU=Groups,DC=COMP,DC=local))(CN=COApp)(sAMAccountName=jira\*)(CN=svn\*)(CN=teamcity\*))**(\|(accountExpires=0)(accountExpires\>=131443579422920000)))** took 0ms  

comments: author: Marcin Kempa
body: Hi Mike,

From this description it looks like it may be related with this issue <https://jira.atlassian.com/browse/CWD-4736> which was fixed in 2.12.0. Could you please check how it behaves when you switch off the 'Filter out expired users' in your directory configuration on your dev instance?

Best Regards,

Marcin Kempa


author: perfecto25
body: That was it, I unchecked Filter out expired users, did a User Test Search, and its searching.

Looks like a bug in current version.

this is my build

Crowd 2.12.0 Build #751 2017-04-25


author: Marcin Kempa
body: Could you check the *accountExpires* attribute of some of your users in the Active Directory that should be returned in search but are not? Also would it be possible for you to post some sample LDIFF from your AD instance with dummy data that would illustrate the problem?

This would help us to verify the behaviour.

Best Regards,

Marcin Kempa


author: perfecto25
body: I cant find that attribute in our AD tree,

heres a sample user

![Untitled.png](https://community.atlassian.com/t5/image/serverpage/image-id/3021i83C8BF6405C11EBD/image-size/large?v=v2&px=999 "Untitled.png")


Tags: active-directory

ldap

user