Безопасный кроссдоменный обмен данными между AJAX и PHP?
На одном сервере лежит PHP скрипт, на другом есть сайт, использующий AJAX. Как передавать между ними данные, чтобы гарантировать конфеденциальность и невозможность подделывания (вместо AJAX может быть и Flash, и обычные GET/POST запросы — на сокетах то просто, а нужно вот так вот)?
Единственное, что приходит в голову, это дополнительный скрипт ПХП и сокеты + SSL. Но это не очень удобно (т.к. может использоваться флеш без ПХП). Использование секретных ключей не кажется мне безопасным — флеш или яваскрипт легко стянуть и подстмотреть всю информацию. RSA — в одну сторону отправлю, но в обратную опять же — можно подсмотреть секретный ключ.
Так похоже все гораздо проще, чем я думал.
Что мешает просто авторизоваться по логину и паролю, стандартными методами?
Ну делается скрипт, который открывает окошко с нашего сайта, дает там авторизоваться, после чего выставляет сесию/куку? А дальше все скрипты уже работают с нашим сайтом имея там нормальную авторизацию…
Или надо обезопасится от кривых запросов на наш сайт? Ну так если запросы посылает клиент, то злоумышленник в итоге сможет послать что угодно, как ты не защищайся, т.е. в этом случае без сервера не обойстись.
А что делать (и как определить), если пользователь уже залогинен на Сайт-сервер? По идее, нужно отсылать на него запрос с какой-то инфой о пользователе, по которой тот его мог бы однозначно определить, проверить и вернуть «Уже авторизован» или «Нет, он у нас не авторизован». Вопрос, как мне кажется, именно в том, какую инфу о пользователе отправлять. Она должна быть доступной Сайту-клиенту и в тоже время известна Сайту-серверу — и этим мы возвращаемся к началу, где автор спрашивает, как можно вшить какую-то секретную информацию в яваскрипт, который передается Сайту-клиенту.