Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

notax

Não permitir logons com mesmo usário simultâneos

Recommended Posts

Pessoal, bom dia!

 

To tentando resolver uma questão aqui:

 

Tenho um sistema que só é possível acessar atraves de usuário e senha...

 

Mas permite que o mesmo usário se conecte em várias máquinas ao mesmo tempo!

 

Como eu bloqueio isso?

 

IMPORTANTE: gravo variáveis da autenticação em cookies e não sessions... sessions se tornaram inviáveis por conta do prazo de expriação...

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha este exemplo, ele nao deixa o user logar na maemsa maquina, e para fazer o processo de nao logar em outras, apenas implemente no banco de dados um campo do tipo true /flase, que quando o user estiver conectado estará true e não deixará logar de novo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode checar se o usuário de login esta online antes de executar a ação de checagem de login e senha, caso o login descrito esteja online o servidor volta uma pagina de erro, você pode ter ou uma lista de usuários online ou colocar um item na tabela tipo ISOnline

Compartilhar este post


Link para o post
Compartilhar em outros sites

dá uma olhada no codigo que te passei , veja que antes de executar o login ele procura primeiro pelo login na SQL para depois verificar a senha, fica mais seguro, do que passar na mesma SQL o login e senha

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu faria uma logica diferente.

 

Teria na tabela de usuario uma coluna com o ultimo sessionid logado. Quando o login fosse verdadeiro faz update nesta coluna com Session.SessionId. Em todas as páginas do sistema, exceto a tela de login, eu faria uma verificação do tipo "se a sessionid da aplicação for diferente da sessionid da coluna da tabela usuario(do usuario logado), derruba a sessão dos dois usuarios colocando a coluna sessionid com NULL

 

Desta forma garante que apenas um login estará ativo e não depende de timer pra liberar usuário ou até mesmo um administrador para liberar o usuario que fechou o browser por engano ou numa situação de queda de energia onde o usuario ficará 'pendurado'

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem que pensar no caso o user ficar um tempo inativo no site, mas lembrando ele pode estar lendo um artigo, estudando pelo site etc, então precisa ver um bom senso, para não deslogar o user, que inclusive este assunto foi longamente abordado em logins multiplos

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem que pensar no caso o user ficar um tempo inativo no site, mas lembrando ele pode estar lendo um artigo, estudando pelo site etc, então precisa ver um bom senso, para não deslogar o user, que inclusive este assunto foi longamente abordado em logins multiplos

 

Vejo que ao ser deslogado o usuario poderá receber uma mensagem que o login utilizado está sendo acessado de outro ponto, assim ele saberia que tem mais alguem e poderia bloquea-lo sem a necessidade de deslogar, só que ai já não é mais a duvida de login e sim de usabilidade

Compartilhar este post


Link para o post
Compartilhar em outros sites

usabilidade e também acessibilidade

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.