Изначально в выдачу поля типа "Пользователь" попадают все пользователи домена Active Directory и из доменов с которыми установлены доверительные отношения:
В моём случае мне необходимо было отфильтровать некоторых пользователей. Мне не нужны были пользователи без email адреса, к примеру служебные учётные записи. Т.е. не показывать пользователей с пустым или отсутствующим атрибутом mail из AD. Так же я хотел, чтобы PeoplePicker показывал мне пользователей как в адресной книге из Exchange. Адресная книга не отображает пользователей AD, у кого поле msExchHideFromAddressLists установлено в TRUE.
Поведение PeoplePicker'а можно настроить через утилиту STSADM.EXE, которая находиться в файловой системе по адресу: C:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\BIN, так же можно использовать PowerShell.
Для того, чтобы выполнить описанные выше условия, необходимо выполнить следующую команду в STSADM.EXE:
stsadm -o setproperty -pn peoplepicker-searchadcustomfilter -pv "(&(mail=*) (!msExchHideFromAddressLists=TRUE))" -url http://server
Можно делать более сложные условия, например делать как в примере выше, но при этом всё равно отображать особенных пользователей. Их особенность в том, что у них атрибут extensionAttribute5 установлен в "Show":
stsadm -o setproperty -pn peoplepicker-searchadcustomfilter -pv "(|(&(mail=*)(!msExchHideFromAddressLists=TRUE))(extensionAttribute5=Show))" -url http://server
Чтобы просмотреть какой сейчас фильтр установлен - можно выполнить команду:
stsadm -o getproperty -url http://portal -pn peoplepicker-searchadcustomfilter
Для сброса фильтрации:
stsadm -o setproperty -pn peoplepicker-searchadcustomfilter -pv " "
Узнать подробнее про запросы к Active Directory можно по ссылке:
https://technet.microsoft.com/en-us/library/aa996205(EXCHG.65).aspx