Невозможно аутентифицировать пользователя на сервере LDAP с помощью запроса поиска пользователей LDAP с помощью Spring Security - PullRequest
0 голосов
/ 24 мая 2018

Иерархия серверов LDAP, полученная через Apache Directory Studio:

Корневой DSE:

DC = компания, DC = com

OU = Офисы

OU = Региональные офисы

OU = Region1 Office

OU = Пользователи

CN = Jayesh Mulwani

WebSecurity включена как часть класса ниже:

public class LDAPSecurityConfig extends WebSecurityConfigurerAdapter{
    protected void configure(AuthenticationManagerBuilder authenticationManagerBuilder) throws Exception {                  
            authenticationManagerBuilder.ldapAuthentication()
            .contextSource().url("ldap://server-url/CN=auth_support,OU=Misc,DC=company,DC=com")
            .managerDn("username").managerPassword("password")
            .and()
            .userSearchBase("OU=Offices,DC=company,DC=com")
            .userSearchFilter("(&(objectClass=user)(cn={0}))");
    }
}

Как только приложение настроено на tomcat, я ввожу имя пользователя вместе с его паролем, но аутентификация не проходит и не выдается ошибка.

Может кто-нибудь помочь мне с подходом или указатьесли я что-то здесь упускаю?

1 Ответ

0 голосов
/ 25 мая 2018

Я исправил проблему, добавив следующие два условия

.groupSearchFilter("(&(objectClass=group)(AccountName={0}))")
.groupSearchBase("CN=DEPT_All_Employees,OU=DepartmentSecurityGroups,OU=Resources,DC=company,DC=com")

Я привел этот пример, чтобы решить проблему http://www.jcombat.com/spring/spring-security-ldap-authentication

...