![]() |
доступ к серверу только с api в контакта
Доброго времени суток.
Хотел защитить скрипты на сервере от посторонего доступа и разрешить только приложению вконтакте пишу в .htaccess Код:
RewriteEngine OnНе подскажите как еще можно закрыть доступ? Или я с регулярками что то на мудрил? Заранее благодарю за ответ. |
А вы понимаете, что флешка находится у пользователя на компьютере и отправляет к вам запросы с любого IP адреса?
Плюс конструкция вида RewriteCond %{REMOTE_HOST} !^.*vkontakte\.ru.*$ совершенно нежизнеспособна, потому что vkontakte.ru может резолвиться на тысячу равноправных IP адресов. То, что вам нужно, называется secret_key. Это подпись от вашего payment_key и user_id пользователя. Вы никогда не можете быть уверены в том, что пользователь выполняет запросы к вам именно из флеш приложения, а не из самописной программы, но вы может быть полностью уверен в том, что это именно пользователь 1234567 прислал вам запрос на какой-то урл. Уберите эту перепись. |
Цитата:
Спасибо большое. |
Цитата:
|
andrew911, секретный ключ хранится на сервере, а не в приложении. А авторизация пользователя проводится через auth_key, который формируется на основании secret key.
|
Ага. auth_key формирует сервер вконтакта при генерации HTML-я который вставляет флешку и он представляет из себя функцию auth_key = crypt(secret_key, user_id).
Если подменить user_id, то когда вы на своём сервере будете проверять ту же функцию, у вас не сойдется. |
udaaff
Вконтакте два секретных ключа - один используется для платежных операций и действительно хранится на сервере. Но для остальных операций используется ключ, который будет во флешке |
Цитата:
Какие ключи есть и для чего они надо, я в курсе. |
Цитата:
Цитата:
|
andrew911, перечитайте еще раз второй пост. Третий абзац в особенности.
И то, что вам писали после. |
| Часовой пояс GMT +4, время: 16:45. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.