Метод, который вы вызываете, ldapTemplate.search () всегда возвращает список подходящих объектов.Это потому, что он находит все объекты, которые соответствуют вашим критериям на сервере LDAP.Если вы не уверены, что пользователь, соответствующий вашему loginId
, существует, вы уже используете правильный метод.Просто проверьте длину списка и получите первый элемент из возвращенного списка.
Чтобы получить только один элемент из LDAP, вам нужно знать отличительное имя (DN)пользователь на сервере LDAP.DN - это уникальный идентификатор объекта в LDAP, и вам нужно знать это, если вы собираетесь искать отдельный объект специально.В зависимости от конфигурации LDAP это может быть что-то вроде cn=<loginId>,ou=users,dc=yourorg,dc=com
.
Если вы можете создать DN из имеющегося у вас loginId
, вы можете использовать ldapTemplate.lookup (String, AttributesMapper) метод, чтобы найти только один объект.