One of my customers were complained about when they trying to search for a user in the people picker by email address it displays “No results found”. But they can search on username or id and it displays fine. They have the proper mappings in the “Manage User Properties” such as “Work Email” is mapped to the “mail” attributes. Their User Profile page does shows their email address but when they try to search for a user in the people picker by email address it says “No results found”.
As we know there are some changes in how we lookup users in AD using LDAP. In SharePoint 2007 and SharePoint 2010, we sent an LDAP request to the Domain Controllers using the application pool account using the long descriptive AD filters for the SearchRequest. But in SharePoint 2013, even though we still use the application pool account and still using LDAP request, the AD filter has changed and shortened. If you take a look at the following technet article, it talks about Ambiguous Name Resolution (ANR) attribute that AD evaluates when it receives an LDAP Search Request.By default, the following attributes are associated with ANR. However, some security reasons, the customer have turned off this attributes on the mail property for an external domain controller.
So this definitely can cause some issues in SharePoint 2013 if your SharePoint 2007 or SharePoint 2010 environments were previously resolving usernames based on their mail attribute in AD. In order to fix this, you need to perform the following:
– On the DC, open RUN and type REGSVR32 SCHMMGMT.DLL to register the Active Directory Schema Snap-in
– Open MMC console via RUN command
– Navigate to File > Add/Remove Snapin and load the Active Directory Schema MMC
– Expand Active Directory Schema [ServerName.Domain.Com] and select Attributes
– Locate the mail attribute and right-click properties
– Check ‘Ambiguous Name Resolution (ANR)’ and select Apply. Select OK
– Right-Click on ‘Active Directory Schema[ServerName.Domain.Com] and select ‘Reload the Schema’
Now you should be able to perform a search for value stored in the mail attribute in SharePoint 2013 and return results!