Проверка подлинности jquery - PullRequest
3 голосов
/ 30 июля 2010

Как вы выполняете вызов jQuery Ajax и аутентифицируете вызов перед отправкой запроса?

Я не вошел в систему, поэтому должен пройти аутентификацию.Безопасность - это не проблема, доступ к которой может получить кто угодно, просто необходимо пройти аутентификацию.Это просто базовая проверка подлинности http, вы можете взглянуть на API http://lighthouseapp.com/api/the-basics

Ответы [ 3 ]

1 голос
/ 30 июля 2010

Если вы пытаетесь заставить javascript выполнять аутентификацию без какого-либо взаимодействия с пользователем, не надо.

Жесткое кодирование вашей логики аутентификации в код, доступный клиенту, может серьезно подорвать безопасность API.Если вы собираетесь добавить имя пользователя / пароль в свой JavaScript, зачем вообще его использовать?

Если у вас есть доступ к API и вы можете переработать аутентификацию, вы можете попробовать систему токенов для аутентификации.Просто мои $ .02

1 голос
/ 30 июля 2010

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

Первое, что вы должны сделать, это сгенерировать POST (я полагаю), чтобыдействие входа с правильной комбинацией имени пользователя и пароля.Как вы получаете это зависит от вас.Это аутентифицирует вас на веб-сайте и предоставит вашему браузеру соответствующий файл cookie для аутентификации для отправки с будущими запросами.

Вам потребуется обнаружить и обработать ошибку аутентификации.Если ваше действие входа в систему понимает, что оно может быть вызвано через AJAX (использование заголовка HTTP_X_REQUESTED_WITH - хорошая ставка), то оно может вернуть JSON с параметром состояния, в противном случае вам потребуется очистить возвращенный HTML, чтобы выяснить это.

После того, как у вас есть файл cookie для аутентификации, вы сможете сделать свой фактический запрос AJAX без какой-либо специальной обработки.

1 голос
/ 30 июля 2010

Если пользователь на вашем сайте уже прошел аутентификацию, в большинстве случаев вам ничего не нужно делать - файл cookie для аутентификации будет отправлен вместе с вашим вызовом AJAX.В противном случае вы можете попробовать HTTP Basic auth.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...