2016-05-05 4 views
0

Я настроил активный вход в каталог с весной и смог выполнить вход и выбор атрибутов, но проблема в том, что я должен отправить необработанный пароль из моего браузера на сервер, как это требует AD.Spring Web Application Войти с Active Directory

Я только что проверил, что, когда я отправлял из браузера пароль, закодированный SHA2, и передавал его в логин AD, он дает мне ошибку аутентификации. Из-за соображений безопасности мне нужно закодировать пароль как SHA2, прежде чем отправлять его на сервер. Есть ли способ обойти?

AndFilter filter = new AndFilter(); 
ldapTemplate.setIgnorePartialResultException(true); 
         filter.and(new EqualsFilter("userPrincipalName", authentication.getName())); 
boolean authenticateUser = ldapTemplate.authenticate("", filter.toString(),password); 

ответ

0

documentation ничего не говорит о принятии зашифрованного пароля.

Пароль может быть зашифрован при передаче, хотя я не знаю, как это работает. Если вы хотите сделать дополнительную уверенность, вы можете подключиться через LDAPS (LDAP с SSL). This page (по 8.1.1) он выглядит так же легко, как замена «LDAP: //» с «LDAPS: //» и добавление порта в конце имени сервера:

ldaps://myserver.example.com:636 

Порт 636 является порт по умолчанию для LDAPS.

+0

Spring LDAP предлагает простой выбор подлинности для операции привязки LDAP (https://tools.ietf.org/html/rfc4511#section-4.2), но не предлагает «sasl», который необходим, если пароль был уже «испорчен» перед отправкой на сервер каталогов для аутентификации. Чтобы иметь какое-то значение конфиденциальности, вам необходимо использовать защиту транспортного уровня до конца; клиент -> приложение -> Сервер каталогов –

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