2016-11-07 5 views
1

Im Entwickeln einer Android-Anwendung zum ersten Mal (keine vorherige Erfahrung mit Codierung ....). Hauptsächlich wird die App bei der Arbeit als Werkzeug für Servicetechniker eingesetzt. Die App ist fast bereit für Feldtests, aber es gibt eine Sache, die ich vorher mit der App machen muss. Ich brauche die App, um den Benutzer zu zwingen, sich jedes Mal anzumelden, wenn er geöffnet wird. Dies liegt daran, dass einige der Informationen in der App vertraulich sind und nur Personen, die derzeit für das Unternehmen arbeiten, diese Informationen haben dürfen. Whit Firebase kann ich dann die Benutzer, die das Unternehmen verlassen, oder Benutzer, die nicht verifiziert sind, blockieren. Derzeit melden sich die Nutzer bei Google an und bleiben angemeldet, bis sie die App-Daten löschen oder löschen.Wie erzwinge ich den Benutzer, sich jedes Mal anzumelden?

Ich habe weit und breit für die Antwort auf dieses Thema gesucht, aber ich bin nur auf andere Verwendung von Timern gestoßen.

Wenn jemand eine bessere Lösung für dieses "Sicherheitsproblem" hat, bin ich offen für alles.

+0

Möchten Sie wirklich alle potenziellen Benutzer verlieren? –

Antwort

0

Wenn Sie Google Sign-In für die Authentifizierung verwenden, gibt es keine standardmäßige Unterstützung dafür, dass sich Ihr Benutzer bei jeder Verwendung der App bei Google authentifizieren muss.

Dies ist sinnvoll, weil der Benutzer immer noch mit Google auf Ihrem Telefon angemeldet ist. Ein Anmeldesystem authentifiziert den Benutzer nur; Es schützt die auf dem Gerät gespeicherten Daten nicht von Natur aus. Solange Google über ein gültiges Zugriffs-Token verfügt, muss der Nutzer keinen Benutzernamen und kein Passwort mehr eingeben (und einfach erneut auf "Mit Google anmelden" klicken, bietet hier keinen zusätzlichen Schutz).

Wenn es in erster Linie darum geht, den Zugriff auf Nutzer zu blockieren, die das Unternehmen verlassen haben, sollten Sie versichert sein, wenn Sie Google Apps für Ihr Unternehmen verwenden. Wenn Sie das Konto des Benutzers deaktivieren, sollten deren Zugriffstoken ungültig werden. Google Apps-Administratoren können den Zugriff auf bestimmte Apps für bestimmte Nutzer auch manuell widerrufen.

Wenn Sie Google Apps nicht verwenden (z. B. verwenden Ihre Nutzer @ gmail.com-Konten oder -Konten aus einer Domäne außerhalb Ihrer Kontrolle), sollten Sie möglicherweise eine Liste mit Benutzern implementieren, die auf die Anwendung zugreifen dürfen. und überprüfen Sie, ob der aktuelle Benutzer Zugriff hat, indem Sie diese Liste beim Start über einen API-Aufruf prüfen.

Wenn das Ziel wirklich die vertraulichen Informationen in der Anwendung schützt, möchten Sie vielleicht einen ähnlichen Ansatz wie Android Pay wählen, bei dem Sie Ihren PIN-Code eingeben und eingeben müssen, um auf die Anwendung zugreifen zu können. Als zusätzlichen Vorteil können Sie diese PIN verwenden, um alle vertraulichen Daten zu verschlüsseln, die Sie lokal speichern.

+0

Das Problem mit dem Zugriffstoken ist, dass die App nicht prüft, ob sie noch gültig ist oder nicht. Gibt es eine Möglichkeit, die App mindestens zu validieren? –

+0

Wofür verwenden Sie das Zugriffstoken? Wenn Sie es verwenden, schlagen Google API-Aufrufe fehl, wenn das Token ungültig ist. Dies sollte jedoch ein strittiger Punkt sein, da Sie den OnConnected() - Callback nicht erhalten sollten, wenn Ihre App gestartet wird, wenn der Benutzer nicht mehr angemeldet ist oder keinen Zugriff mehr auf die Anwendung hat. Sehen Sie [dies für ein Beispiel] (https://developers.google.com/games/services/training/signin), um den Nutzer bei nachfolgenden Starts erneut zu authentifizieren. –

+0

danke :) re authing der Benutzer war genau das, was ich brauchte –

0

Ich schlage vor, dass Sie einen Blick in gemeinsame Einstellungen werfen und jedes Mal, wenn der Benutzer wieder in der App ist, senden Sie sie an die Login-Aktivität.

Verwandte Themen