Нужно ли шифровать или хэшировать пароли с помощью Spring Security и ldap? - PullRequest
0 голосов
/ 09 мая 2019

У меня есть веб-интерфейс, в который входит пользователь. Он делает запрос к бэкэнду, который имеет Spring Security, и ищет пользователя в LDAP.

Вот простой код моего запроса интерфейса с ajax:

function login() {

$.ajax({
    url : 'http://localhost:8080/log',
    type : 'POST',
    contentType : 'application/json',
    data : JSON.stringify({
        "user" : $("#loginUser").val(),
        "password" : $("#loginPass").val()
    }),
    success : function(jqXhr, textStatus, data) {



        localStorage.setItem("user",$("#loginUser").val());
        window.open("../dashboard/home.html", "_self");

        console.log(data);
    },
    error : function(jqXhr, textStatus, errorThrown) {
        console.log(errorThrown);
    }
});

}

Мне нужно знать, нужно ли добавлять какую-то защиту с помощью хеширования или шифрования, потому что каким-то образом я отправляю простой пароль на сервер и на сервер, который получает информацию LDAP.

спасибо заранее.

1 Ответ

1 голос
/ 09 мая 2019

Используйте https (http через TLS), если вы отправляете имя пользователя и пароль в теле запроса POST. Возможно, вам придется настроить свой сервер, чтобы настроить это. Это гарантирует, что никто другой не сможет расшифровать содержание вашего запроса.

К тому времени, когда запрос дойдет до вашего веб-приложения Spring, имя пользователя и пароль будут находиться в «незашифрованном виде», который вы затем сможете использовать для аутентификации на сервере LDAP. Вы можете использовать LDAP через TLS для безопасного соединения с вашим сервером. Если вы используете Spring Security, ознакомьтесь с документацией spring-ldap , чтобы узнать, как Spring абстрагирует определенные элементы соединения LDAP, и справкой Spring Security , чтобы узнать, как вы Можно настроить инфраструктуру Spring Security для беспрепятственной аутентификации пользователя путем доступа к серверу LDAP.

...