Я уже задал вопрос об аутентификации IP здесь: TastyPie Authentication с того же сервера
Однако мне нужно что-то еще! IP-адрес может быть очень легко подделан.
Сценарий: Мой API (TastyPie) и клиентское приложение (в javascript) находятся на одном сервере/сайте/домене. Мои пользователи не входят в систему. Я хочу использовать свой API на стороне моего javascript.
Вопрос:. Как я могу убедиться (аутентификация), что мои AJAX-запросы являются , исходящими с того же сервера?
Я использую Tatypie. Мне нужна аутентификация, что запросы от клиента выполняются на одном сервере/домене и т.д. Я не могу использовать "зарегистрированные сеансы", так как мои пользователи не заходят в систему.
Я просмотрел секретные ключи и создал подпись, но они могут просматриваться в javascript, что делает этот метод небезопасным. Если я сделаю это, чтобы запросить форму подписи на сервере (скрывая закрытый ключ в некотором коде Python), любой может сделать тот же HTTP-запрос на get_signature
, что делает мой javascript, тем самым побеждая точку.
Я также попытался, чтобы представление Django помещало подпись в представление, устраняя необходимость вызова get_signature. Это безопасно, но означает, что я должен обновлять страницу каждый раз, чтобы получить новую подпись. С точки зрения пользователей будет работать только первый вызов API, после чего они должны обновиться, снова бессмысленно.
Я не могу поверить, что я единственный человек с этим требованием. Это общий сценарий, я уверен. Пожалуйста, помогите:) Пример использования пользовательской аутентификации в Tastypie также приветствуется.
Спасибо
Добавлено: