iPhone-App mit einem Server-Backend - Wie kann sichergestellt werden, dass der gesamte Zugriff nur über die iPhone-App erfolgt?

Ich habe nichts gegen Piraterie usw., aber ich möchte sicherstellen, dass das Backend (Rails-basiert) nicht für automatisierte Dienste geöffnet ist, die es DOS usw. können. Deshalb möchte ich einfach sicherstellen, dass alle auf das Backend zugreifen (Dies sind einige REST-Abfragen zu GET- und PUT-Daten) erfolgen über eine gültige iPhone-Anwendung und nicht über ein Skript, das auf einem Computer ausgeführt wird.

Ich möchte die Verwendung von Konten vermeiden, damit die Benutzererfahrung nahtlos ist.

Meine erste Absicht ist es, die UDID und ein Geheimnis zusammen zu hacken und dies (und die UDID) über eine HTTPS-Verbindung zum Server bereitzustellen. Dadurch kann entweder eine authentifizierte Sitzung erstellt werden, oder es wird ein Fehler zurückgegeben.

Wenn abgehört wird, kann ein Angreifer den Hash nehmen und erneut abspielen, wobei dieses Schema für wiederholte Angriffe offen bleibt. Sollte mich die HTTPS-Verbindung nicht vor Abhören schützen?

Vielen Dank!

Antworten auf die Frage(3)

Ihre Antwort auf die Frage