Ich habe eine App für Android gemacht, die die Retrofit HTTP API verwendet, um PHP-Skripte aufzurufen, die eine Datenbank abfragen.Wie kann ich mich über Android mit meinem MySQL-Datenbank-Backend verbinden, ohne dies der Öffentlichkeit zugänglich zu machen?
App -> Retrofit-Aufruf -> PHP -> Datenbank
Die PHP und die Datenbank sind beide auf der gleichen Instanz Amazon EC2 gehostet.
Ich möchte, dass meine App für viele Benutzer bereitgestellt werden kann, aber ich weiß nicht, wie ich mein Backend privat halten kann.
Damit die App mit der Datenbank interagieren kann, muss PHP verwendet werden. Da die IP-Adressen der Benutzer variieren, muss die IP-Adresse des PHP-Codes öffentlich sein, damit alle Benutzer Daten senden/herunterladen können.
Das Problem ist, dass dies mein Backend für jeden offen lässt, der die IP-Adresse ausspionieren möchte. Wie kann ich dieses Problem umgehen? Ist PHP/MySQL eine schlechte Wahl für Android, oder habe ich einfach die falschen Plattformen gewählt?
Im Allgemeinen wird eine mobile App nicht direkt mit einer Datenbank interagieren. Stattdessen wird Ihre Anwendung mit einer Anwendung kommunizieren, die irgendwo auf einem Server oder Server gehostet wird. Diese Anwendung wird dann mit einer Datenbank sprechen. Sie können direkt mit Diensten wie Firebase arbeiten, aber damit haben Sie nur begrenzte Kontrolle darüber, welche Daten in die Datenbank gelangen. – datasage
Geht es Ihnen gut, wenn der Benutzer einen Benutzernamen und ein Passwort benötigt? – nasch