2016-04-22 3 views
0

Я новичок в концепции LDAP, и я могу успешно подключиться к серверу LDAP. А также возможность вставки и удаления записей в/из базы данных LDAP. Следующее, что мне нужно сделать, это аутентифицировать пользователя на основе записей базы данных LDAP. Помогите мне пожалуйста. При необходимости отправлю исходный код. Спасибо.Идентификация пользователя в LDAP java

ответ

1

У нас есть several samples, который может помочь вам, если вам нужно использовать JNDI и LDAP.

Мы предпочитаем использовать реальный SDK LDAP, как те, которые показаны на https://www.ldap.com/developing-clients-apps (Мы используем и РеКомендУем UnboundID LDAP SDK для Java)

Вы, вероятно, следует также рассмотреть возможность использования OpenID Connect, как вы можете абстрагировать Authentication стать агностиком как происходит аутентификация.

0

Я также использовал LDAP для авторизации. Я рекомендую токены на основе auth. Если вы можете получить токен JWT по запросу. Этот репо java-jwt будет полезен.

0

Если вы не против использования Spring Security, ознакомьтесь с артикулом this. Это облегчит выполнение и настройку. Вот и пример конфигурации LDAP:

auth.authenticationProvider(ldapAuthenticationProvider) 
    .ldapAuthentication() 
    .ldapAuthoritiesPopulator(ldapAuthoritiesPopulator) 
    .userSearchBase("ou=users") 
    .userSearchFilter("(uid={0})") 
    .groupSearchBase("ou=roles") 
    .groupSearchFilter("(member={0})") 
    .groupRoleAttribute("cn") 
    .contextSource(contextSource); 
+0

Hello @Serghey .. Есть ли способ использовать это в основной Java? – user4342532

+0

Я не уверен, что Spring Security хорошо работает с ядром Java, никогда не пробовал. В этом случае вам скорее нужен Spring Ldap. Проверьте [this] (http://docs.spring.io/spring-ldap/docs/current/reference/#basic-authentication) пример базовой аутентификации Ldap с помощью Spring Ldap. –

0

Попытка создать объект InitialDirContext с security_principal (пользователя дпом) и security_credentials (пароль) пользователя, который требуется для проверки подлинности. Если вы можете создать объект, пользователь аутентифицируется, то поймайте исключение и выбросите его.

Смежные вопросы