2016-07-22 13 views
0

Ich bin neu in Android. Ich entwickle und Android app, die einige database Aufrufe enthält. Ich sende DB_USERNAME, DB_PASSWORD als Parameter in POST Anfrage an PHP und dann MYSQL Database connection mit PHP.Android - Bessere Möglichkeit, DB Benutzernamen und Passwort zu erhalten, während DB ruft

Ist es gut, DatabaseUser Name und Password als Parameter zu übergeben?

oder

Sollten wir geben DatabaseUser Name und Password in PHP?

Vielen Dank im Voraus.

+0

Ich würde nicht den DB-Benutzername, Passwort als Parameter senden. Habe sie im PHP. – chris85

+0

Wird es ein Sicherheitsproblem geben, wenn wir DB-Benutzernamen und Passwort in PHP-Datei haben? –

+0

Sie können die Anmeldeinformationen in einer nicht webfähigen Datei speichern und diese Datei dann in Ihr PHP-Projekt einbeziehen. Ohne das Include könnten Sie möglicherweise den Benutzernamen/das Passwort angeben, wenn PHP aus irgendeinem Grund als Klartext geliefert wird. http://stackoverflow.com/questions/97984/how-to-secure-database-passwords-in-php – chris85

Antwort

0

Mit dieser Art von Frage empfehle ich Ihnen, zuerst in die Grundlagen der Web-Sicherheit zu lesen !! :)

Senden von Credential's über das Web an Ihren Server für den Zugriff auf eine Datenbank ist ein absolutes No-Go.

  • Ihr Webserver speichert die Anmeldeinformationen in einer separaten Datei, auf die nicht über das Internet zugegriffen werden kann. Sie können dies tun, indem Sie die Anmeldeinformationsdatei außerhalb des Document-Root Ihres Webservers haben.
  • Außerdem: Ihr DB-Server sollte nur die Kommunikation von vertrauenswürdigen IPs akzeptieren. Wenn Ihre Web-App-Instanz und DB-Instanz sich auf demselben Server befinden, akzeptieren Sie nur von localhost.

Sie wollen wahrscheinlich youre App-Kunden zur Begrenzung der Zugänglichkeit Ihrer Datenbank Anrufe authentifizieren. Üblicherweise sendet man einmal den Client s credential s, was der Server validiert und mit einem Authentifizierungs-Token antwortet. Für jede weitere Kommunikation wird das Token verwendet, das nach einer definierten Zeitspanne ungültig wird. (Token-basierte Authentifizierung)

Die Idee ist, den exponierten Zeitrahmen der Anmeldeinformationen zu minimieren. Auch wenn Sie SSL-Verschlüsselung für verwenden.

Best of luck Hannes