![]() |
Флеш ролик на странице и куки (сессия)
Вопрос коротко:
Если флеш-ролик, размещенный на странице, отправляет запросы к серверу, то запросы идут от имени браузера и все куки, установленные в браузере, передаются автоматически? Конкретней: Имеется сайт, на котором пользователь прошел авторизацию, о чем сделана соответствующая запись в сессии. На странице размещен флеш-ролик, который отправляет данные на сервер. Сервер должен проверить права пользователя на выполнения действия (то, что пользователь авторизован на сайте). Сидел, думал, как бы из ролика передать серверу id сессии, а тут оказалось, что он сам вроде передается. Я не ошибся? Вопрос номер два: Есть ли в такой проверке авторизованности угроза безопасности? Может следует учесть какие-то неочевидные моменты? Просто делаю это первый раз. |
Запросы идут от имени клиента, с его IP и прочего.. но флешка передает адрес с какой страницы была загружена, и IP пользователя, что можно проверять на сервере...
НО по Вашему плану человек может скачать флешку и запускать её без браузера, и всегда получать желаемое без авторизации. И вообще куки можно подделать и занимает это пару минут.. Иное дело серверые сессии - но если их передавать во флеше они опять же будут видны злоумышленнику. Вариант такой - сервер, который авторизует клиента (сайт) и выдает сессию, пишет значение сессии в базу (к примеру юзер Вася имеет сессию 24a6f69c9934c2d6a312650f16b108c5), и эту же сессию передает во флешварс вида 'flashvars', "user_id=24a6f69c9934c2d6a312650f16b108c5" Далее флешка передает это значение при подключении NetConnection.connect (serverURL, user_id) Далее сервер делает запрос к базе вида (проверить, есть ли в базе запись 24a6f69c9934c2d6a312650f16b108c5, если да, то разрешить подключение). Таким образом кто бы ни пытался подделать сессию, в серверную базу он не залезет, соотв не подключится, так что так |
1. Что значит "от клиента"? Клиентом выступает браузер или сама флешка? Если флешка размещена на странице. IP здесь вообще ни при чем.
2. Флешка без браузера по такому плану точно ничего сделать не сможет, т.к. сервер проверяет наличие корректной сессии, значит флешка для этого должна знать id сессии и как-то его передать. Вопрос состоит в том, правильно ли я понял, что размещенная на странице флешка передает запрос от имени браузера с куками, установленными в нем? |
Неправильно
|
Допустим, неправильно. Тогда как объяснить происходящее?
PHP код:
Код AS1/AS2:
Код:
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.16) Gecko/2009120208 Firefox/3.0.16 |
Вы абсолютно правы.. Проверил в четырех браузерах, проверил настройки апача. Принимающая сторона видит и куки и сессии, и все что надо и не надо. В общем то это даже логично, что плагин работает от имени браузера. Спасибо, что подняли эту тему.
|
Подождем, что скажут профи.
Желательно со ссылкой на какой-нибудь документ, говорящий, что так и задумано... |
Флеш не шлет куки когда заливает файлы, а вот GET запросы идут с куками.
|
| Часовой пояс GMT +4, время: 16:37. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.