Я собираюсь включить систему регистрации на свой веб-сайт, но я не думаю, что это хорошая идея для безопасности использовать ajax для отправки и получения подтверждения от внешнего php-скрипта под названием login.php и выхода из системы Точно так же с другим logout.php любой рекомендацияМожно ли использовать ajax для входа?
ответ
Я не могу придумать никаких последствий для безопасности при использовании Ajax для обработки входа и выхода из системы. Неважно, что вы отправляете туда и обратно (до тех пор, пока вы не отправляете текстовые пароли от сервера к клиенту) между боковым уровнем ajax и sever, потому что сеанс будет тем, который будет удерживать состояние авторизации.
Однако вам все равно придется обновлять страницу или перенаправлять, чтобы показать соответствующий контент только авторизованному пользователю. Поэтому я не думаю, что Ajax будет эффективен в этой конкретной ситуации.
Фактически вы отправляете от клиента к серверу пароли в текстовом виде (за исключением страниц https). Однако вы будете наказаны, если вы отправляете текстовый пароль ** с сервера на клиент **. –
@Clement: Вот что я имел в виду! Я отредактирую, чтобы было ясно. – Shef
Нет, я могу просто загрузить содержимое, которое должно быть загружено с помощью запроса ajax. Я могу просто загрузить контейнер, который изменит содержимое (на стороне сервера) и отправит другой контент (соответствующий контент). – Qchmqs
AJAX является так безопасно, как обычной старой формой + обновлений страницы. В конце концов, это всегда HTTP-запрос. Почему вы так думаете ?
Однако, с точки юзабилити, убедитесь, что люди, которые отключили javascript, могут войти в ваше приложение.
Обязательно используйте POST
метод, чтобы отправить запрос AJAX, так как GET
запросы, и их Params (таких как, скажем, простой текстовый пароль) может закончиться в журналах веб-сервера, unles вы используя HTTPS.
В Grégoire указал на это:
Кроме того, из точки практичности, автополный не будет работать для AJAX форм на хроме, так и для АЯКС загруженных форм в Firefox. Браузеры даже не захотят запомнить ваш пароль
Также из точки юзабилити автозаполнение не будет работать для форм AJAX на хроме и для загруженных форматов AJAX в firefox. Браузеры даже не захотят запомнить ваш пароль. – greg0ire
@ greg0ire right, я переживаю в эти дни, и это не очень смешно :(Редактирование, чтобы добавить ваше замечание. –
Я думаю, что в наше время предложение «убедитесь, что люди, которые отключили javascript, могут войти в ваше приложение», должны быть изменен. Я не могу представить себе какое-либо серьезное веб-приложение, которое работает без javascript. –
GET или POST против вызова ajax имеют одинаковый набор угроз безопасности. Тот или иной не является неявным рискованным.
Запрос GET может оказаться в журналах веб-сервера вместе с паролями обычного текста:/ –
@ clement: Конечно, но это верно, независимо от того, выполняется ли запрос через форму или ajax. – Johan
Правильно, поэтому еще более ложно, что GET или POST имеют одинаковый набор рисков безопасности. –
Ну Аякса сообщения безопасны
Все зависит от вашего кодирования вас есть код имея в виду все возможные атаки, которые могут произойти
использовать AJAX только для передачи данных и делать все проверки подлинности в PHP и вернуть успешное сообщение
Вы можете использовать AJAX с SSL-контейнером (HTTPS). Но страница отправителя также должна быть зашифрована. из-за перекрестной политики домена.
Вход через ajax POST должен быть безопасным, если у вас есть способ предотвратить атаки XSRF. Это можно сделать, установив заголовок X-CSRFToken в свой запрос ajax. На стороне сервера у вас должно быть какое-то промежуточное программное обеспечение для проверки и проверки вашего токена CSRF из заголовка.
Вы можете установить маркер CSRF в печенье, а затем запросить его и установить его в заголовке:
вар csrftoken = $ .cookie («csrftoken»);
xhr.setRequestHeader («X-CSRFToken», csrftoken);
(я использовал jquery cookie library here to illusrtate)
- 1. Можно ли использовать Ajax для загрузки файлов?
- 2. Можно ли использовать конструктор форм Symfony2 для формы входа?
- 3. Можно ли использовать iCloud для регистрации или входа в приложение?
- 4. Можно ли использовать пользователей Windows для входа в базу данных?
- 5. Можно ли использовать $ logProvider для входа в конфигурационный блок модуля?
- 6. Memberhi plugin: Можно ли использовать пользовательскую страницу для входа пользователя?
- 7. Можно ли использовать Laravel только для системы входа/аутентификации?
- 8. Можно ли использовать CouchDB с AJAX?
- 9. Можно ли использовать AJAX для доступа к html-помощнику?
- 10. Можно ли использовать ajax для загрузки одной функции php?
- 11. Можно ли использовать Django с Ajax для проведения прямого поиска?
- 12. Можно ли использовать Ajax для управления файлами на стороне клиента?
- 13. Можно ли использовать параметр для вызова loadXMLDoc() из html? (ajax)
- 14. Можно ли использовать синхронный AJAX для этой цели?
- 15. Можно ли использовать событие разгрузки для надежного запроса ajax?
- 16. Можно использовать jQuery для выходных элементов ajax?
- 17. Можно ли взломать AJAX?
- 18. Можно ли использовать xhr для локальных файлов?
- 19. AJAX форма для входа
- 20. Можно ли использовать openId?
- 21. MATLAB: Можно ли использовать файл в качестве входа функции?
- 22. Можно ли сказать: «JavaScript + AJAX»?
- 23. Можно использовать сканер большого пальца для входа в веб-приложение?
- 24. Можно ли использовать этот код для создания входа в Instagram и как использовать Smartface App Studio?
- 25. UIMoviePlayerController ... Можно ли использовать?
- 26. Какие способы можно использовать для входа в Wordpress?
- 27. Можно ли использовать iframe?
- 28. Можно ли использовать «eval»?
- 29. Можно ли использовать cstdarg?
- 30. Можно ли использовать UIViewAlertForUnsatisfiableConstraints?
Как он отличается? в конце концов, это всего лишь HTTP-запрос, переданный по протоколу, больше сосредоточиться на инкапсулировании данных с большей проверкой на стороне сервера! – Arpit