How to make user-login nur von einem Gerät gleichzeitig
Ich habe eine RestAPI, die beim Treffer den Benutzer zu authentifizieren.
Diese api ist ausgesetzt android-und ios-Entwickler schlagen Sie diese api, um Benutzern zu erlauben den Zugriff auf unsere app
Meine Forderung ist das.1) Wenn Benutzer Handy sagen abc Telefon mit IMEI "abc1234". Er meldet sich von diesem Telefon. Wenn er jetzt versucht, sich aus seinem 2. Handy, als er sollte nicht erlaubt werden, zur Anmeldung von 2. Telefon. Er soll zuerst Abmelden von abc-Gerät.
nun gibt es einige Komplikationen
1) wenn Benutzer angemeldet ist " von abc. Mit aus der Anmeldung heraus, dass er-Formate sein Handy oder deinstalliert die app. Dann, wie sollte ich damit umgehen Anmeldung vom gleichen Gerät oder einem anderen Gerät.
Grundsätzlich möchte ich wissen, über Strategien und gute Praktiken für eine solche Art von Szenarien.
- auto-logout nach 5 Minuten? Gewaltsam ablaufen der login-token alle 5 min, es sei denn, der Benutzer hat eine Aktion auf dem Handy. In diesem Fall verlängern Sie die token für die nächsten 5 Minuten.
- Best practices in Situationen, wie der Benutzer das Handy ist verloren und er ist immer noch angemeldet. Leugnen login ist schlicht Verlust von Potenziellen Geschäftspartnern, die in diesem Fall! Ich würde anfangen, durch die Auflistung unten alle möglichen Situationen und Wiegen die vor-und Nachteile, was auch immer Oberflächen!
- ja Narasimhan. diese Szenarien sind das, was ich Suche, um zu behandeln. Benutzer angemeldet ist und sein Handy verloren/format/deinstalliert die app. dann wie ich mit solchen Situationen. dies ist, dass, wenn Benutzer sich anmeldet, ab dem 2. Gerät, dann wird er automatisch abgemeldet vom ersten Gerät . 2. Lösung ist, wenn er angemeldet ist in 1 Ort und versucht die nachfolgende Anmeldung aus anderen Ort, dann sollte er sich per E-Mail über diese. ich habe aber im store-Geräte-id in der db auch
- überprüfen Sie bitte meine Antwort.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gute Praxis wäre, lassen Sie die Benutzernamen vom zweiten Gerät und protokolliert ihn vom ersten Gerät besser wäre es, von user experience, sowie leicht zu handhaben.e.g
Ich eingeloggt
DeviceId A
(update DeviceId in db gegen den Benutzer)dann versuche ich eingeloggt
DeviceId B
(wieder update DeviceId überschreiben Vorherige DeviceId in db gegen den Benutzer)Nun, Wenn ich eine Anfrage von
DeviceId A
, passen Sie die Geräte-id in der DB, wird false zurückgegeben. Senden Benutzer wieder auf die login-Seite.Ich schlage vor, Sie erhalten eine Mappe für die Anmeldung. Wann immer es eine erfolgreiche Anmeldung ist, geben Sie eine eindeutige Sitzungs-id für den Benutzer. Diese session-id kann anschließend verwendet werden, für weitere Anfragen/Anrufe von dem Benutzer.
Für Szenario der Benutzer sich von einer anderen Zahl, der eine aktive Sitzung ausgeführt wird, markieren Sie diese zweite Anmeldung als ungültig.
Halten Sie ein aging-Mechanismus für jede Sitzung. Diese Weise eine session, verursacht durch Telefon immer getrennt oder ausgeschaltet ist, wird abgebrochen.
Hallo, Sie können tun, eine Sache. Track user-login-status. wie
Müssen Sie diese Benutzer-status mit Ihren login-web-Service oder API in android und in die website können Sie direkt von der DB.
Verwenden SharedPreferences für die Lösung,
ZB.
Verwenden:
Vor der Anmeldung überprüfen login_flag:
Nach dem Login gesetzt login_flag:
Versuchen, speichern Sie eine Boolesche variable. Die mark als 0 und darf der Benutzer zur Anmeldung auf.
Beim login wird der Wert ändern auf 1 und auf-Abmelden-ändern Sie ihn auf 0 zurück.
Benutzer dürfen nur anmelden, wenn der Wert des boolean-Zeichen ist 0.
Können Sie SharedPreference für die Speicherung von user-login detail nach der Anmeldung und zweite mal, wenn Sie die app ausführen, überprüfen Sie, dass die login-Details gibt oder nicht. Und nach dem logout löschen Sie gemeinsame Vorlieben.
Für weitere Details besuchen Sie bitte unten links:
http://www.tutorialspoint.com/android/android_shared_preferences.htm
http://developer.android.com/reference/android/content/SharedPreferences.html
php Beispiel
Wenn der Benutzer den Erfolg login
Wenn browser besuchen server immer vergleichen, $t2 > $t1, wenn nicht schick browser die Meldung "Sie sind logout"