Pracuję nad aplikacją na iPhone'a wraz z usługami sieciowymi. Aplikacja iPhone będzie używać GET lub POST do pobierania danych z serwisów internetowych, takich jak http://www.myserver.com/api/top10songs.json, aby na przykład uzyskać dane dla dziesięciu najlepszych piosenek.Najlepsza praktyka wykrywania dostępu do aplikacji internetowych tylko dla usług internetowych?
Brak konta użytkownika i hasła do aplikacji na iPhone'a. Jaką najlepszą praktyką jest zapewnienie, że tylko moja aplikacja na iPhone'a ma dostęp do interfejsu API sieci Web http://www.myserver.com/api/top10songs.json? UIDevice uniksowego identyfikatora UDevice pakietu iPhone nie jest wystarczający, ponieważ każdy może podrobić identyfikator urządzenia jako parametr wywołujący wywołanie API za pomocą wget, curl lub przeglądarek internetowych.
Interfejs API usług internetowych nie zostanie opublikowany. Dane serwisów internetowych nie są tajne i prywatne, po prostu chcę zapobiec nadużyciom, ponieważ istnieją również API do zapisywania danych na serwerze, takich jak dziennik użytkowania.
jak to byłoby trudne do złamania? Właśnie przeczytałeś żądanie HTTP i odczytałeś wartość md5 swojego parametru? – erotsppa
cóż, jeśli wyszukasz żądanie http i ponownie je wyśle, na pewno otrzymasz odpowiedź, ale nikt nie będzie w stanie wygenerować własnych żądań, ponieważ nie pozna sekretu. – Daniel
Aby ominąć to, wystarczy skorzystać z transportu poziom bezpieczeństwa, więc gdy sniffed dane zostaną zaszyfrowane – Daniel