Както беше посочено по-горе, не е възможна 100% сигурност. Но има няколко решения, които заедно дават голяма сигурност.
Https
Както посочихте, това е важна част, тъй като предотвратява смъркането.
Сесии
Използвайте сесии и не разрешавайте никакви заявки без валидна сесия (освен първата, която трябва да удостовери автентичността на приложението).
Пръстов отпечатък
Проверете потребителския агент и задайте допълнителни http заглавки, за да получите пръстов отпечатък, уникален за вашето приложение. (Все пак някой можеше да подуши, но трябваше да използва curl или подобно.)
Прикриване на заявките
Създайте своя низ за заявка и приложете хеш функция. Сървърът трябва да приложи обратната функция. ?43adbf764Fz вместо ?a=1&b=2
Шифроване
Това отива още една стъпка напред. Използвайте споделена тайна, за да изчислите хеш. На сървъра повторете същото. Това вече е силна сигурност. За да се счупи, човек трябва да направи обратен инженеринг на приложението си.
Използвайте уникална споделена тайна
Казвате, че това е приложение за iOS. При инсталиране се генерира уникален токен от iOS. Накарайте приложението ви да регистрира този маркер на вашия сървър. По този начин имате силна споделена тайна, уникална за всяка инсталация и няма да има начин да хакнете вашето уеб приложение.