Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Verhindern Sie mehrere gleiche Benutzeranmeldungen in einer Desktop-Anwendung

Wenn Sie sich nicht darauf verlassen können, die Anwendung entweder ordnungsgemäß zu beenden oder zumindest alle Ausnahmen zu erfassen und angemessen zu behandeln, wäre meiner Meinung nach die einzige Alternative, zu einem Sitzungsansatz zu wechseln. Wenn sich jeder Benutzer anmeldet, wird im Grunde eine neue Sitzung eingerichtet, und es ist diese Sitzungs-ID, die für alle zukünftigen Anrufe validiert wird.

Auf diese Weise können Sie dem Benutzer erlauben, eine bestehende/offene Sitzung zu beenden, wenn er versucht, sich woanders anzumelden. Wenn sie versuchen, sich von PC B anzumelden und bereits von PC A angemeldet sind, geben Sie das einfach in eine Eingabeaufforderung ein, und wenn sie sich dafür entscheiden, von PC B aus fortzufahren, wird die Sitzung auf PC A deaktiviert. Selbst wenn jemand die App auf PC A aktiv verwendet, sollte der nächste Serviceanruf, den er absetzt, abgelehnt werden, wenn die Sitzung geschlossen wird.