Извинения, если об этом уже спрашивали и отвечали;Я осмотрел кучу, но не нашел именно то, что спрашиваю.
-
Предположим, мое веб-приложение на http://example.com/использует частный и недокументированный веб-API на http://api.example.com/ для извлечения данных, например, через XHR или JSONP.
Также предположим, что это веб-приложение является анонимным - оно делает не требуется логин пользователя.
Поскольку существует связь между клиентом и сервером, любой может открыть Fiddler и т. д., чтобы увидеть точный запрос и ответ, не говоря уже о проверке клиента.код JS стороны.
В таком случае, как вы можете запретить кому-либо использовать ваш API в клиентском приложении не веб ?Например, приложение для iPhone или на стороне сервера.
Насколько я понимаю, пункт № 2 удаляет опцию чего-то вроде OAuth, а пункт № 3 - опцию, например, ключей API или даже SSL.
Я думал о таких вещах, как токены на основе времени или секретные соли, которые вводятся на страницу при первой загрузке, но приложение для iPhone может легко тайно загрузить вашу веб-страницу перед выполнением запросов API.
есть ли какой-нибудь способ, кроме простого обфускации - безопасность через мрак?
-
В случае, если все это слишком абстрактно, вот простой пример:
Google.com выбирает егоавтозаполнение данных через какой-то API, который является частным и недокументированным, но открыт в Интернете.Что мешает мне использовать его в приложении для iPhone?