Насколько безопасна реализация JSONP для входа в систему

Я использую JSONP для аутентификации при входе, ниже приведен пример JQuery Code:

$.ajax({  
        type:"GET",        
        url: "https://staging/login/Login.aspx",  // Send the login info to this page
        data: str, 
        dataType: "jsonp", 
        timeout: 200000,
        jsonp:"skywardDetails",
        success: function(result)
        { 
              //Do something after the success
        } 

    }); 

В приведенном выше коде у меня есть страница HTTPS для аутентификации, из диалогового окна входа в систему я отправляю имя пользователя и пароль на мой login.aspx страница, которая вызывает "ВЕБ-СЛУЖБУ" и принимает ввод, отправляемый страницей диалога входа, и возвращает сведения о пользователе в виде объекта JSONP.

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

Спасибо!


person Manoj Singh    schedule 23.12.2010    source источник


Ответы (1)


Строго для аутентификации имени пользователя/пароля, это так же безопасно, как отправка формы входа в то же место. Проблема безопасности может возникнуть из-за того, что вы делаете (или не делаете) в функции success и будущих запросах ajax, поскольку javascript можно подделать/изменить на лету, чтобы изменить переменные (в частности, идентификатор пользователя), которые вы установили.

person Ian Wetherbee    schedule 23.12.2010
comment
Спасибо @Ian, но, как вы видите, я JSONP, поэтому мы не можем использовать POST в запросе ajax, я буду использовать GET только с вышеуказанным подходом. В случае успеха я просто устанавливаю данные на своей странице, я имею в виду данные пользователя, которые поступают со стороны сервера, я просто отображаю их на своей странице в разделе «Моя учетная запись». пожалуйста подскажите это нормально? - person Manoj Singh; 23.12.2010
comment
Если вы используете его только для получения некоторых сведений о пользователе (имя, местоположение и т. д.), то это нормально, хотя и раздражает пользователя, поскольку ему придется снова входить в систему при следующей перезагрузке страницы, поскольку вы не настраиваете сеанс. Я предлагаю вам использовать аутентификацию для установки идентификатора сеанса, а затем использовать его для аутентификации дальнейших запросов. - person Ian Wetherbee; 23.12.2010