Как я могу контролировать доступ к моим данным на стороне сервера?

Я создал приложение для iPhone, которое извлекает данные, хранящиеся на сервере, в файл XML. Как проверить, что запрос данных поступает из моего приложения, а не из какого-либо другого источника, такого как другое приложение для iPhone или браузер для настольного компьютера, поскольку в настоящее время вы можете просто проследить запрос iPhone в локальной сети с помощью Wireshark, а затем использовать захваченный URL-адрес загрузить данные в настольный браузер. Я думаю, что мне нужно будет обработать файл через PHP или что-то в этом роде и использовать своего рода проверку пользовательского агента или последовательность запрос-ответ. Если бы кто-то мог предоставить пример кода, я был бы признателен.

1 ответ

Решение

Краткий ответ: вы не можете. Но вы действительно можете сделать это сложнее.

Что бы вы ни делали, это можно будет обойти - проверка пользовательского агента чрезвычайно легко обойти; вызов-ответ потребует разборки вашего приложения, но это все еще возможно.

Тем не менее, все ваши хорошие средства защиты не помогут от перехвата сети. Если вы также не зашифруете передачу, кто-то может просто перехватить данные в незашифрованном виде вместо того, чтобы нарушить вашу "защиту".


ИМО главный вопрос должен быть не "Как мне защитить это", а "Почему кто-то хочет получить необработанные данные? Почему он не должен их получать?"

Другие вопросы по тегам