Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Impedir vários logins do mesmo usuário em um aplicativo de desktop


Se você não pode depender de sair do aplicativo normalmente ou pelo menos capturar todas as exceções e lidar adequadamente, acho que a única alternativa seria ir para uma abordagem de sessão. Basicamente, à medida que cada usuário faz login, uma nova sessão é estabelecida e é esse id de sessão que será validado para quaisquer chamadas futuras.

Ao fazer isso, você pode permitir que o usuário encerre uma sessão existente/aberta quando eles tentarem fazer login em outro lugar. Se eles tentarem fazer login no PC B e já estiverem logados no PC A - basta colocar isso em um prompt e se eles optarem por continuar no PC B, a sessão no PC A será desativada. Mesmo que alguém esteja usando ativamente o aplicativo no PC A, a próxima chamada de serviço que eles emitirem deverá ser rejeitada quando a sessão for encerrada.