2017-07-06 4 views
0

Ich bin eine Android Social Media App Codierung, Der Rahmen ist in Java und die eigentlichen Daten sind nur ein WebView der mobilen Ansicht meiner Social-Media-Website. Die Frage, die ich habe ist, wie speichere ich ein Benutzerpasswort, ist etwas falsch mit dem Speichern des Benutzerpasswortes im Nur-Text (nicht Hash oder irgendetwas) in einer Datei, da die Verwendung von Internal Storage auf einem Android-Gerät nur meine App bedeutet kann auf die Dateien zugreifen?Social Media App, wie Login korrekt speichern

Auch bei der Anzeige der Benutzerdaten wie Aktivität, Profildaten und Feed (was alles eine HTML-Webseite ist) wäre es sicher, die Website so zu codieren, dass sie URLs wie www.meinewebsite.com/mobile.php?user aufnimmt = Beispiel & session = Zeichenfolge

+1

Speichern des Benutzerkennworts als Nur-Text ist immer ein Sicherheitsrisiko. Ein besserer Ansatz besteht darin, ein AccessToken (wie Cookie) auf dem Gerät zu speichern, nachdem der Benutzer auf dem Webserver verifiziert wurde. Dieses Zugriffstoken kann eine Zeitüberschreitung aufweisen und jedes Mal, wenn sich ein Benutzer erneut bei der App anmeldet, einfach prüfen, ob ein Token vorhanden ist oder nicht? Wenn es vorhanden ist, senden Sie den accessToken an den Webserver, um dessen Integrität zu überprüfen, andernfalls zeigen Sie dem Benutzer einen Anmeldebildschirm mit der entsprechenden Nachricht an. –

+0

"ist es falsch, das Passwort des Benutzers im Klartext zu speichern?" - Ja! –

Antwort

2

es gibt keine Problem ist, das Passwort in SharedPreferences in schriftlicher Form oder internen Speicher als Benutzer es nicht, bis ein Gerät wurzelt zugreifen können. Der beste Ansatz ist, dass Sie das verschlüsselte Passwort oder authToken speichern sollten, aber wenn Sie mit dem Klartext-Passwort fortfahren möchten, wenden Sie eine spezielle check that if a device is Rooted an, dann speichern Sie das Passwort nicht einfach.

+1

SO was passiert, wenn das Telefon von jemand anderem gestohlen und verwurzelt wird – RiggsFolly